Job Description
Oxford Nanopore Technologies is headquartered at the Oxford Science Park outside Oxford, UK, with satellite offices and a commercial presence in many global locations across the US, APAC and Europe.
Oxford Nanopore employs from multiple subject areas including nanopore science, molecular biology and applications, informatics, engineering, electronics, manufacturing and commercialisation. The management team, led by CEO Dr Gordon Sanghera, has a track record of delivering disruptive technologies to the market.
Oxford Nanopore's sequencing platform is the only technology that offers real-time analysis, in fully scalable formats from pocket to population scale, that can analyse native DNA or RNA and sequence any length of fragment to achieve short to ultra-long read lengths. Our goal is to enable the analysis of any living thing, by anyone, anywhere!
We are seeking a hardworking and experienced Software Engineer to join the Instrument Software team. You will collaborate with and support the Electrical Engineering team (responsible for hardware and firmware development) and the Sequencing team (our validators and initial users of our technology) to enable and support new and existing devices, device applications, and hardware and firmware changes.
The Details...
In this role, you will be a part of the Instrument Software team responsible for writing MinKNOW. This high-performance software deals with large data volumes, handling data acquisition from custom hardware, real-time initial data processing, servicing the base-caller, user interface, and conducting ongoing analysis of system performance.
You will become a primary interface to the Sequencing and Electrical Engineering teams. You will gain expertise in our interface to the devices, and you will be instrumental in uncovering and understanding the problems that arise here. Your remit will range from investigating specific problems originating from our field support engineers and these key teams to developing software for new and experimental hardware.
You'll have good visibility into many aspects of Oxford Nanopore Technologies, working closely with chemists, algorithms researchers, and developers to evaluate, test, and improve our software. Our team is relatively small, so you'll have autonomy but will require a disciplined approach to automation and testing..
What We're Looking For...
We are looking for a person with good technical skills who wants to work with device-level software and is a natural problem solver. You will be a good communicator with strong interpersonal skills who enjoys collaborating with people with different skill sets from your own.
Required Skills:
* Experience in software development and general Computer Science knowledge (e.g. computational complexity). This should include experience with modern software development techniques, tools, and processes.
* Professional/industrial experience in C++ and STL, this is our primary language.
* Understanding of USB, SPI and I²C busses.
* Understanding of Linux drivers.
Nice to have:
* Experience of writing and debugging Firmware.
* Experience of working with device-level software.
* Experience of setting up CI & DevOps.
* Experience of Windows drivers.
* Knowledge of signal processing, electronic engineering, Linux, or embedded systems
* Experience of real-time service/control software development and optimisation.
* Experience in Python, as this is used across the company for prototyping and less performance-intensive applications.
* Experience in bioinformatics, as this impacts many of our applications.
We offer outstanding benefits to include an attractive bonus, generous pension contributions, private healthcare and an excellent starting salary. Based within beautiful, landscaped surroundings with tree-lined walks, water features and a lake, all of which make for a wonderful working environment.
If you are looking to utilise your skills to really make a difference to humankind, then consider joining our team and apply today!
Please note that no terminology in this advert is intended to discriminate on the grounds of a person's gender, marital status, race, religion, colour, age, disability or sexual orientation. Every candidate will be assessed only in accordance with their merits, qualifications and abilities to perform the duties of the job.
#li-jc1