The Principal Firmware Engineer will provide technical leadership in the design, development and maintenance of software and firmware components utilized in Continuous Gas Analyzer Products with a strong emphasis on embedded systems and hardware-level integration. This includes firmware engineers who work on code for the board using C and C++ and collaborate closely with electronics engineers. This role requires both technical leadership and strong interpersonal skills to support front-facing responsibilities. Work may involve sustaining legacy codebases as well as new product development, depending on roadmap priorities.
PLEASENOTE
theclientwillonlyacceptcandidateswhoareauthorisedtoworkinthe UK, without the requirementforsponsorshiporANYtypeofvisa(e.g.dependant/spousal,post-studyetc.)Inaddition,thisrolehybridbasedwith4daysintheScottishoffice,thereforeyoushould currentlybe locatedinScotland.
PRINCIPLE JOB RESPONSIBILITIES
- Perform requirements capture and analysis
- Develop software/firmware architecture and concept proposals
- Cyber-security risk analysis and mitigation strategies including assessments of cybersecurity notifications for 3rd party components
- Co-ordinate estimation of development tasks to support project and software release planning
- Design, coding and unit test of software/firmware components
- Technical review of other team members' output including design, code and test plan reviews
- Provide coaching and mentoring of other software team members
- Collaborate with Product Owners, Scrum Masters, Software Developers and Testers within a Scrum framework and other functions within a global team
- Work closely with electronics engineers for integration between firmware & hardware components
- Bug capture, analysis and resolution
- Co-ordinate technical support for field or manufacturing issues
- Ensure compliance with software quality & process controls as specified by Global Software Manager
- Provide recommendations to Global Software Manager of appropriate new tools, technologies, 3rd party components, industry best practices, etc.
- Support leadership in Software team recruitment
- Support Cyber Security legislation and SIL-related activities
- Familiarity with safety standards and design authority transitions is beneficial
REQUIRED QUALIFICATIONS AND EXPERIENCE
- Minimum 7 years of experience with embedded software development, preferably on Linux
- Engineering degree within software, electronics, or computer science, or knowledge at the same level
Desirable Skills and experience
- Strong technical knowledge of C and C++
- Development experience with low level hardware interconnect protocols, i.e. CAN, SPI, UART, etc.
- Strong skills in Real-time multi-threaded embedded systems and microcontrollers
- Strong skills in Industrial protocols: Modbus, Profinet, HART, and Fieldbus
- Development experience working with ADC or DAC devices
- Experience in bare metal firmware development, and developing firmware within an RTOS environment
- Familiarity with application development for embedded Linux distributions
- Practical experience in board bring up and debug using appropriate tools and techniques