Senior Software Engineer at Zwift
Rio de Janeiro, BR

Who we are:

We are the fitness company born from gaming. And we’re on a mission to make more people, more active, more often. We make an at home training game that connects cyclists and runners with each other around the world. Launched from the sunny beaches of Long Beach, CA., the Zwift community is active in 195 countries and growing. We’re endlessly positive, relentlessly inventive, and always looking to improve. Sound interesting?

Who we're seeking:

The Zwift server platform runs on a heterogeneous and distributed cluster composed of several different layers and nodes which require a number of different technologies to integrate on a 24/7 platform for the international user community. We are constantly modifying the software, adding and improving features and accommodating the increased load that comes with the steady growth of our successful business.

One of the major server components is its REST API, that provides authentication and persistence services to the Zwift Game, Web, and Mobile Applications. All new features modeled by the API TEAM conform to an established load and performance standard, allowing the MMO application to provide optimal user experience to our growing community of international users. We are expanding our team in Rio to address the demand for new functionalities and work with our offices in Los Angeles, New York and London. Some International travel is required.

What you'll do:

The Backend Software Engineer will design and implement the API endpoints using Test Driven Development. They will use unit and integration tests and load & performance tools to ensure that the designed API endpoints conform to the expected behavior as well as meet required performance standards.

What we're looking for:

  • BS in Computer Science or Relevant Technical Area. Alternately, 5+ years of experience as a Java Engineer.
  • Advanced knowledge in Computer Science: Data Structures, Algorithms and overall Software Design
  • Advanced experience programming with JEE (JBoss/Wildfly is a plus)
  • Experience with REST API Design (JAX-RS is a plus)
  • Advanced experience with Unix/Linux shell scripting and tools like awk, sed, curl
  • Advanced experience with Relational Database Systems (Especially Oracle of PostgreSQL)
  • Experience integrating with payment systems (credit card processors, PayPal, other)
  • Experience with GIT and/or SVN
  • Experience with Test Driven Development and Continuous Integration
  • Experience with test tools like JUnit, Arquillian, JMeter, Postman, etc.
  • Experience with Distributed Cache implementations with Memcached or Redis
  • Experience with Cloud based environments such as AWS
  • Availability to travel to Brazil and within the US
  • Fluent in English (interviews will be conducted in English)

Bonus Points:

  • Enthusiasm for cycling
  • Experience integrating with global payment system integrators like Braintree, Stripe, Adyen or Square
  • Experience integrating with tax calculation systems like Avalara
  • Experience with dynamic scripting languages as Python or Ruby
  • Experience with geographically distributed teams
  • Experience with agile development methodologies like Scrum or Kanban
  • MSc or PhD in Computer Science or Relevant Technical Area
  • Experience on Database Design
  • Experience on Distributed Systems
  • Experience with Jenkins, TeamCity or similar

Top reasons we think you’ll love it here:

  • Great Employee Fitness Program… earn a bike!
  • Awesome team of talented individuals that love what they do
  • Did we mention that we ride bikes and run at work?