Graduate Software Engineer - DevOps
Role details
Job location
Tech stack
Job description
Join our dynamic Software Infrastructure team and take a pivotal role in scaling and managing our infrastructure. You will develop essential tools and services that empower our broader software team. Your contributions will enhance the build, test, deployment, and productisation processes of our Machine Learning Software components. Work with our High-Performance Computing (HPC) AI platforms and gain invaluable experience in distributed systems. The Team The Software Infrastructure team provides critical platforms and services for software development teams across the business. Our responsibilities include managing the CI platform and services, build engineering, component integration, and packaging and release systems. We operate in squads, fostering a culture of service ownership and empowerment for our engineers. We focus on long-term engineering solutions and strive to eliminate toil wherever possible. Responsibilities and Duties
-
Supporting the delivery and ongoing maintenance of tools and services to support the software build and release process
-
Deploy and maintain services with Kubernetes and Docker
-
Supporting the ongoing management of our Cloud Infrastructure using tools such as Terraform
-
Working closely with development teams working on the ML Software Stack (SDK)
Requirements
-
Bachelor or Master's Degree in Computer Science, Maths, Machine Learning, Data Science, or related field
-
Knowledge of Python/Go/Java/C++ (or similar language)
-
Experience managing or developing in Linux environments
-
Understanding of CI/CD principles
-
Strong communication skills
Desirable
-
Experience using Kubernetes (k8s) or OpenStack
-
Experience with Infrastructure as Code (IaC) tools (e.g. Terraform/OpenTofu)
-
Experience with GitHub Actions
-
Experience with build tools (e.g. CMake)
-
Experience with Grafana
-
Familiarity with cloud services (e.g. AWS)