Return to jobs Return to jobs

Senior C++ Engineer

Fatmap

Clock

Posted over 30 days ago...

Expired

Join the Strava Team and Propel Your Engineering Career with our Cutting-Edge Map Rendering Engine

Overview

icon Salary

No salary declared 😔

icon Location

Berlin, Germany

icon Expires

Expires at anytime

About Strava: Strava is a vibrant digital community for athletes around the globe, with over 125 million users in more than 190 countries. It's a platform that offers an all-encompassing view of an active lifestyle, welcoming a diverse range of sports enthusiasts. At Strava, you'll be part of an organization passionate about connecting and motivating athletes and helping them achieve their best.

Role Summary:

  • Design and develop Strava's Map Rendering Engine to enhance the user experience of planning, navigating, and reliving activities.
  • Collaborate across teams to meet cross-stack requirements and ensure seamless integration.
  • Improve functional and non-functional aspects of the code and promptly address user feedback.

Role Requirements:

  • Minimum of 4 years' experience in software engineering with expertise in C++.
  • Proficiency with Git and experience in 3D graphics (OpenGL, Direct3D, Metal, Vulcan).
  • Strong understanding of linear algebra, spatial and graphics algorithms, and software design patterns.
  • Fluency in English with excellent communication skills for a distributed workplace.
  • Experience with memory and performance optimization, multithreading, and cross-platform projects is highly valued.
  • Passion for the outdoors, being active, or an interest in mapping technologies.

About This Role

Strava is the leading digital community for active people with more than 125 million athletes, in more than 190 countries. The platform offers a holistic view of your active lifestyle, no matter where you live, which sport you love and/or what device you use. Everyone belongs on Strava when they are pursuing an active life.

Strava is hiring an experienced C++ software engineer (f/m/d) to strengthen our Map Rendering Engine (MRE) team within our Map Platform organization. This is an opportunity to be part of a team that is focused on developing rich and immersive map experiences that help our users plan, navigate and relive their activities.

A 3D map in (y)our hands

Strava has the best tools for terrain analysis combined with the content discovery that users expect from a modern mapping product. To keep the Strava experience ahead of competing products, we are always pushing our technology to the next level.

The team is developing a specialized and highly optimized mapping and terrain rendering engine that has to download and display data at a global scale. We use C++ for the engine to achieve the necessary level of performance and resource management when integrated in our product. The engine empowers our mobile applications to not only show global data but seamlessly display custom content and manipulate the map. A core function is the ability to use the map when offline or with an unreliable internet connection.

Other assets in MRE’s portfolio are a web engine with a similar code architecture, a headless cloud screenshot, and a video-producing service based on our C++ native rendering technology.

There will always be challenges when displaying an immersive and responsive 3D experience under mobile hardware energy constraints. We are looking for people who are excited to face these challenges.

This is a hybrid role based in our Berlin office.

For more information on compensation and benefits, please click here.

You’re excited about this opportunity because you will:

  • Design, develop, deploy, and maintain the Map rendering engine.
  • Effectively communicate with other teams about cross-stack requirements on APIs, Services integration, data exchange formats and more.
  • Take personal responsibility for functional and non-functional quality aspects of the code.
  • Debug and resolve errors and respond swiftly to user feedback and engineering metrics.

You will be successful here by:

  • We seek curious people who look behind the scenes to understand how things work. We are looking for…
  • People who have hands-on experience creating user-delighting functionality in resilient, distributed systems.
  • People who are excited to join bright and eager colleagues at a fast-growing company reshaping mapping and map visualization.
  • People who love to lead an active life, who enjoy the outdoors and - of course - engineering.

You’re a fit for this role because you have:

  • 4+ years experience as a software engineer using C++
  • Familiarity with Git - we use Github
  • Experience in 3D graphics with one or more of OpenGL, Direct3D, Metal or Vulcan including shader programming or excellent knowledge of linear algebra
  • Ability to work asynchronously in English. We are a distributed company and we communicate a lot in writing, as well as chatting over Slack. Good English language skills are a must, as is a disciplined approach to documentation and tickets and a friendly, collaborative attitude.

We’re excited about you because you have:

  • Rock solid, language-agnostic engineering skills
  • Experience writing memory and performance-optimized code, e.g. writing game engines or implementing complex algorithms
  • Level of detail
  • Pooling
  • Task scheduling
  • Multithreading (performant file reading)
  • Client networking (HTTP)
  • Understanding of spatial and graphics algorithms and software design patterns
  • Cross-platform projects (CMake)
  • Writing and documenting library/framework/engine APIs running on multiple platforms, in particular Android and iOS
  • Well-informed opinions and practice regarding code quality, testing, pair programming, linting, type safety, and code review
  • Technical experience in
  • Other languages - we try to choose the best language for the job and other teams use Kotlin on Android, Objective-C and Swift on iOS, Golang, Python, and Javascript - we value people who can collaborate across the stack
  • API and System design
  • CI, testing, and automation - all part of our day-to-day job
  • Interest in being active, in the outdoors, or a love for mapping. People at Strava often share a passion for one or all of these things.

The best applications will highlight any relevant experience or passion in these areas, because we’d love to hear about it. They will also include the word “Deneb” because you read this.

About Strava

Strava is Swedish for “strive,” which epitomizes who we are and what we do. We’re a passionate and committed team, unified by our mission to connect athletes to what motivates them and help them find their personal best. With billions of activity uploads from all over the world, we have a humbling and adventurous vision: to be the record of the world’s athletic activities and the technology that makes every effort count.

Strava builds software that makes the best part of our athletes’ days even better. Just as we’re deeply committed to unlocking their potential, we’re dedicated to providing a world-class, inclusive workplace where our employees can grow and thrive, too. We’re backed by Sequoia Capital, TCV, Madrone Partners and Jackson Square Ventures, and we’re expanding in order to exceed the needs of our growing community of global athletes. Our culture reflects our community. We are continuously striving to hire and engage diverse teammates from all backgrounds, experiences and perspectives because we know we are a stronger team together.

Despite challenges in the world around us, we are continuing to grow camaraderie and positivity within our culture, and we are unified in our commitment to becoming an antiracist company. We are differentiated by our truly people-first approach, our compassionate leadership, and our belief that we can bring joy and inspiration to athletes’ lives — now more than ever. All to say, it’s a great time to join Strava!

Strava is an equal opportunity employer. In keeping with the values of Strava, we make all employment decisions including hiring, evaluation, termination, promotional and training opportunities, without regard to race, religion, color, sex, age, national origin, ancestry, sexual orientation, physical handicap, mental disability, medical condition, disability, gender or identity or expression, pregnancy or pregnancy-related condition, marital status, height and/or weight.

We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.

California Consumer Protection Act Applicant Notice

Medal
Computer

Hire with Escape

Showcase your progressive organisation and post your open roles to the biggest UK community of purpose driven job seekers.

Get Started