Application Development & Support

The Year Up Application Development & Support training program equips graduates with a wide range of skills in computer systems, programming, database management, quality assurance, and software development.

Explore below the roles that the graduates of this program are ready for and the competencies they have been trained in.

Role pathways for graduates of the Application Development & Support program

ux design, job board, 2

UI/UX Design & Development

  • Collaborating with software engineering teams to gather requirements for desktop, web, or mobile user interfaces.
  • Using design tools and practices to build user interfaces to specifications.
  • Assisting in the development, testing, and release of user interface code.
server/cloud development, job board, 2

Server/Cloud Development

  • Gathering requirements for building server or cloud applications.
  • Making incremental changes, debugging issues, and maintaining server or cloud infrastructure and applications.
mobile app dev, job board, 2

Mobile App Development

  • Working in agile teams to update and edit mobile applications.
  • Using programming languages to build new mobile applications.
  • Assisting in processes like requirements gathering, design, testing, and app release.
dev ops application, job board


  • Assisting software engineering teams in automating software build, testing, deployment, configuration, and monitoring.
  • Aiming to improve efficiency and shorten the software development life cycle.
production, job board

Production Support

  • Identifying and resolving issues with software systems in production.
  • Communicating findings and resolutions with end users and software teams.
  • Building or using tools to monitor production systems and automate support processes.
software project management, job board

Software Project Management

  • Assisting in managing software development processes within agile teams.
  • Utilizing methodologies like Scrum for process management.
application dev, job board

Application Development

  • Updating and editing software systems within agile teams.
  • Incrementally building new software using programming languages.
  • Supporting various stages of the software development process.
web development, job board

Web Development

  • Updating and editing web pages and services in agile teams.
  • Using programming languages to build new websites or web servers.
  • Assisting in related developmental processes.

Summary of the key competencies developed during the one-year training

Computer Architecture & Systems Fundamentals
  • Computer Systems: Proficiency in navigating computer systems, including operating systems (Windows, Linux, Mac), servers, and cloud infrastructure.
Programming Fundamentals
  • Basic Program Writing: Skills in writing and executing basic programs using languages like Java, Python, C#, R, or JavaScript.
  • Programming Concepts Application: Utilizing programming concepts like data types, variables, conditionals, methods, loops, and data structures in problem-solving.
  • Development Environment Navigation: Familiarity with software development environments, including IDEs, frameworks, and libraries.
  • Code Error Identification: Ability to identify and resolve software issues through code reviews and debugging tools.
Database Fundamentals
  • Databases: Understanding basic relational database design, including tables, keys, constraints, indexes, and normalization.
  • Basic Query Writing: Constructing and executing basic SQL commands.
Quality Assurance & Software Testing
  • Software Test Writing & Execution: Developing and executing software tests, including unit tests, to validate code.
Software Development Fundamentals
  • Version Control System Navigation: Using version control systems (e.g., Git, CVS, Subversion) and their tools.
  • Software Solution Communication: Articulating software solutions using tools like decision trees, flow charts, or pseudocode.
  • Software Release Navigation: Understanding the terminology and architecture of software release management.
  • Software Methodology Application: Applying methodologies such as Agile/Scrum or Waterfall in a software development team.
  • Problem Analysis: Analyzing complex problems, clarifying objectives, and developing solutions.

Application Development

  • Intermediate Program Writing: Writing and executing intermediate programs in languages like Java, Python, C#, R, or JavaScript.
  • User Interface Design: Understanding and interpreting software design, including user interface aspects.
  • Object-Oriented Programming: Grasping concepts like data structures, algorithms, patterns, object-oriented programming, and APIs.

Ready to find your next hire?