Strava Engineering Team Blog

Serving Maps for the World's Athletes

The Strava mobile clients and website render millions of map images every day to provide geographic context to activities, routes, segments, and more. [We use and love Mapbox](http://labs.strava.com/blog/tailoring-maps-strava-athletes/) for our interactive maps on the web, but because of our high volume of requests, we came to a point where it was more economical to build our own static map service.

View More.

Mesos at Strava

Over the past few years at Strava, server side development has rapidly transitioned from our monolithic Ruby on Rails app (The Monorail) to a service oriented architecture with services written in Scala, Ruby, and golang. This post describes how we use Mesos, Marathon, and Docker to deploy nearly 100 different services in an efficient and reliable way.

View More.

Calling all Strava Developers

We are holding our first ever Strava API developer challenge to recognize the developers who are using our API, and get them excited to create innovative applications. You are invited to create and submit a new app or showcase an existing app by September 6th, 2016. Top submissions will have the opportunity to present their entry to all of Strava (including the CEO), receive exposure through our website, newsletter and social media channels, and win gear and other fun prizes.

View More.

Cadence, Choo Choo!!

Over the last four years the mobile team at Strava has shipped more than fifty releases across Android and iOS. Our release cycle has varied from over three months for huge monolithic features to less than a week for hotfixes of issues discovered shortly after releasing. Historically app updates and new feature releases have been tightly coupled. As demands on each release escalated we saw release dates slip and quality jump around due to making concessions trying to push a release out the door. After going through a particularly ambitious release in early Spring 2015 we needed to reassess how and when we release. Read on to learn how we made a drastic change in our release and development cycle and adopted an entirely new mindset when it comes to delivering features on Strava mobile.

View More.

Get on the map!

Our new maps are based on OpenStreetMap, and they can be improved by anyone, including you. Using Mapbox tools and OpenStreetMap data, we tailor our maps to the needs of runners, cyclists, and outdoor enthusiasts. Not only is OpenStreetMap free, but it's easy to access and update, which is critical in our rapidly changing world. Read on to learn how to share your geographic knowledge with other athletes and the global OpenStreetMap community.

View More.

Tailoring Maps for Strava Athletes

You may have noticed some significant improvements to the look, feel and utility of the the maps on Strava’s activity and segment pages. Our design and engineering teams have worked with the expert cartographers from Mapbox to customize our maps to best meet the needs of avid runners and cyclists around the world.

View More.

Futures/Promises in the Land of Golang

These days a common bottleneck in execution time is the network. It simply takes a long time to make the round trip (several milliseconds, versus a 100th of that to process the result). So, if you're doing multiple network requests, it makes sense to do them in parallel to reduce the overall latency. Futures/promises are a technique to accomplish this.

View More.

Closing the Gap - Musing from a Female Engineer

Women in technology – or the lack thereof – is a hot topic. Googling "women in tech" generates enough content to keep anyone busy; the internet raged with backlash to Barbie’s botched engineering career, and Always spent millions empowering women with their Super Bowl ad. Until recently, I was the only female engineer at Strava. By reflecting on my experiences I can better understand the gender gap, and by sharing my success I hope to prove to other women that they belong in technology.

View More.