Senior Infrastructure Engineer

Dataquest · Nov 29th 2018

Apply on StackOverflow Careers

At Dataquest, we teach data science to a community of hundreds of thousands of students worldwide. We help students deeply learn concepts, build projects, work together, and gain the confidence they need to start new careers. Many of our students who came to Dataquest without any data science knowledge have gone on to be hired at companies like Apple, Microsoft, SpaceX, and Facebook. Read more about our philosophy here, and read what students think here.

We want to eventually help tens of millions of students worldwide change their lives through data science education, and you’ll play a key role in helping us get there. We're looking for a collaborative Senior Infrastructure Engineer to simplify our infrastructure while ensuring its efficiency and reliability.

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.


Must 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

Nice To Have:

  • Experience working remotely

  • Interest in data science and education

  • Experience building and supporting positive engineering culture

Our Stack

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.

Why You Want To Work At Dataquest:

  • The opportunity to see your impact on the lives of our students every day.

  • The chance to work with an engaged and mission-driven team.

  • The chance to contribute to product direction and decisions.

  • The ability to work remotely.

  • A supportive environment where you can get help when you run into blockers.

Apply on StackOverflow Careers