Secure Coding

The program is currently full, but feel free to register for the waiting list.

Starts November 18, 2024
Total : 16 Weeks, Approx. 12 hours per week
Online learning with a combination of live collaborative and independent study

Made possible by Upskill Canada and powered by Palette Skills and the Government of Canada


Description - Secure Coding

This eight-week course introduces key concepts for securing software applications so you can protect sensitive data, prevent security breaches, and ensure the reliability and trustworthiness of software products. It explores the strategies you can use throughout the software development lifecycle to make code more secure and reduce the need for costly security patches in the future.

Through case studies featuring real-world examples, you will discover the common vulnerabilities that exist within systems and better understand how to protect against them. You will also learn how modern secure coding tools and practices, such as secure coding with artificial intelligence (AI), can minimize risk and foster a safer and more resilient digital environment for your organization and your users.


What you will learn

  • Follow software development lifecycle (SDLC) guidelines to develop safe coding habits.

  • Use secure design principles to check code for security issues and implement fixes withCodeQL.

  • Understand and explain the requirements for designing secure software systems.

  • Explore how code generation tools can aid in project workflow or pose security risks.


Course Overview

  • Receive instruction from secure coding experts in a course authored by University of Waterloo faculty.

  • Participate in approximately five hours of independent, online learning each week (including reflection and discussion tasks, exercises, and assignments.)

  • Practice identifying and reporting security vulnerabilities through diagnostic exercises.

  • Integrate your learning into real-world scenarios with hands-on lab simulations.


System requirements

CodeQL

GitHub


Course author


Mei Nagappan

Associate Professor, David R. Cheriton School of Computer Science, University of Waterloo | Course Author


Career Success Foundations course


Description

This four-week course will teach you the knowledge, skills, behaviours, and techniques needed to begin or continue an organized and strategic career search. You’ll explore key topics including personal branding, résumé design, job prospecting, and interviewing. You’ll also practice personal growth using narrative reflection techniques based on the four pillars of career success, live discussion, and 1:1 meetings with a career coach.


What you will learn

  • Principles of narrative reflection.

  • Principles of personal branding.

  • Technical and organizational skills for résumé building. LinkedIn job prospecting techniques.

  • Interviewing techniques and best practices.

  • Networking and communication skills.

  • Effective relationship building.


Authentic Industry Project

Facilitated by Co-operative and Experiential Education and Practera

This program offers approximately 40 hours of industry-supported project work and engagement that include the following elements:

  • Expand your network and connect with industry leaders and professionals.

  • Apply the practical skills and tools that you’ve learned throughout the program in a group project for a real-world industry client (designed to enhance your career prospects and experience through peer collaboration, workshops, and reflection assignments).

  • Receive mentorship, guidance, and coaching from industry leaders, so you can learn to give and receive feedback more effectively.


Who should enrol

Job seekers pursuing roles in the secure coding field, such as:

  • Software developers and programmers

  • Software, web, and full stack developers

  • Systems and application security developers

  • Cybersecurity specialists 

  • Please note:This program is subsidized for individuals who are seeking skills to help acquire a new job or promotion within the secure coding sector.


Prerequisites

  • At least two years of coding experience in Java, Python, C, C++, or JavaScript is required.


Key Takeaway


Career Success Foundations Course

  • Enhance essential career search skills, including personal branding, résumé building, LinkedIn optimization, job search tactics, and interview preparation.


Secure coding course

  • Understand the requirements for designing secure software systems and learn how to use secure design principles to check code for security issues and implement fixes.

  • Explore the strategies you can use throughout the software development lifecycle to make code more secure and enhance your own safe coding habits.


Industry experience and engagement

  • Expand your professional network, apply the skills you’ve learned in a group project for a real-world client, and receive mentorship from industry leaders.


1:1 career coaching and supports

  • Learn essential career skills with three hours of complimentary that covers career pathway planning, access to professional coaches and resources to support job searches and negotiations, skills development reflection, interview practice, and additional 1:1 coaching support for women(including cis women, trans women, and anyone who identifies as a woman).


Share your skills and experience during your job search

  • Receive a detailed completion report that outlines your new skills, so you can leverage your knowledge and experience for potential employers or other career growth opportunities.

  • Receive certificates of completion for various program features.

Powered by