Responsibilities:
- Develop, test and debug firmware for state-of-the art embedded systems
- Write communication protocol and drivers for various MCUs and peripherals
- Integrate wireless communication protocols (BLE, Wi-Fi, etc.)
- Contribute to automated regression test suite
- Optimize firmware for low-power operation
- Contribute to the design of system architecture
- Write and maintain project documentation
- Do PCB bring-up, testing, debugging and solving complex multi-disciplinary issues
- Write PC software to create testers, visualizers and data loggers
- Work closely with the hardware, software, mechanical and textile teams to fulfill project requirements
Qualifications Required:
- BASc. in Electrical/Computer Engineering, Computer Science or related fields
- 5+ years experience developing firmware for embedded systems
- Experience working on the hardware/software interface
- Experience deploying embedded software for real products
- Development of bare metal and RTOS based firmware
- Advanced knowledge of C language
- Advanced knowledge of Python, C++ or another high level programming language
- Strong Object Oriented Programming and Software Engineering foundations
- Experience developing low-level communication drivers (SPI, UART, I2C, USB, etc.)
- Experience with BLE and Wi-Fi communication protocols
- Comfortable with board bring-up, schematics interpretation and equipment such as oscilloscopes, multimeters, etc.
- Comfortable working in a start-up environment
Nice to have:
- Knowledge of IOT systems and architecture
- Knowledge of signal processing and machine learning algorithms
- Knowledge of software design patterns
- Knowledge of ISO 13485 and/or IEC 62304
- Experience writing software for Linux and Embedded Linux platforms
- Experience in biometric sensing or actuation (ECG/EMG/EEG)
- Experience building medical-grade products
Apply Now