The Zwift backend stack is built using ground breaking technologies. It is a heterogeneous stack, but most building blocks are built with Java. We also maximize the most modern tools from Amazon AWS to enable our architecture to scale.
You will be responsible for securing our APIs, protecting it against abuse, and tuning authentication and authorization services.
You will be part of a high-performance team, full of experienced developers. You will interact with them to find the best alternatives to protect our backend APIs, through use of rate limiting and throttling, role based permissions and authentication via OAuth protocols.
You will lead our current SSO implementation, using Redhat SSO and Okta, and be on the lookout for more modern and scalable solutions. You will understand the current pattern of API calls our applications make and make recommendations on rate limiting and throttling settings to keep crawlers at bay. You will review the monitoring and alerting set up to make sure API usage is under expected rates.
What we're looking for:
- Fluency in English (interviews will be conducted in English)
- BS in Computer Science or Relevant Technical Area, or 4+ years of experience as a backend Engineer
- Advanced knowledge in OAuth2 and other authorization frameworks
- Deep knowledge of HTTP REST API
- Experience in Java and C++ (JBoss/Wildfly is a plus)
- Knowledge of Redhat SSO and other SSO solutions
- Experience with test tools like JUnit, Arquillian, JMeter, Postman, etc.
- Experience with Relational Database Systems (PostgreSQL, MySQL or Oracle)
- Knowledge of non-relational database systems, such as Redis, ElasticSearch, MongoDB, DynamoDB, Riak or Neo4J.
- Experience with Git and Git flow, or other distributed VCS
- Experience with unit and integration tests, and Continuous Integration
- Knowledge of Unix/Linux shell scripting and tools like awk, sed, curl
- Availability to travel
- Enthusiasm for cycling
- Knowledge of container technologies, such as Docker
- Experience with frameworks like Django, Rails, and Express.js
- Experience with geographically distributed teams
- Experience with agile development methodologies like Scrum or Kanban
- MSc or Ph.D. in Computer Science or Relevant Technical Area
- Experience in distributed systems
- Experience with Jenkins, CircleCI, TeamCity or similar
How to stand out among the rest:
Your resume/CV is enough to show off your skills, accomplishments, and experience. However, if you choose to include a cover letter introducing us to your awesome personality, we will read that too.
Of course, we are nothing without our values. Our values ground us. They ensure we run and build a company where people love to work, feel like they are welcomed, included, and belong. Only then can they thrive and do their best work. The values we strive to live every day are:
- Make It Fun
- Elevate Teammates
- Cultivate Our Community
- Always Level Up
- One Zwift for All
We strongly believe that different backgrounds and ideas are a competitive advantage; we hire candidates of any race, color, ancestry, religion, sex, national origin, sexual orientation, gender identity, age, marital or family status, disability, Veteran status, and any other status. Zwift is proud to be an Equal Opportunity Employer. If you have a disability or special need that requires accommodation, please let us know by emailing [email protected]
Zwift, Inc. is an Equal Opportunity Employer.