Virginia Tech®home

Software Development

rear view of software developer viewing code


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.


  • 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 (Core)
  • CS 5704: Software Engineering (Core)
  • CS 5744: Software Design & Quality
  • CS 5244: Web Application Development
  • CS 5254: Mobile Application Development

View course descriptions