Senior Software Engineer - Embedded
We are growing our Software Engineering team to enable the delivery of an ambitious and innovative product roadmap.
The team of nearly 50 developers and verification engineers enjoy an environment where knowledge sharing, open communication and the cultivation of talent from within is encouraged. Utilising the best software technologies, focused on Agile, our squads deliver innovative products that produce ultra-wide field (UWF™) high resolution images of the retina, providing detailed clinical information and analysis to facilitate the early detection, management and effective treatment of disorders and diseases.
To be an Embedded Engineer at Optos, you’ll have a passion for low level/device driver programming developing real time software that drives the scanner hardware to do the right things at the right time.You’ll interface with technology such as FPGA, FLASH memory, USB devices, PCIe, kernel and low level device drivers.
You can expect:
- A supportive working environment that allows you to contribute to your full potential
- Support to continue to develop your skills and the trust in you to apply those new skills to shape and build better products
- To help improve the health of millions of people by solving seriously challenging problems
Optos would like you to have:
· Passion for, and experience of, building complex products
· A track record of contributing strongly as part of a cross functional team
- Threading models, managed and unmanaged resource handling, P/Invoke and orchestrating multiple hardware components to achieve tasks
- Device driver development (we use C++ and C for this) interfacing with FPGAs, USB and PCIe is a serious bonus
· A track record of developing mastery across technologies; today our core technologies are C#, .Net and Windows Device Drivers. We also use C++ and Linux.
· The ability to explain SOLID design principles, Domain Driven Design, why you chose the tools you’re using (such as IoC containers), and how you test the software you write
· Experience of Lean/Agile project delivery
· A degree in Computer Science, Mathematics or related technical field, or equivalent experience
· Drive and dynamism, bringing energy to everything you do
· Experience of developing medical devices is a bonus
Or, tell us why you don't wish to apply for this job.