Software Developer

Software Developer

  • Specialization: Software Developer
    • Introduction to Web Development

      This course introduces students to the hands-on, project-based approach of the Software Developer program. Students begin developing their coding skills by building responsive websites, including a portfolio to display images, descriptions, and links to the projects created throughout the program.

      Course Code: SD-100
      Course Requirements: None

      Hours: 66

    • JavaScript Basics

      Students will develop basic JavaScript skills through hands-on experiences and will showcase their abilities by solving a variety of programming problems and building interactive web versions of Tic-Tac-Toe and the classic game ‘Concentration’.

      Course Code: SD-110
      Course Requirements: None

      Hours: 76

    • Object Oriented JavaScript

      Students will build on their existing JavaScript skills, exploring JavaScript objects, prototypes and classes. Students will also be introduced to new syntax and features added to the JavaScript language as part of the ES6 specification. Putting all this together, students will construct and control player characters and enemies to recreate the classic arcade game ‘Frogger’ and a Budget Calculator app.

      Course Code: SD-120
      Course Requirements: JavaScript Basics

      Hours: 72

    • Tools and Automation

      Navigating around a computer using a shell is a necessary skill for all software developers and keeping source code safe is just as important. In this course students will learn the basics of using the shell and securely managing their source code using Git, a popular source control application. Finally, students will leverage their new-found shell knowledge and build their own tools and scripts to help optimize their development workflow.

      Course Code: SD-130
      Course Requirements: Object Oriented JavaScript

      Hours: 44

    • Unit Testing in .Net

      In this course, students will learn how to create a separate project to test their code and use the capabilities of different testing frameworks in .Net to make sure the code is working as expected.

      Course Code: SD-125
      Course Requirements: Object Oriented JavaScript,JavaScript Basics

      Hours: 42

    • Introduction to Third-party API's

      Students will develop applications that integrate with a variety of existing third-party services to provide unique functionality. Students will work with Geolocation APIs, Geocoding APIs and the Winnipeg Transit API to develop an app that identifies the best route to a destination, and work with The Movie Database API to build an app that determines current trending movies.

      Course Code: SD-105
      Course Requirements: Tools and Automation

      Hours: 35

    • Technical Writing Skills

      This course focuses on the development of technical writing skills for IT professionals. Students will develop the language skills needed for effective communication with colleagues and clients. Students learn to create documents and use online tools that are required for success in the Software Developer program, as well as in the workplace.

      Course Code: SD-160
      Course Requirements: None

      Hours: 42

    • Communication and Presentation Skills

      This course focuses on the communication skills that are necessary to be successful in a professional workplace environment. The course will primarily focus on speaking and listening skills, such as using diplomatic language, being clear and concise, giving and receiving constructive criticism, making and responding to requests, using appropriate levels of formality, and demonstrating active listening skills. A significant part of the course will be spent on creating and delivering effective presentations to a variety of audiences for various purposes. Other topics will include: cultural communication differences, the effective use of current technology for professional communication, and positive collaboration to achieve the goals of a group.

      Course Code: SD-170
      Course Requirements: None

      Hours: 60

    • Introduction to LINQ and ASP.Net MVC

      Students will learn the fundamentals of Web development using ASP.Net MVC (Model, View, Controller) through examples of real-world systems and effective ways of organizing code. This course will also introduce LINQ, the set of technologies based on the integration of query capabilities directly into the C# language.

      Course Code: SD-115
      Course Requirements: None

      Hours: 33

    • Object- Oriented Programming Fundamentals

      The course will cover OOP fundamentals, including classes, objects and OOP principles with real world examples of different OOP designs. Students will also learn important aspects such as reference and values types, and relations between classes. The course uses C# to implement the code but the knowledge gained from this course is meant to be generic for most modern OOP languages.

      Course Code: SD-300
      Course Requirements: Relational Database Design

      Hours: 40

    • Relational Database Design

      This course will focus on creating databases using SQL Server, relations between tables, and writing simple queries, which students will use in future projects. Students will also learn how to write complicated GET and POST functions inside an MVC project.

      Course Code: SD-310
      Course Requirements: None

      Hours: 50

    • Advanced Database and ORM Concepts

      Students will explore in-depth details of databases, stored procedures, entity framework code-first and advanced LINQ queries. A major part of this course includes a simulated a day at work, where they are challenged to finish a task in a new language and environment (php and MySQL). Students will use problem-solving skills to quickly search and find solutions to on their own.

      Course Code: SD-330
      Course Requirements: None

      Hours: 100

    • Advanced Topics in C#

      Students will learn advanced topics in C#, including more code-first aspects, serialization, IO, events, and web services. Students will also use project management fundamentals to work through group projects effectively, including task distribution, tracking, and meeting deadlines.

      Course Code: SD-340
      Course Requirements: Relational Database Design,Object- Oriented Programming Fundamentals

      Hours: 68

    • Algorithms and Data Structures

      This course will review the basics of C#, .Net framework and Visual Studio, and present logical problems for students to solve. Students will learn different data structures in C# such as Arrays, Lists, Dictionaries, Hash Sets, Stacks and Queues and be challenged with many different problems using those structures. Students will also explore code complexity by writing an algorithm, and then measuring its speed and optimizing it.

      Course Code: SD-290
      Course Requirements: None

      Hours: 55

    • Introduction to Number Systems and Desktop Applications

      Students will learn different number systems in computers including Binary, Decimal, Hexadecimal, and how to represent and convert numbers between those systems. Students will also learn the basics of C# Desktop programming, creating a desktop application for a calculator, using the knowledge they gained in the previous classes.

      Course Code: SD-320
      Course Requirements: None

      Hours: 55

    • Software Engineering and Design Patterns

      Students will learn different design patterns and the best ways to build scalable, maintainable, testable systems. Students will explore patterns in detail, and learn what makes one design better than another.

      Course Code: SD-350
      Course Requirements: Advanced Topics in C#

      Hours: 50

    • Personal Brand and Career Management

      Students will learn the importance of developing and managing their personal brand, and develop strategies for transitioning successfully into their desired future careers.

      Course Code: SD-255
      Course Requirements: None

      Hours: 20

    • Introduction to React

      This course allows students to further develop their knowledge of front-end frameworks, diving deep into React.js. Students will learn how to install and manage a React.js installation, and how to use it to create dynamic and stateful single page web-apps. Modifying existing apps and creating new apps will provide students with a well-rounded understanding of how to build applications and use them to their full potential.

      Course Code: SD-260
      Course Requirements: None

      Hours: 55

    • Software Developer Internship

      Eligible students will have the opportunity to synthesize and apply the knowledge and skills they have acquired throughout the Software Developer program in a real-world context, learn on-the-job procedures, and develop valuable job contacts. Students must meet eligibility requirements and receive instructor approval prior to attending internship.

      Course Code: SD-270
      Course Requirements: See course description

      Hours: 245

Find Your New Career

If you're not sure how to take that next step, our Career Services team can help you connect your interests with the right courses to launch a new career. Find salary potential and career pathways for hundreds of careers in Manitoba.

Career Services 1

Student Services

Several services are offered to assist students in fulfilling their goals at the Institute. Child care, tutor programs, and much more.