Senior Software Developer / Software Engineers - Python at Sanger Institute (Hinxton, UK)
Location: Hinxton, UK
Type: Full Time
Created: 2021-05-13 05:00:34
We have excellent opportunities for multiple Senior Software Developers (software engineers)to join the Parasite and Malaria Surveillance Operations team at the Wellcome Sanger Institute in support of the COVID-19 and MalariaGEN tracking programmes. If you are interested in being part of something that is actively contributing towards solving real global challenges, and you can adapt quickly to fast-paced environments, then this may be one of those once in a lifetime opportunities - and we are looking for someone like you!
The Surveillance Operations team is part of a scientific network that connects researchers and clinicians across the globe with cutting-edge DNA sequencing technologies and genomic research. Through a number of multi-centre projects, we provide a framework for generating, integrating and sharing genetic and genomic data, and for investigating key questions about COVID-19, malaria biology and epidemiology using bespoke software developments. These frameworks and proof of concept software developments are also the base for supporting genomic surveillance operations across various contexts going into the future.
As part of the MalariaGEN initiative delivering its current commitment under a grant provided by the Gates Foundation, we have built a solution to support the tracking and management of malaria studies and their associated samples. This solution allows global partners to register studies, send Sanger samples for DNA sequencing, along with their associated metadata, and one which enables the tracking and management of these samples through a complex process at the institute with the results being data released to partners and the public. In addition to this, the team have also delivered a similar solution for the tracking of COVID-19 samples, which are currently being sent to the institute for DNA sequencing.
About the Role:
As a Senior Software Developer (software engineer), you will take ownership for the development of robust, maintainable, and performant software products and tools to meet the current and future needs of Surveillance Operations activities to facilitate the building of these communities. This will include writing code and testing software components to include applications, integrations, external product integrations, and data repositories/databases. You will be working with key internal and external partners to identify and shape the product according to user needs in order to achieve project objectives.
You will have good knowledge and experience of full stack software development practices including version control and continuous integration. You will also have the ability to work collaboratively with a range of internal and stakeholders at all levels. You will have out of the ordinary communication skills. You will be comfortable working independently and prioritising your workload while meeting objectives effectively and efficiently. You will have strategic awareness and the ability to support a large- scale project in a complex, ever-changing environment. You will have the opportunity in this role to join a team who adopt an Agile approach and work collaboratively to deliver solutions to the MalariaGEN team and their wider global partners. You have the ability to see the big picture but don’t mind getting your hands dirty in the detail.
- Experience of Agile Software Development methods such as SCRUM
- Strong Python skills and good knowledge of popular python packages (Flask, SQLAlchemy, black, flake8, pytest, boto3 …)
- Knowledge and experience with modern software development practices, including version control, continuous integration, unit testing and workflow management tools such as Jira, Gitlab, etc.
- Familiarity with SQL, databases, and database design
- Experience working with a wide variety of technologies and on diverse problems
- Experience of CI/CD and containerization (Docker, Singularity)
Competencies and Behaviours:
- Ability to quickly understand scientific, technical and process challenges and break down
- complex problems into actionable steps
- Ability to work in a frequently changing environment with the capability to interpret
- management information to amend plans
- Solution-orientated with the ability to produce creative solutions that are robust, scalable and require minimal maintenance
- Ability to prioritise, manage workload, and deliver agreed activities consistently on time