Learn Software Design and Development with a Software Engineering Degree
Learn the fundamental concepts and principles of software engineering – a systematic approach used to develop software on time, on budget and within specifications – with your Bachelor of Science in Computer Science with a concentration in Software Engineering from UMS.
Through the software engineering program’s hands-on, practical approach to full stack software development, you’ll have the opportunity to:
- Join a growing field of software developers who earn a median annual salary of $105,590.*
- Learn the ins and outs of languages such as Python, Java, MongoDB and C++.
- Use industry-standard software development and testing tools like Eclipse, OpenGL, Cucumber with Maven and Junit testing.
- Deploy software on platforms like Windows, Linux, tablets and smartphones.
- Learn the UX and UI principles employers look for in full stack developers.
Online computer science degree students will work to solve real-world problems in courses that emphasize the design and development of computer software. As you progress toward graduation, you’ll create and save examples of your work, building a portfolio that demonstrates your ability to apply sound user experience principles and secure coding practices as a full stack developer.
Earn math credits for what you already know: Save time and tuition with our Pathways to Math Success assessments. Show your knowledge of the materials in your program's math courses, and you could earn up to 6 math credits - at less than $50 for each course assessment.
See Yourself Succeed in Software Engineering
The online BS in Computer Science program with a concentration in Software Engineering introduces the fundamental concepts and principles of engineering in the field of software development. You'll tackle sophisticated problem solving using software design patterns and design methodologies.
As a private, nonprofit university, UMS has one mission – to help you see yourself succeed. The benefits of earning your online computer science degrees at UMS include:
- Affordability. Take advantage of some of the most affordable tuition rates in the nation.
- Convenience. Attend class when it's convenient for you - online education means 24/7 access.
- Efficiency and flexibility. Complete your undergraduate degree at your own pace, over six 8-week terms per year.
- Expert instruction. Learn from instructors with relevant, real-world experience.
- Networking. Tap into our nationwide network of alumni for internship and career opportunities.
- Simple application process. Just fill out an online undergraduate application, and we'll retrieve U.S. transcripts from your previous institutions and automatically complete an official credit evaluation. Plus, there's no application fee.
- Student support. Count on the ongoing support of dedicated academic and career advisors specialized in your area of study.
- Transfer-friendly enrollment. Transfer up to 90 credits toward an undergraduate degree.
Career Outlook
With increasing demand for new applications on mobile devices and tablets, the software development field is growing rapidly. According to the U.S. Bureau of Labor Statistics, software development positions are expected to increase 24% through 2026.*
With a bachelor's focused in software engineering, you can pursue roles in computer science such as:
- Applications developer
- Back-end developer
- Front-end developer
- Full stack developer
- Programmer analyst
- Software development engineer
- Software engineer
- Systems developer
Curriculum
In the software engineering concentration, you’ll learn how to use secure coding techniques and reverse engineering strategies while exploring emerging trends in software engineering. Working with user interface and user experience (UI/UX) design and development, this concentration can help you gain the skills employers look for in full stack developers.
Courses To Prepare You For Your Career
UMS's bachelor's in software engineering program includes:
- General education
- Degree-specific courses
General Education Program
Our programs are designed to equip you with the skills and insights you need to move forward. In recent years, employers have stressed the need for graduates with higher order skills - the skills that go beyond technical knowledge - such as:
- Writing
- Communication
- Analysis
- Problem solving
All bachelor's students are required to take general education classes. Through foundation, exploration and integration courses, students learn to think critically, creatively and collaboratively, giving you the edge employers are looking for.
Courses May Include
Program Outcomes
- Employ proven, software engineering design methodologies, patterns, and processes for successful software design and development
- Evaluate various system architectures, security approaches, and software functionalities for use in effective software development
- Employ strategies for working within collaborative environments that enable diverse audiences to support ethical and responsible organizational decision-making in the field of computer science
- Develop and deliver professional quality communications that are technically sound, appropriately adapted to specific audiences, and that reflect one's identity in the computer science field
- Design and evaluate computing solutions that solve a given problem using algorithmic principles and computer science practices and standards appropriate to its solution, while managing the trade-offs involved in design choices
- Demonstrate an ability to use well-founded and innovative techniques, skills, and tools in computing practices for the purpose of implementing computer solutions that deliver value and accomplish industry-specific goals
- Develop a security mindset that anticipates adversarial exploits in software architecture and designs to expose potential vulnerabilities, mitigate design flaws, and ensure privacy and enhanced security of data and resources
- Employ strategies for working within collaborative environments that enable diverse audiences to support ethical and responsible organizational decision-making in the field of computer science
- Develop and deliver professional quality communications that are technically sound, appropriately adapted to specific audiences, and that reflect one's identity in the computer science field
- Design and evaluate computing solutions that solve a given problem using algorithmic principles and computer science practices and standards appropriate to its solution, while managing the trade-offs involved in design choices
- Demonstrate an ability to use well-founded and innovative techniques, skills, and tools in computing practices for the purpose of implementing computer solutions that deliver value and accomplish industry-specific goals
- Develop a security mindset that anticipates adversarial exploits in software architecture and designs to expose potential vulnerabilities, mitigate design flaws, and ensure privacy and enhanced security of data and resources