SENIOR SOFTWARE ENGINEER - Backend
Who we are:
Zwift is the fitness company born from gaming. We use the fun of gaming and the power of communities to inspire and encourage everybody to turn their fitness goals into achievements, from start to finish, wherever your finish line is.
We took the boring indoor cycling and running routine and game-ified it, creating a rewarding social experience shared by a global community.
We're a fast growing, solidly backed startup defined by a passionate group of creative people. Zwift HQ is located in sunny Long Beach, CA with offices in NYC, London, and Rio de Janeiro.
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)
- 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!
- Amazing office location in downtown Long Beach with spectacular views
- Competitive Benefits (including Medical, Dental, and Vision)
- Awesome team of talented individuals that love what they do
- Did we mention that we ride bikes and run at work?
Zwift, Inc. is an Equal Opportunity Employer