Program Description
From commercial servers to mobile and embedded devices, almost everything we use relies on software. Vermont State University’s dynamic program will introduce you to the entire software development life cycle, including requirements, design, coding, testing, and deployment in a rigorous, hands-on, programming-intensive experience. You’ll master computer programming, website design, and system development, and networking. Along the way you will take part in major projects that reflect real-world needs.
Students must choose a concentration in either application programming or systems programming. An application programmer builds the applications, including mobile, web, and desktop, that end users use every day. System programmers build the software infrastructure that these applications are built on top of.
Graduates of this program develop programming expertise and experience significant technical depth in multiple areas. The most common job for graduates is working as a software developer, but the program prepares students for a wide range of positions within a software development team.
All students actively participate in the design, development, and evaluation of a sizable software system and present the results of those efforts.
Program Outcomes
-
Program proficiently in multiple programming languages.
-
Develop and maintain static and simple dynamic web pages, including those connected to databases.
-
Understand the processes used in software development and use tools to support these processes.
-
Understand how computer hardware impacts the running of software down to the level of assembly language.
-
Independently learn new, well-defined technology frameworks.
-
Understand the historical and social context of information technology.
-
Use a relational database to solve information management problems.
-
Identify and effectively describe a user's problem and design and develop an appropriate software solution.
-
Apply knowledge of computer science fundamentals to develop high-quality software applications.
-
Apply significant technical knowledge in their field of study to solve technical problems.
-
Effectively work as a member of a team to design, develop, and implement solutions to technical problems.
-
Make ethical professional decisions in their career.