Headquarters: San Francisco, CA URL:
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. 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 Senior Backend Engineer to help support and evolve our learning platform.
Who Should Apply?
We currently need the most help in migrating our existing monolithic codebase to a microservices architecture, but you will also likely be jumping in on crafting a backend roadmap, maintaining and enhancing our existing application, and offering opinions on infrastructure. You must be passionate about learning, and enjoy developing new features without regressions. We’re seeking someone with senior level experience who enjoys mentoring other engineers. You’ll have a lot of autonomy in how you work, and will be able to set backend development guidelines organization-wide.
This is a fully remote role and we are open to applications worldwide.
How You’ll Contribute:
- Lead the development of backend features
- Help create an improved backend architecture
- Set backend development guidelines and code quality standards
- Mentor other backend engineers
- Collaborate with team leads to ensure site uptime and reliability
- Collaborate with DevOps to ensure new features are deployed reliably
- 5 + years of web development experience
- 2 + years of Python and Django experience
- Strong verbal and written communications skills -- we’re a 100% remote team
- Agile/SCRUM experience
- Experience measuring the effectiveness of the features you work on
- Experience leading architectural discussions and creating roadmaps
- Experience mentoring other engineers
- Experience with CI/CD pipelines
Nice To Have:
- If a merge request deletes more code than it creates, you think it's a good day.
- You aim to improve reliability and performance when you refactor.
- You’re eager to ask questions if you don't understand something and initial research isn't helping.
- If you're blocked on something, you instinctively find other things to contribute while you wait.
- When you hear about a new technology, you wonder how it can improve your work rather than worrying about having to learn it.
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.
- We use git for source control and CircleCI for build pipelines.
Why you should work at Dataquest
At Dataquest, you'll get:
- 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.