Embedded Software Engineer with at least 5 years’ experience in executing the complete embedded software development lifecycle. The goal is to create scalable and optimized software systems for oil and gas drilling tools.
The Embedded Software Engineer will be working with a co-located team of 20+ experienced engineers, including other software professionals within a larger multifunctional engineering team.
Embedded software Engineer Responsibilities
- Design and implement software of embedded systems from requirements to production.
- Design, develop, code, test and debug system software
- Review code and design
- Analyse and enhance efficiency, stability and scalability of system resources
- Integrate and validate new product designs
- Support software QA and HiL Testing
- Interface with hardware design and development
- Proven working experience in software engineering
- BS degree in Computer Science or Engineering or equivalent experience
- Experience in hands-on development and troubleshooting on embedded targets
- Solid programming experience in C and C++
- Proven experience in embedded systems design with pre-emptive, multitasking real-time operating systems
- Familiarity with software configuration management tools, defect tracking tools, and peer review
- Knowledge in Arm and TI processors would be advantageous especially: ARM 7, Cortex M4 and 28335 DSP
- Experience in writing hardware and peripheral drivers
- Excellent knowledge communication protocols such as CAN, RS232, RS485, SPI, I2C etc
- Knowledge of National Instrument test systems would be preferred
- Adequate knowledge of reading schematics and data sheets for components
- Strong documentation and writing skills