Software Engineer - AI/ML
Role details
Job location
Tech stack
Job description
The AI Finance and Strategy team focuses on creating full-stack, AI-powered tools to support the most important question at the highest level: which drugs to develop and when. By leveraging data from across the organisation and beyond- from clinical trial readouts to external market analyses- we improve financial strategies and optimize decision-making. We're looking for a highly skilled software engineer to help us make this vision a reality. Competitive candidates will have a track record of writing and shipping quality, well-documented and well-tested software. Candidates should be comfortable with modern, cloud-native computing, and with continuous development and production deployment on cloud platforms to large user populations.
The AI/ML team is built on the principles of ownership, accountability, continuous development, and collaboration. We hire for the long term, and we're motivated to make this a great place to work. Our leaders will be committed to your career and development from day one.
In this role you will
-
Back end development for a Python web application
-
Integration of AI/ML components with frontend, backend, data and compute infrastructure
-
Responsible for high quality software implementations according to best practices, including automated test suites and documentation
-
Develop, measure, and monitor key metrics for all tools and services and consistently seek to iterate on and improve them
-
Participate in code reviews, continuously improving personal standards as well as the wider team and product
-
Liaise with other technical staff and data engineers in the team and across allied teams, to build an end-to-end pipeline consuming other data products
Requirements
We are looking for professionals with these required skills to achieve our goals:
- Bachelor's degree in a relevant field (including computational or numerate), or equivalent experience
- Demonstrated experience of Python backend development (e.g. using FastAPI)
- Cloud experience (e.g. Azure preferred) including core web application infrastructure is essential
- Strong skills in Python
- Unit testing experience (e.g. pytest)
- Knowledge of agile practices and able to perform in agile software development environments
- Strong knowledge of modern software development tools / ways of working (e.g. git/GitHub, DevOps tools for deployment) - should be able to show practice of commit early and deploy often
Preferred Qualifications:
If you have the following characteristics, it would be a plus:
- Experience with Docker or containerized applications, especially architecture of multi-container applications
- Knowledge of AI/ML approaches and deployment of AI/ML powered applications - especially using language models or NLP and agent-based approaches (e.g. LangGraph, PydanticAI, AutoGen)
- Knowledge of AI/ML evaluation and benchmarking approaches, experience with iterative improvement of AI/ML models and products
- Some experience with frontend software development (e.g. React)