Senior Scientific Software Developer
Our bioinformatics department helps deliver fast and accurate analysis solutions to our customers. We are looking for a senior scientific software developer to advance our analysis solutions, build customer workflows and develop scalable software infrastructure.
You will work on algorithms and methods in bioinformatics, machine learning or signal processing, and develop workflows and user and programming interfaces. You will be working with bioinformatics and software engineering teams. The role may involve solutions architecture to enable external and internal customers and to gather and prioritise requirements.
We are seeking exceptional individuals who enjoy working in a highly collaborative and fast paced R&D environment.
Your responsibilities may include:
- Implementing methods and algorithms in C, C++ in areas such as bioinformatics, machine learning or signal processing
- Architecting and developing solutions to enable external and internal customers
- Product ownership including gathering and prioritising requirements
- Modelling performance of technical methods and trouble-shooting
- Interfacing with scientists from different disciplines across multiple sites
- Developing (or managing the development of) web-based user interfaces to provide access to existing REST APIs
- Prototyping a full-stack web application to coordinate bioinformatics workflows on a cloud provider like AWS or Microsoft Azure.
We seek demonstrated accomplishment in some or all of the following skills and technologies:
- Software and algorithm development in C or C++
- Familiarity with other languages like Python, Java, C# and GoLang or web development, including frameworks like React and Angular, is a plus
- Experience in hardware acceleration, e.g. FPGAs and GPUs
- Databases technology, including SQL and NoSQL; AWS development, including S3, EC2, Lambda, Redshift; DevOps technology like Ansible, Kubernetes, Docker
- Business analysis, including requirements gathering and prioritisation
- Understanding of formal documentation and quality management systems, including change control
- Excellent communication skills and experience working with non-informatics staff, e.g. lab scientists
Masters or PhD in computer science, engineering, mathematics, natural sciences, or equivalent