Studying Software Engineering: Degrees at a Glance
A degree program in software engineering teaches you how to design, construct, test, and maintain computer software. You may start off learning computer fundamentals and then move on to more advanced concepts, such as programming languages. Software engineering programs may help you develop analytical, mathematical and problem-solving abilities.
According to the U.S. Bureau of Labor Statistics (BLS), employment for systems and application software engineers is projected to grow rapidly from 2010-2020; application software engineers are expected to see a 28% increase in employment, while systems software engineers should see a 32% growth rate.
Associate | Bachelor | |
---|---|---|
Who is this degree for? | Individuals with no computer experience who want to prepare for entry-level positions or bachelor's programs | Individuals desiring more advanced positions as software engineers |
Common Career Paths (with approximate median salary) | - Computer support specialist ($52,000)* - Network Control Technician ($49,000)** | - Software Developer, Applications ($92,000)* - Software Developer, Systems Software ($100,000)* |
Time to Completion | 2 years full time | 4 years full time |
Common Graduation Requirements | - Approximately 62-65 units of course work | - Approximately 120 units of course work - Internship |
Prerequisites | - High school diploma | - High school diploma |
Online Availability | Rare | Yes |
Source:*U.S. Bureau of Labor Statistics (May 2011 figures), **Salary.com (June 2012)
Associate Degree in Software Engineering
Associate degree programs in software engineering may be harder to find than more advanced degrees in this field. However, some schools do offer these programs, and degrees can be awarded as an Associate of Science, Associate of Engineering or Associate of Applied Science, which prepares you to enter the workforce immediately after graduation.
Programs at this level focus on developing your comprehensive knowledge of computer basics, including terminology, operating systems, popular software programs, web browsers and legal issues. You may also delve into more complicated topics, such as database management and programming principles.
Pros and Cons
Pros
- Some programs offer electives or tracks so you can tailor your coursework to suit your career goals
- Some degree programs prepare you to enter the field after graduation
- Employment in software engineering is expected to grow faster-than-average
Cons:
- Few schools offer associate degrees in this field
- Most employers prefer to hire candidates with at least a bachelor's degree
- Curriculum may not include professional experience opportunities like internships or co-ops
Common Coursework and Requirements
The curricula in these programs typically include lecture-based courses mixed with hands-on learning in order to teach you computing and engineering concepts. You may find programs that allow you to choose from electives or different concentrations, such as video game development or application software specialist. Some programs may require you to complete an internship, but many do not. Some common core requirements may include:
- Computer programming
- Data structures
- Computer information systems
Online Degree Options
You may be able to find online associate degree programs in software engineering, although they're rare. Additionally, schools offering these programs may be for-profit schools. Nevertheless, you can typically complete the curricula 100% online, and it's often comparable to campus-based programs.
Stand Out with this Degree
The BLS stated that software engineers need strong backgrounds in computer programming, so choosing electives that can expand your code writing abilities may prove beneficial. You can also look for computer clubs within your community. In addition to providing an extra outlet to work with computers, clubs can provide opportunities to obtain leadership roles, which may impress potential employers.
Chances are your degree requirements won't include an internship. If this is the case, you can still take it upon yourself to seek out internship opportunities with relevant companies in order to establish professional relationships and enhance your practical training.
Other Degrees
If you can't find a suitable associate program in your area or are interested in gaining a broader range of computer skills, consider earning a degree in computer science. Several postsecondary schools offer this degree program, and you may also be able to find some programs online. Although the curriculum typically entails a broader focus, you may still learn basic programming skills.
Bachelor's Degree in Software Engineering
Bachelor's degree programs in software engineering prepare you by integrating real world experience with courses that cover the technical and behavioral aspects of software engineering. Computer science basics and mathematical principles serve as the foundation for these software engineering programs. After graduating, you should be able to use professional techniques and instruments to design software systems; you may qualify to become a software engineer or continue on to graduate school.
Pros and Cons
Pros
- Many programs require you to complete internships, which provide practical experience that many employers look for
- May have opportunities to work on research alongside faculty
- Relative certifications are available to validate expertise and keep skills up-to-date
Cons
- Some employers may prefer candidates with master's degrees
- The computer engineering field advances rapidly causing the need to stay current on the latest developments
- May need additional knowledge about the specific industry where you plan to work, such as banking
Common Coursework and Requirements
Just as in an associate program, bachelor's coursework is typically very hands-on. Curricula for software engineering programs incorporate a range of computer science, mathematics and engineering concepts as well as current programming methodologies and algorithm analysis. Some of your core classes may cover topics such as:
- Discrete mathematics
- Software testing
- Calculus
- Software design
You may be able to customize a portion of your curriculum through electives, which can allow you to focus on a certain aspect of software engineering or on a complementary field, such as communications, finance or business. Projects are also common requirements as are internships or co-ops.
Online Degree Options
If you are interested in distance learning opportunities, you may find some schools that offer relevant options. Programs may fall under broader fields, such as information technology or computer science, and offer a concentration in software engineering. You may also find concentrations that are specific to systems or application engineering. In cases where the program is part of a larger field, the foundational coursework may vary somewhat, but essential concepts pertaining to software engineering are similar.
Stand Out with This Degree
While earning your degree, seek out computing clubs on campus where you spend time outside of class honing your skills. You can also check if your school has a chapter of Tau Beta Pi, an engineering honor society. Additionally, some faculty members allow undergraduate students to assist with research projects, which can help you become proficient in various areas, such as quality assurance and security.
You can also join professional associations, including the Institute of Electrical and Electronics Engineers (IEEE). You may be able to become a student member and receive access to the latest industry information, scholarships and networking opportunities.
After you've earned your degree and have sufficient professional experience, you may qualify for various certifications, which are effective ways of proving your expertise and staying updated on new technologies. You may even qualify for some certifications while earning your degree; the IEEE Computer Society awards the Certified Software Development Professional credential to software engineering students who are in their senior years of earning bachelor's degrees. Passing an exam is necessary in order to receive the certification.
Other Degrees to Consider
A bachelor's degree in related fields, such as computer information systems, may also allow you to specialize in particular areas like programming, database management or web design. You may qualify for a variety of information technology careers after graduating from this program, including an entry-level computer and information systems management position. An average 18% job growth is expected for these professionals, according to 2010-2020 BLS projections. However, many information technology jobs are being outsourced overseas, which may reduce some job growth.