Co-op, Embedded Software

Enedym Inc

Hamilton

On-site

CAD 70,000 - 110,000

Full time

9 hours ago
Be an early applicant
Application generator

An application made for this job — a tailored resume and cover letter that speak straight to the posting.

Get past ATS filters

Job summary

Enedym Inc. is seeking an Embedded Software Developer to design and implement real-time firmware for its custom PCBs and motor control hardware. You will work in a small team on low-level software, interfacing directly with hardware engineers to bring up new devices and validate performance.

The role emphasizes writing efficient C/C++ firmware, Python scripting for testing, and hands-on debugging with scope/logic analyzer tools. Prior experience with RTOS and reading schematics is highly valued.

Qualifications

  • Experience writing firmware for microcontrollers in C/C++.
  • Familiar with real-time systems and debugging hardware/software interactions.
  • Reading schematics and interfacing with hardware engineers is essential.

Responsibilities

  • Develop firmware features for microcontrollers and embedded processors.
  • Own firmware from concept to deployment on hardware.
  • Collaborate with electrical, mechanical, and systems engineers to bring up new hardware.

Skills

C
C++
Embedded systems
Python
RTOS
Debugging
Schematics reading
Git

Tools

IDE tooling
Debuggers
CMake/Make

Job description

Enedym is a startup from McMaster University focused on developing electric motor and propulsion technologies. We specialize in innovative switched reluctance motor solutions, aiming to revolutionize energy systems for a cleaner, more efficient future. Join our dynamic team to be part of driving meaningful change towards sustainability in transportation and energy.

We are looking for a knowledgeable Embedded Software Developer to join our team. We are developing cutting-edge control systems for our electric motors, interfacing directly with our custom-designed PCBs and hardware. We are looking for individuals who are passionate about low-level programming, real-time systems, and seeing their code bring physical hardware to life.

If you have experience writing firmware for microcontrollers in C and C++ and you are interested in working closely with a multidisciplinary team (including electrical and motor design engineers), then this job is for you. We expect you to be a tech-savvy professional who is curious about debugging hardware/software interactions and applying new ideas to solve complex control problems.

Everyone on our team is highly autonomous and we value individuals that bring insight to the development of our systems and software.

Job Description

Your role as an Embedded Software Developer is to take control algorithms and system requirements from conception to implementation on our custom-designed PCBs. Our technology stack is primarily C and C++ for real-time firmware, with Python used for scripting, testing, and data analysis. This role will require you to actively own and develop firmware for microcontrollers and embedded processors. You will work closely with our small team to develop new features for motor control, sensor integration, and communications. Previous experience with C/C++, embedded development, and reading schematics will be essential to working with our hardware.

In this role as an Embedded Software Developer, you will play a crucial role in the development and validation of our motor propulsion systems. You will work with our team to create and enhance our embedded software, ensuring reliability, efficiency, and real-time performance. Proficiency in C/C++, familiarity with microcontrollers (e.g., ARM Cortex-M, DSPs), and experience with Python scripting is essential for this position. Your responsibilities include developing, testing, and debugging firmware, bringing up new custom PCBs, and collaborating with hardware engineers to drive innovation. Experience with real-time operating systems (RTOS) and a strong focus on robust, maintainable code are highly valued.

Responsibilities
  • Develop new firmware features (e.g., control loops, communication protocols, diagnostics) considering all aspects of the system.
  • Learn and develop skills with new microcontrollers, sensors, and development tools.
  • Build reusable code and libraries (e.g., Hardware Abstraction Layers, drivers) for future use.
  • Take ownership of a feature from idea to deployment on target hardware.
  • Develop and explore new ideas quickly through rapid prototyping on development kits and custom hardware.
  • Collaborate with other team members (electrical, mechanical, systems) and stakeholders.
  • Maintaining documentation on implementation, interfaces, and testing procedures.
Technical Skills
  • Strong proficiency in C and C++ for embedded systems.
  • Experience with Python for scripting, test automation, or data analysis.
  • Experience with 32-bit microcontrollers (e.g., ARM Cortex-M, STM32, TI C2000) or embedded processors.
  • Familiarity with embedded development tools (compilers, debuggers, IDEs).
  • Experience with communication protocols (e.g., SPI, I2C, UART, CAN).
  • Basic understanding of code versioning tools, such as Git.
  • Familiarity with Real-Time Operating Systems (RTOS) is a plus.
  • Basic understanding of build systems (e.g., CMake, Make) is a plus.
Hardware & Systems Skills
  • Experience reading and interpreting electronic schematics and component datasheets.
  • Hands-on experience with lab equipment for debugging (e.g., oscilloscope, logic analyzer, multimeter).
  • Experience with board bring-up and hardware/software integration.
  • Understanding of basic electronics principles.
Experience

We realize that the set of skills and responsibilities listed here are large for students and recent graduates. We value individuals who can problem-solve given little background or experience.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Co-op, Electrical Engineer
Co-op, Electrical Engineer

Enedym Inc • Hamilton

On-site
CAD 25,000 - 36,000
Co-op, Technician
Co-op, Technician

Enedym Inc • Hamilton

On-site
CAD 25,000 - 36,000
Co-op, Mechanical Engineer
Co-op, Mechanical Engineer

Enedym Inc • Hamilton

On-site
CAD 25,000 - 30,000
Co-Op Embedded Software Engineer
Co-Op Embedded Software Engineer

Gastronomous Technologies Inc. • Oakville

On-site
CAD 90,000 - 130,000
Embedded Firmware and Controls Engineer
Embedded Firmware and Controls Engineer

Kyte Dynamics | Aerial Robotics Co. • Richmond

On-site
CAD 152,000 - 208,000
Senior Embedded Software Engineer
Senior Embedded Software Engineer

HireTalent - Staffing & Recruiting Firm • Brossard

On-site
CAD 80,000 - 110,000
Embedded Systems Developer
Embedded Systems Developer

Gexel Telecom International Inc. • Canada

On-site
CAD 90,000 - 120,000
Hybrid work
December holidays leave
Group insurance
+5
Co-Op Electrical Engineer
Co-Op Electrical Engineer

Gastronomous Technologies Inc. • Oakville

On-site
CAD 20,000 - 28,000
Senior Embedded Build, Release & Integration Developer
Senior Embedded Build, Release & Integration Developer

PML Sound International • Ottawa

On-site
CAD 120,000 - 150,000
Embedded Systems Engineer Intern
Embedded Systems Engineer Intern

JotForm Inc. • San Juan de Terranova

Hybrid
CAD 33,000 - 39,000