Department of Software Engineering


The Department of Software Engineering’s mission is the development of professionals who can produce high-quality, cutting-edge, and cost-effective software systems. The department provides a forward-thinking approach in an inclusive environment that encourages students to become pioneers in the field by developing in-depth knowledge through hands-on design of innovative products. As real-world construction of complex software systems is done by engineering teams, our curriculum focuses on team-based activities with an emphasis on collaboration and the design process. Students receive mentorship to become world-class engineers and to conduct world-class research by closely collaborating with both faculty and industry.



Real World Software



Approval rating for our academic advisors in student surveys


Median starting salary for our graduates, with some graduates starting at more than $100k


In college research funding since 2017

Latest News

Undergraduate Programs

As software becomes ever more common in everything from airplanes to appliances, there is an increasing demand for professionals who can develop high-quality, cost-effective software systems. Students learn principles and techniques for the construction of complex and evolving software systems as well as issues affecting software architecture, design, and implementation. Additional topics include project management, planning, quality assurance, and product maintenance.

Encompasses technical issues affecting software architecture, design, and implementation as well as process issues that address project management, planning, quality assurance, and product maintenance.

Learn More about Software Engineering BS 

Graduate Programs

The Master of Science in software engineering or data science assures that graduates possess both breadth and depth of knowledge of their program's content. Special topics courses and electives provide students with the opportunity to match their graduate education with their professional goals, from pursuing groundbreaking research to developing game-changing products.

Demand is high for professionals skilled in both analytics and computing. Enhance your skill set by learning to manage large-scale data sets in this highly applied program.  

Learn More about Data Science MS 

Gain hands-on experience through team-based and individual projects to further your understanding of the development and implementation of modern software systems.

Learn More about Software Engineering MS 

Minors and Immersions

Students in disciplines with a heavy reliance on software applications may be interested in pursuing a minor in software engineering. The minor provides a broad view of the software engineering landscape including introductory material and fundamentals in design and process. Students deepen their software design skills and learn techniques for working on a productive software engineering team by choosing electives in design or process to gain a deeper understanding of one of these areas, or they may choose to balance their courses for a broad view of both topics.

Learn More about Software Engineering Minor 


The department provides a variety of facilities where students collaborate on projects, polish their skills, and consult with faculty. Outfitted with the latest hardware and software technology, our facilities reflect our commitment to teamwork, interactive learning, and professional education.