Virginia Tech™home

Software Development

rear view of software developer viewing code

Value Benefit:

Software developers are in high demand right now with a projected 22.8-percent employment growth for software developers through 2022. Software developers can expect to find employment in a range of industries, including computer systems design, electronic product manufacturing, finance, web-based systems, and network security.

The profession’s superb job prospects, low unemployment rate, and excellent median salary landed it the top spot in the US News & World Report's Best Jobs rankings.

Content Area Overview:

  • Provides a foundation in tool, techniques, and principles that underlie modern software development;
  • Understand object-oriented programming and the core principles that make object technology the most used approach to building complex software systems;
  • Learn to write code to solve a variety of problems;
  • Create effective unit tests for all codes;
  • Learn all aspects of the software lifecycle: requirements, design, testing, and maintenance;
  • Explore traditional models like the waterfall and special attention on agile development models and techniques: refactoring and continuous integration;
  • Learn the Unified Modeling Language (UML);
  • Apply object-oriented design patterns;
  • Learn details of distributed computing and builds from developing a stand-alone library to designing and developing an operational web-based service that is accessible via web browsers and mobile devices;
  • Manage, design, and develop complex software systems.


CS 5044: Object-Oriented Programming with Java

  • Prerequisite:  Knowledge of programming languages such as Java, C, C++, or C#; offered fall, spring, summer

CS 5244:  Web Application Development

  • Prerequisite: CS 5044; offered fall, summer

CS 5254:  Mobile Application Development

  • Prerequisite: CS 5044; offered spring