Senior Software Engineer - Firmware
CNH Industrial
- Canada
- $95,000-145,000 per year
- Permanent
- Full-time
- Maintenance and development of carrier board firmware on microcontrollers
- Maintenance and development of small PC utilities for various purposes
- Ensure GNSS products are designed and perform in accordance with specifications though continuous on-going test and monitoring.
- Ensure specifications meet product requirements in conjunction with product managers.
- Manage and directly perform product testing to uncover weaknesses and on-going suitability for market issues.
- Troubleshoot and determine cause of performance and functionality issues.
- Train employees and partners that interface with customers so that they can provide primary product support.
- Report and communicate test results, customer satisfaction and support issues.
- Manage development of test procedures, test software tools, test fixtures and training materials
- Track and document releases of the Core group software releases. Communicate new features of GNSS products and provide test plan for integration of new features.
- Participate in planning by providing experienced based input to next generation product design.
- Within own specialized sphere, direct and/or perform test/research to expand knowledge of product performance characteristics.
- Interpret and evaluate data obtained from various engineering and/or research investigations.
- Other related duties as assigned by management and executive team.
- Bachelors' Degree in Engineering or Applied Science
- 5+ years of experience FW and SW engineering.
- Familiarity with GNSS concepts is a bonus.
- Experience with bare-metal embedded programming (i.e., Microcontrollers)
- Experience with application development in both Linux and Windows
- Familiarity with TCP/IP networking
- Experience reading protocol and data format specifications and writing parsers for them.
- Prefer a portfolio of open-source work to review.
- Familiarity with CAN and NMEA 2000 is a bonus.
- Experience with various communications devises, USB, RS-232, Ethernet
- Familiarity with reading electrical schematics is a bonus.
- Highly proficient in C++ in an embedded systems context is required.
- Experience with C and C++ in a desktop application context is also preferred.
- Experience with Python and Bash scripting is desirable.