Embedded Software Technical Lead
LumiraDx is a medical technology company developing, manufacturing and marketing smart connected diagnostics and diagnostic-led care solutions. Founded in 2014 by entrepreneurs with a successful track record in building and scaling medical diagnostics and health IT businesses, the company has major operations in the UK and the USA, and is supported by a global sales network, LumiraDx currently has over 1,200 employees worldwide.
Role & Responsibilities
We are seeking an experienced senior embedded software developer or technical lead with embedded software development experience combined with an understanding of electronics product development. You will provide technical leadership to a team tasked with developing firmware in collaboration with H/W engineers, mechanical engineers as well as laboratory scientists.
Key areas of responsibility:
- Lead the team to deliver software solutions to requirements for both new functionality and product improvement/maintenance.
- Create detailed requirements and design specifications based on input from product requirements specifications and prototype testing and characterisation.
- Provide innovative and robust software design solutions and code to identified problem / high risk design areas.
- Review and critique software design solutions developed by other team members.
- Ensure that the key functional technical blocks of the instrument are developed, tested and iterated to schedule in a robust manner.
- Ensure that the software components of the instrument design are integrated into a robust final solution including management of sub-contractor partners where required for both development and testing activities.
- Maintain the associated paperwork, log books and test reports required to keep a design history of work performed, in line with specified standards and regulations, e.g. IEC 62304, ISO 13485 or FDA 21CFR, part 820
- Ensure compliance with LumiraDx internal quality processes and ensure designs / ideas are compliant with appropriate international standards and guidelines (as above)
- Degree qualified in software engineering or a closely related discipline.
- Expert practical experience in developing embedded systems software using C (and Assembler where appropriate).
- Ability to translate software requirements into design specifications.
- Practical experience in assisting board bring up and debug using appropriate tools and techniques
- Knowledge of interrupt handling, bootloaders, flash operations and peripheral programming.
- Can demonstrate understanding of real time operating systems.
- Able to create modular, testable code while adhering to company coding standards.
- Ability to read and review schematics produced by the electronics team.
- Knowledge of embedded system hardware peripheral blocks low-level operation (such as GPIO, ADC, DAC, SPI, I2C, UART, etc).
- Able to debug hardware issues together with the electronics team (e.g. create specific software tests that will exercise certain hardware features).
- Able to use design/debugging tools and instruments (oscilloscopes, multimeters, function generators, programmable power supplies, logic analysers, JTAG).
- Can contribute knowledgably to the development and enhancement of the company’s processes, procedures and standards relating to both software development and the team’s role within the wider business.
- Self-driven, takes ownership, and is motivated to complete the objectives given.
- Demonstrates the ability to solve problems under conditions of uncertainty and ambiguity and is able to think strategically in times of pressure to drive toward the best solutions
- Experience of working as part of an Agile team
- Linux as a development target
- Experience of working in the medical device industry and the application of CE marking directives and applicable device standards.
- Knowledge of ARM processors architecture (especially Cortex M architecture) and other competing contemporary architectures.
- Experience in the design of optical fluorescent detection systems.
- Experience and knowledge in the design of electrochemistry interfacing.
- Knowledge and practical experience in the use of BLE, NFC.
- Qt, C#, Python, TCP/IP networking
- Experience of using a task tracking tool, e.g. Jira
- Experience of using a Requirements Management Tool, e.g. Jama
To apply to the role, please click APPLY