Lead Developer, Embedded Engineering
HybridOakville, Ontario, Canada
Job Summary
Architect and validate firmware from requirements to production for complex embedded systems, including telematics devices and asset trackers. Lead technical initiatives across the roadmap by defining scalable software architecture using C/POSIX, RTOS, or Embedded Linux, while breaking down large efforts into parallel tasks. Provide advanced mentorship and quality assurance through peer reviews, unit test, and integration test frameworks to maintain high-throughput delivery. Synthesize feedback to identify architecture improvements and guide stakeholders on execution trade-offs. Maintain design documents and enforce coding standards to ensure efficient code reuse and security.
Required Qualifications
- Expert knowledge of C/POSIX and object-oriented design principles
- Proficient in using Real time operating system and/or multi threaded Linux environment for Embedded software development
- Proven multi-year experience working on preemptive, multitasking real-time operating systems or multi-service, multi-threaded Embedded Linux systems
- Strong experience using data structures, algorithms, and design patterns common to embedded (resource-constrained) systems development
- Strong knowledge of RTOS and Linux including embedded Linux architecture (Kernel, Init systems, bootloaders, Services infrastructure, etc...)
- Good understanding of Microcontroller Design and utilization
- Proven understanding of underlying electronics to the point where it influences firmware development and debugging
- Proven Understanding of basic communication protocols common in embedded systems (e.g., UART, SPI, I2C, CAN)
- Experience and knowledge for reading schematics and data sheets for components
- Mastery of commonly used architectures (ARM, RISC-V) and SoCs (STM32, NXP, Renesas)
- Proficient in one or more scripting languages (Python, Bash) and test frameworks (Pytest, Robot Framework) with experience in SQL
- Proficiency in Git (or similar source control tool)
- Experienced with CI/CD methods and build systems to manage and evolve products throughout their lifecycle
- Post-secondary Diploma/Degree with specialization in Computer Science, Computer Engineering, Electrical Engineering or a related field
- Experience working in Scrum/Agile development environment
Desired Qualifications
- Experience working within a technical or engineering organization, with knowledge of the high-technology/telematics industry is an asset
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.