Who Should Apply?
We’re looking for someone who can enable our team to achieve continuous delivery. You’ll place priority on establishing a strong culture of uptime and reliability as we do so. We'd like this person to have strong backend experience and to have played a key role in maintaining infrastructure in the past.
In addition to helping us maintain 99% uptime, we’d like you to have experience creating alarms, monitoring systems, and on-call rotations. Ideally, you have experience improving observability - making our logs and alerting easier to see. You’ll be an advocate for integration and performance testing before deployment. You’ll also work to help build a devops culture internally and to empower developers by incrementally building automation into our deployment infrastructure.
You’ll need strong communication skills to collaborate with a variety of teams and better understand their tooling and deployment needs. Ideally, you have also successfully created continuous integration and deployment workflows and processes.How You’ll Contribute:
- Develop and maintain our code running infrastructure (Python, Django, Docker & Kubernetes)
- Contribute infrastructure and tooling related functionality to the backend codebase
- Contribute to solving infrastructure debt
- Maintain and improve the deployment infrastructure
- Maintain CI / CD pipelines
- Work closely with other engineers to improve automation, monitoring, and alerting
- Own our uptime improvements roadmap and help us maintain an uptime of 99%
- Build and maintain our deploy processes and change application code when necessary
- Help us continue to build a strong devops culture.
Nice To Have:
- 5+ years of backend infrastructure experience
- 3+ years of Python experience
- Experience with Docker & Kubernetes
- Experience creating on-call rotations
- Experience working on a team with strong devops culture
- A generalist with experience contributing to both backend and infrastructure systems
- A passion for empowering other engineers and team members
- A strong drive for impact and learning. We’d like this team member to be quite flexible.
- Strong verbal and written communication skills
- Experience working remotely
- Interest in data science and education
- Experience building and supporting positive engineering culture
These are some of the technologies you'll be working with at Dataquest, though you may end up introducing new ones:
- Our frontend is a modern React/Redux stack.
- Communication with the backend happens over a combination of websockets, GraphQL, and REST APIs.
- The main backend is Django on Python 3.
- We use Docker extensively, both for student code execution, and for deployment of our services.
- We use Kubernetes on Google Cloud to orchestrate our containers in production.
- Our data is largely stored in Postgres, with some caching in Redis.
With over 100,000 students, we're enabling anyone, anywhere, to learn data science and machine learning. And we're doing it in a way that leaves learners with real skills and helps them get jobs.
If you want to help educate millions worldwide, and experiment with cutting-edge teaching methods, Dataquest is the place for you. We're a remote company and you'll enjoy a flexible work environment where you'll have a big say in our future vision.