Firmware Engineer (Embedded Software) Team Leader
Role details
Job location
Tech stack
Job description
This is a chance to join an exciting new company at its inception, benefiting from the entrepreneurial spirit of an innovation company, coupled with the financial support of a rapidly growing partner company.
Development work of the product has been a combined internal/external effort, with all EE and SW developed externally. As we near launch, we want to build an internal team to manage firmware evolution, including bug fixing and feature development., As team leader, you will be responsible for the creation and leadership of the firmware team. You will rapidly become familiar with the project and product and then structure a team to support the objectives of the product roadmap. You will be responsible for the high level of firmware quality required to maintain an excellent product that will continue to be at the forefront of its field.
The product roadmap is ambitious and you will play an active part with the Product Manager and Project Manager in the definition, prioritisation and planning of product features.
Firmware tasks will be a combination of ongoing feature development and bug fixing. You will be working initially with external parties for EE and App development, although by the time you join, the product platform will be mature, with a stable design.
You should anticipate working closely with in-house engineering and design teams, product management, materials team and biomechanist specialists, as well as external HW/EE and App teams., As Team Leader
- Create plans, manage team, and execute against agreed timelines
- Manage overall plan and day to day activities of team members
- Recruit team members to ensure delivery of plans
- Own the firmware architecture and manage its ongoing development in-line with the Product Roadmap
- Create engineering and specification documents for existing, ongoing and future feature development
- Establish code review process and undertake code reviews, team mentoring and coaching with the objective of establishing core team values, competencies and best practice.
- Own responsibility for firmware quality, maintenance and development
- Define and establish firmware department, tools, process and ways of working
- Manage third party relationships as appropriate
- Represent firmware/software in interdepartmental projects and product development planning
As Firmware Engineer
- Define and implement high performance software by leveraging a strong understanding of embedded hardware design
- Debug and fix software issues in embedded systems
- Utilise expertise in sensors and digital signal processing to develop product, including but not limited to sensor data acquisition, conditioning, filtering, and processing, algorithm integration and optimisation
- Inherit and develop all firmware for existing product usage, manage existing product and new feature development
- Design and implement system technologies, such as API's, data management and architecture.
Requirements
- 5 years + experience managing embedded software engineers in comparable environment and product range ideally utilising Scrum or similar iterative/incremental software development methodology.
- 5 years + experience working on wearable tech or comparable product, including expertise in coding for Bluetooth LE, accelerometer, barometer, GPS antenna and receiver, user interfaces for embedded devices, processors, storage
- Experience of integrating embedded software projects with App development teams
- Experience of low power software design
- Essential - must have experience of delivering firmware updates for consumer electronics products and full working knowledge and demonstrable experience of having delivered updates
- Highly proficient in real-time programming languages such as C/C++. Experience with other programming languages such as Java, Javascript, Python a distinct advantage.
- Experience with multi-task/multi threaded Real-Time Operating Systems and Digital Signal Processing
- Demonstrable experience of efficiently coding complex real-time DSP algorithms.
- Proficient with defining architectures utilising UML including the use of sequenece diagrams to describe system level integrations and API's.
- Experience of defining new and utilising existing API's including RESTful Webservices
- Excellent understanding of Electronic Hardware, (a background in Electronic Engineering is useful) and programming at device level.
- Experience with Continuous integration tools such as Jenkins, Build tools (e.g. Maven) and Version Control tools (e.g. Subversion, Github)
- Good working experience with Atlassian tools such as JIRA and Confluence.
- Self starter and motivated - capable of working on your own, and as team leader, set the tone for the rest of the team
- Excellent written and verbal skills and capable of communicating with non-technical team members
- Significant experience working within a fast paced entrepreneurial technology based business
- Fast learner, and capable of understanding and working with cutting edge and novel technologies
- Ability to establish process and lead team to ensure objectives are fulfilled
Benefits & conditions
Upto £50 + Bonus