Study Software Engineering: Masters, PhD & Online Degree Info

About this article
What will you learn in a software engineering degree program? Read about degree requirements, pros and cons of master's degree and PhD programs, and potential careers.
View available schools

Software Engineering Master's and PhDs: Degrees at a Glance

Software engineering programs teach students how to research, design and develop software systems for a variety of industries. Because every industry is reliant on computers and computer programs, the career possibilities for software engineering students are extensive. Students can enter the fields of aerospace, intelligence, telecommunications and finance, among others.

The field of software development is growing much faster than average. According to the U.S. Bureau of Labor Statistics (BLS), software developers can expect to see a 30% employment increase from 2010-2020. A bachelor's degree is typically required for an entry-level position, but some employers may require a master's degree. A PhD is typically required for those students who wish to pursue software engineering careers in academia or research.

Master's degree PhD
Who is this degree for? Students who have some industry experience, knowledge of programming languages and an undergraduate degree and want to pursue advanced positions Students with a high level of intellectual ability and at least two years of industry experience developing software who want to enter the fields of academia or research
Common career paths (with approx. median salary)* While these jobs may only require a bachelor's degree for an entry-level position, a graduate degree is preferred by some employers
- Software developer, applications ($89,000)*
- Software developer, systems software ($97,000)*
- Database administrator ($75,000)*

- Computer science professor ($73,000)*
- Computer and information research scientist ($101,000)*
Time to completion One year full-time or up to two years part-time 4-5 years of full-time study
Common graduation requirements Thesis, report or practicum - Dissertation or thesis
- Research project
- Teaching undergraduate courses
Prerequisites - Bachelor's degree in computer science or a comparable subject
- Working knowledge of computer programming languages
- Industry experience
- Extensive knowledge of computer programming
- Minimum of a bachelor's degree
Online availability Yes, fully online No, not currently offered

Source: *U.S. Bureau of Labor Statistics (2011 figures).

Master's Degree in Software Engineering

Master's programs in software engineering are available for students who wish to advance in their field. Some programs require you to have knowledge of specific software engineering concepts, such as compiling techniques, operating systems or comparative programming languages. These advanced degree programs focus on new technologies and encourage students to learn in real-world environments.

Some programs offer full-time students a workspace on campus to complete projects and interact with other students. Master's degree programs in software engineering are generally flexible and can accommodate both part- and full-time students.

Pros and Cons

Pros

  • The field of software developing is growing quickly (30% job growth expected from 2010-2020), and job opportunities should be greatest for those with advanced knowledge*
  • You can complete some programs in 12 months
  • You may be able to complete independent study programs in which you can acquire in-depth knowledge of a software engineering area of interest

Cons

  • To obtain an entry-level position in software development or engineering, a graduate degree is typically unnecessary
  • Many programs require that you have industry experience
  • You may need project or research experience to be admitted

Source: *U.S. Bureau of Labor Statistics

Course Requirements

Depending on your program, you could be required to take courses in software system design, software development and system models. Students can concentrate in general areas of software engineering, such as software design or software quality; they may also have the option to create a concentration based on their own educational goals. Additionally, you might engage in a team project, working with faculty and fellow students, or complete a thesis. Common courses include:

  • Software architecture
  • Database design
  • Software re-engineering
  • Risk management
  • Software testing
  • Process engineering
  • Software quality engineering

Online Degree Options

Some colleges and universities offer online master's degree programs in software engineering. Online programs can be ideal for working professionals who are unable to relocate. You'll receive the same education as students in an on-campus program, and you'll interact with fellow students and professors throughout the program. Online programs may also require a thesis or final report.

Stand Out with this Degree

Having a degree isn't always enough to be hired at the job or in the industry of your choice. To amp up your resume and make yourself more desirable, consider honing other important skills. For example, software developers and engineers typically work in groups, so it's imperative that you are comfortable working in teams, both as a leader and a supporter. Additionally, you'll need a great deal of creativity when coming up with new software designs and problem-solving skills for testing and evaluating them.

Students should also have extensive technological skills, which many employers look for. Any experience in management of software development or a good understanding of new information technologies can be highly desirable. Courses such as these may be available as electives.

PhD in Software Engineering

A PhD in Software Engineering program could be ideal for students who wish to work in academia or as computer scientists. These programs can prepare you for a role in computer software research, education and development. Programs typically require either a thesis or dissertation, which is intended to add new research to your field of expertise. Programs can be tailored to those with either an undergraduate degree or a master's degree in software engineering. Prior industry or research experience in software engineering is an important prerequisite for most doctoral programs.

Pros and Cons

Pros

  • The salary for those with a PhD is often significantly higher than the salary for those with a master's degree (for example, a computer and information research scientist earned approximately $101,000 a year as of 2011, while a database administrator earned around $75,000)*
  • Extensive opportunities to perform research in software development and engineering
  • Highly qualified students with a significant amount of software developing experience may be able to complete the program in an expedited fashion

Cons

  • These programs can take up to five years to complete
  • You will generally need extensive industry experience when entering these programs or will be expected to complete additional coursework or internships
  • Some schools require you to take qualifying exams to verify your knowledge in the field

Source: *U.S. Bureau of Labor Statistics

Course Requirements

Course areas in PhD programs could include design and engineering, analysis and business. You can also take elective courses in information technology or software engineering. Additionally, students are asked to specialize in one specific research area and work with faculty members to prepare their dissertation or thesis. Before the degree is granted, most programs require students to complete practicums or qualifying exams. Teaching undergraduate courses also may be expected of graduate students. Typical coursework includes:

  • User interface software
  • Software development
  • Computer architecture
  • Databases and data mining
  • Programming languages
  • Privacy and security

Online Degree Options

There currently are no online degree programs available in software engineering at this level. A doctoral program in software engineering requires you to be on campus to interact with professors and fellow students. For instance, you could be required to complete oral and written reports, which you'll prepare for with a mentor, and it may be necessary to work on group projects. Additionally, undergraduate teaching requirements necessitate that you be on campus.

Stand Out with this Degree

You might help your thesis or research component stand out above the rest by focusing on emerging technologies in the field of software engineering, such as cyberarts, cybersecurity or human/computer interaction. Furthermore, digital education is becoming increasingly common in today's society, so significant research in that field will be noticed. You can also stand out by attending seminars given at your college or university by leaders in the field or by completing a certificate program in an emerging field, such as bioinformatics.

Popular Schools

Featured Schools

Colorado Technical University

  • MS - Computer Science - Software Engineering
  • Master: Computer Engineering
  • MS - Systems Engineering

Are you a US citizen?

University of Delaware

  • Master of Science in Electrical and Computer Engineering

What is your highest level of education completed?

Purdue University

  • Master of Science in Engineering Technology

What is your highest level of education?