In this program, students focus on computer programming, web development and leveraging data to help organizations make meaningful business decisions. Throughout the program, students learn how to write code using a variety of languages such as Arduino, ASP.NET, C#, C++, Java, JavaScript, PHP, SQL and Swift. Students gain experience developing software for diverse platforms including embedded systems, desktop, mobile, and mainframe systems. In addition, students are exposed to advanced concepts including systems analysis, Business Intelligence (BI), application security, data structures, and game and simulation programming. With a strong emphasis on business and entrepreneurial values, students gain experience in problem solving, troubleshooting and systems building through a series of applied assignments, projects, and co-op work terms.
Program Learning Outcomes
The graduate has reliably demonstrated the ability to:
- identify, analyze, design, develop, implement, verify and document the requirements for a computing environment;
- diagnose, troubleshoot, document and monitor technical problems using appropriate methodologies and tools;
- analyze, design, implement and maintain secure computing environments;
- analyze, develop and maintain robust computing system solutions through validation testing and industry best practices;
- communicate and collaborate with team members and stakeholders to ensure effective working relationships;
- select and apply strategies for personal and professional development to enhance work performance;
- apply project management principles and tools when responding to requirements and monitoring projects within a computing environment;
- adhere to ethical, social media, legal, regulatory and economic requirements and/or principles in the development and management of the computing solutions and systems;
- investigate emerging trends to respond to technical challenges;
- gather, analyze and define software system specifications based on functional and non-functional requirements;
- design, develop, document, implement, maintain and test software systems by using industry standard software development methodologies based on defined specifications and existing technologies/frameworks;
- select and apply object-oriented and other design concepts and principles, as well as business requirements, to the software development process.
- gather requirements and model, design, implement, optimize, and maintain data storage solutions;
- integrate network communications into software solutions by adhering to protocol standards;
- describe technologies and techniques that can be used to reduce the impact of information technology on the environment;
- apply basic entrepreneurial strategies to identify and respond to new opportunities.
Practical Experience
All co-operative education programs at Georgian contain mandatory work term experiences aligned with program learning outcomes. Co-op work terms are designed to integrate academic learning with work experience, supporting the development of industry specific competencies and employability skills.
Career opportunities
Graduates are well suited to fulfil a wide-range of entry and intermediate-level roles related to software development. They could work independently or as a member of a team to analyze, design, enhance, and maintain software applications on platforms such as desktop, mobile, web, and mainframe systems. Graduates will also be able to participate in the management of activities associated with a software development project, and may be employed in related fields including systems analysis, business analysis, database design and management, web development, and mobile application development.