Software Engineering Undergraduate Programs
Software engineering is an increasingly popular choice for students who want to work on large-scale software development projects. Software engineering students learn to work at all stages of the software life cycle, from analyzing requirements to deploying and maintaining software applications. As an SE major, you’ll get a broad introduction to the field while concentrating on a particular sector.
What to Expect from an Undergraduate Software Engineering Program
Software engineering programs overlap somewhat with computer science and baccalaureate-level software development programs. An ABET-accredited software engineering program, though, is unique in scope. It will include the following: a year of coursework in math and basic sciences, a year and a half of engineering and computer science coursework, several courses in a domain application sequence, and an applied senior design project. The senior design project may give you a chance to work with industry leaders; this in turn can lead to job offers down the road.
If you opt for software engineering, there may be less room in your schedule for classes in programming. There may also be fewer free electives. However, just because your schedule looks a lot like others’ in the department, it doesn't mean you're getting a cookie cutter education. Your experience will be shaped by the domain sequence you choose and the organization you partner with to do your senior design project. Since software is used in everything from medical technology to business, the possibilities are nearly unlimited.
Prospective Software Engineering Students
You may have somewhat more flexibility if you have some advanced placement credit when you begin college. You may be expected to have a programming foundation when you enter. Some schools will allow you to select a software engineering major, though, even if you don’t have this background. The Milwaukee School of Engineering, a top school, notes that students can bring many different skills to the table.
As a prospective software engineering student, you should have a solid GPA and test scores. You should also be ready for advanced mathematics courses like calculus and linear algebra. According to the University of Texas-Dallas, advanced placement computer science and technology classes can be an advantage.
Software Engineering Program Accreditation
You may want to give serious consideration to software engineering programs that are accredited by the Engineering Accreditation Commission of the Accreditation Board for Engineering and Technology.
A software engineering licensing exam is currently under development. Traditionally, licensure has only been required of engineers whose work impacts public safety and welfare. Those who are considering such careers, though, should realize that there is a strong relationship between program accreditation and eligibility for licensing exams. ABET accreditation can also be a signal of rigor and quality.
It's getting easier to find an ABET accredited software engineering program. Today's Engineer reports that the number of accredited programs hit 21 in 2010 -- quite a step up from the four that existed back in 2003.
Software Engineering Program Considerations
When requesting information, you may want to ask what industry leaders the school partners with. (Where might you have the opportunity to intern? What organizations frequently request senior teams to design projects?)
Another thing you'll want to consider, when selecting a program, is the domain elective sequence. Some schools focus on a particular application while others offer a wide range of choices. You may want to consider not only the strength of the software engineering program, but the strength of other departments.
You can expect to take about three to five courses in your application. Your options may include software gaming, embedded systems, artificial intelligence and cognitive modeling, as well as biomedical and business applications. Some schools will allow you to select a domain that is not on a pre-determined list. You may select an application in consultation with your advisor or write a proposal.
The first step now is to contact and learn about the schools offering undergraduate software engineering programs.
View Schools by State