More about the role
You will be part of Audatic’s development team. As such, potential responsibilities could include:
- Working very closely with our deep learning engineers and data scientists to design, maintain, and extend our system for running deep learning experiments. This includes packages, tools and services written in Python.
- Owning the infrastructure that the experimentation framework is running on. This means dealing with databases, virtual machines, cloud compute resources and scheduling systems.
- Collaborating with embedded software engineers on graph-manipulation tools to analyze and optimize our trained neural networks.
- Proactively identifying improvements to make our infrastructure more robust, efficient and user-friendly. Part of this is making the neural network training process fast and hardware accurate.
- Developing tools to provide better insights and control over machine learning & deep learning experiments. This includes our custom-built experiment control and visualization website.
- Leveraging our CI/CD system or other forms of automation to minimize repetitive tasks for the team.
You will be taking full ownership over parts of our codebase and infrastructure. At Audatic, you are encouraged to innovate and propose new ideas for continuous improvements.
Tech stack
- Our main programming language is Python.
- We host our infrastructure on Azure.
- Our tech stack is built around many popular (open source) tools, including but not limited to: Ubuntu, Docker and other container runtimes, Slurm, HashiCorp Vault, MongoDB, Postgres, Terraform, Packer, Kubernetes, Prometheus, Grafana, Tensorflow, CUDA, React, FastAPI.
- Our CI/CD pipelines run on GitHub Actions with self-hosted runners.
More about you
You are a good match for this position if the points below apply to you.
- Bachelor’s or Master’s Degree in a technical field
- At least 5 years of relevant work experience
- Strong proficiency in Python with a demonstrated ability to write robust, clean and maintainable code
- Experience with some technologies in our tech stack
- Knowledge of common software design and architecture patterns, with experience applying them to large codebases
- Ability to lead a project from beginning to finish
- Dependable communication skills with full professional proficiency in English
- Willingness and ability to learn and adapt to new tools and environments