Skip to main content
Degree Options:

Bachelor of Engineering (B.Eng. Co-op Optional)

Software Engineering

Software engineers (SEs) are engineers who specialise in designing, building, testing, and maintaining the software in computer systems.

Current Student Inquiries:

+1 905.525.9140 x 24614
ITB 202
Future Student Information


Computing is used to solve problems, manage information, create smart technologies, explore the world, and connect to other people. Software engineers master the fundamentals of engineering like their colleagues, but specialize in the design and development of computer systems and software.

"Multiple people have complimented me for not being a 'typical engineer' and I think McMaster Engineering's Software & Society program is partially to thank for that. Being considerate and mindful while practicing engineering is important, especially as we continue to be a more connected world." - Graeme Crawley, Software Engineering and Society

What makes this program unique?

Our students are trained as engineers with a core specialization in the development of software. McMaster’s Software Engineering program is unique in that it provides students with a solid grounding in software development for supporting engineering applications and for controlling physical devices.

Software Engineers are ultimately responsible for the usability, safety, and reliability of their products. For example, the SE must make sure that the system and its documentation are consistent, that the hardware configuration is appropriate to the task, that programs will behave as required, and that the system will meet all real-time deadlines and other performance requirements. Because they must understand what is going on outside the computer, not just the software, the McMaster programme includes much more than software design

McMaster Software Engineering programme prepares students for a career in a rapidly changing field by emphasising fundamental design principles, material that will still be useful and valid three decades from today. Students learn to apply basic mathematics and science (including relevant Computer Science), as well as undertake disciplined testing and simulation to ensure that any system they design will perform its tasks adequately when delivered to a customer for use. Although the students will use current systems in their laboratory work, the lectures stress ideas and techniques of lasting value.

Co-op and Experiential Learning

Experiential learning provides students with hands-on opportunities beyond the traditional lecture-style format to gain valuable experience.

Engineering Co-op Program

The Engineering Co-op Program is an optional program which provides you with the opportunity to work in real engineering positions before you graduate. The Undergraduate Co-op Program is administered by the Engineering Co-op and Career Services Department (ECCS).

Example Employers:

  • Bell Canada
  • IBM Canada
  • RBC Royal Bank
  • CIBC Canadian Imperial Bank of Canada
  • Thales Canada
  • Intelex
  • Ericsson
  • Evertz Microsystems
  • NCR Corporation
  • Sun Life Financial

Learn more about the co-op program

Extracurricular Activities

McMaster Engineering has many engineering clubs, teams and societies you can join to enhance your practical knowledge and soft skills, provide support, or give you the chance to explore new activities. Clubs are an enjoyable way to enrich your student life and contribute to your social development and academic success.

  • Software Engineering Club
  • PhaseOne (formerly HackItMAC)
  • McMaster SumoBot Club
  • MacACM
  • McMaster Solar Car Project

Learn more about extracurricular involvement

Careers and Research

Career Paths

Most graduates start out being developers, but a wide variety of software-intensive industries, from large companies to start-ups. McMaster, through The Forge, provides a lot of help to entrepreneurial students with bright new ideas.

  • Biomedical field
  • Computer system development
  • Power, chemical, or automotive industry

Research Areas

McMaster Engineering has a world renowned research group in software engineering pursuing research in a wide range of areas including:

  • Software certification
  • Wireless systems
  • Optimization
  • Software development
  • Biomedical engineering
  • Power systems

Learn more about research