Firmware Developer
Vinci View all jobs
- British Columbia
- Permanent
- Full-time
- Develop custom build embedded systems
- Implement all aspects of development including coding, reporting, testing and documentation
- Work with hardware and communication protocols used on computer-based systems including SPI, I2C, UART, Modbus, CAN, Ethernet, TCP/IP, USB, RS232, RS485, Wi-Fi, cell technologies) to integrate and optimize system components
- Test, debug and validate firmware to ensure functionality, power efficiency and reliability
- Optimize firmware for performance, memory usage and power efficiency
- Collaboratae with hardware and software engineers to bring up new boards and debug integration issues
- Adhere to and uphold ConeTec's safety culture as a top priority.
- Ensure thorough preparation and comprehensive understanding of all relevant safe operating procedures prior to commencing any assignment.
- Promptly report all safety-related incidents, infractions, or near-miss events to the Manager and HSE Officer.
- Consistently follow established incident reporting protocols.
- Identify challenges across all domains and assume leadership responsibilities as needed.
- Foster and uphold a respectful workplace while engaging in clear, effective communication.
- Collaborate efficiently with colleagues both within the department and externally.
- Pursue continuous professional development to enhance skillsets.
Registration as a Professional Engineer or Engineer-in-Training in British Columbia (or eligibility to register)
Progression towards a Professional Designation is requiredExperience Requirements
- Experience in developing firmware or embedded software, or equivalent experience
- Familiarity with full firmware development life cycle, including requirements, implementation, debugging, testing and maintenance
- Experience collaborating with hardware engineers to bring up new boards and debug hard-software integration issues
- Exposure to version control system and basic software development workflows
- Experienced in multi-threaded application development for embedded systems
- Adheres to coding standards and best practices.
- In-depth knowledge of object-oriented concepts and design patterns
- Ability to read and understand electrical schematic diagrams
- Strong understanding of Cortex-M microcontrollers and reading its various datasheets
- Having experience using Python and Typescript an asset
- Strong work ethic and represent the company in a professional manner
- Strong problem-solving skills and ability to work in a fast-paced R&D environment.
- Possess a strong collaboration and communication skills.
- Ability to work independently or in a team setting with minimal supervision.
- Proven ability to prioritize tasks, identify problems, and provide effective solutions.