Software Engineer - Engine & Runtime (C++)

Posted 3 Days Ago
Hiring Remotely in San Francisco, CA, USA
In-Office or Remote
160K-230K Annually
Senior level
Mobile • Other • App development • Utilities • Automation
Shorebird makes products that help businesses succeed with Flutter.
The Role
Own and build features in a custom Flutter engine and Dart runtime fork using C++. Design, implement, ship, and support systems-level features (asset support, hot restart, crash reporting, profiling) while maintaining build infra and coordinating rebases and native tooling. Work remotely on a small team with high ownership and customer impact.
Summary Generated by Built In
Overview

Shorebird delivers over-the-air code push for Flutter apps, with thousands of monthly customers and tens of millions of updates shipped around the world every month. What makes it all possible is a custom fork of the Flutter engine and the Dart SDK, including an ARM64 interpreter that keeps us App Store compliant. It's the hardest and most differentiated code in the company, and where we need you.

We build Flutter itself, and the services around it. We're a small team (~8), all remote. The person who started Flutter at Google works here, and you'd work with him directly.

The role

We're building a lot at the Flutter “engine” layer and need someone who wants to build there with us. This is primarily a builder seat, with a little maintenance (we’ve mostly automated it away), but wide general reach and ownership. You’ll own our Flutter fork, including how it’s built, managed and maintained. The bulk of this work is using your systems-layer skills to take our Flutter fork further than Google’s. You'll design and ship new capabilities down in the Flutter engine and Dart runtime, in C++, with direct and immediate customer impact.

The near-term backlog is real and substantial, some examples:
  • Asset support in patches
  • Debug-build support in our Flutter fork, with the build-infra work that comes with it
  • Hot restart: making our update mechanism play nice with in-process restart instead of a full process restart
  • Crash reporting: zero-config, native symbolication tied to our fork
  • In-production profiling
  • Longer-term: deeper linking/dispatch work in the Dart VM, plus assorted engine changes to keep code push ahead of upstream

And there is lot to do beyond that, as we grow and are able to take our fork further than Google’s.

What You’ll Do

  • Build new features deep in a large, C++ codebase (our Flutter engine + Dart runtime forks)
  • Own capabilities end to end: design doc, implementation, ship, support
  • Work as "full stack" as you're comfortable; on a team this small, work divides by interest, not by rigid layer
  • Work directly with the founder who built Flutter. This is a learn-as-much-as-you-want seat
  • Take on some unglamorous work (rebases after Flutter releases, occasional gnarly native bug, a build-infra fix) because owning a larger fork covers a lot of ground. You won't be writing C++ every hour of every day

What We’re Looking For

The single thing that matters most: you want to work at this layer. Low-level systems work is slower and harder than web or backend work. If being close to the metal and having your code touch 100s of millions of devices every day is where you're happiest, keep reading.

  • Real facility and real desire for C++. You don't need to be a decades-deep veteran, but you need to be genuinely productive in C++ and genuinely want to be down here. The AIs write most of the code these days, but you need to have the taste to tell them when it’s right or not. We care far more about desire for our mission, company size and this layer than about years on a résumé.
  • A generalist who goes deep, not a narrow specialist. You've picked up a large codebase you didn't write and made yourself productive in it.
  • Mission alignment. You care about the world no longer writing everything twice. Flutter is the tool; Shorebird aims to take it beyond where Google can and align it with the wider market’s needs over Google’s.
  • Self-directed. At a company this small, the calls are yours to make and yours to live with. You thrive in ambiguity and don't need a lot of process to feel comfortable.
  • Drawn to a small company. Impact and ownership over structure and scale.

You do not need:

  • Prior Flutter or Dart engine experience, we'll teach you
  • Compiler expertise. You will work on a compiler at times, but this too can be taught
  • A graphics background. We don't yet have any changes to Flutter’s graphics stack and don’t plan to in the near term

Why Join

  • Work directly with a small, senior team, including the creator of Flutter, on hard, high-impact problems
  • Do the kind of work Google's Flutter engine and platform teams do (C++ used by billions daily), but with direct customer access, direct incentives to improve their outcomes, and the autonomy and ownership stake to actually do it
  • Broader and more consequential than the equivalent specialized seat at big tech, where that impact is usually insulated away from you
  • Direct line to thousands of customers via our Discord when you need to ask one something
  • Competitive compensation and meaningful early equity
  • We gather in person several times a year to work and socialize as a team

What your days will look like.

First day. We're all remote, so you'll start by hopping on Discord, where most of us are on and off video throughout the day. Eric (CEO) and other engineers will be there to get you going. After setting up your Mac (we need to build for iOS), we'll walk through building the Flutter engine on your machine and read the fork diffs together: our Dart SDK vs. upstream, our Flutter engine vs. upstream. We'll skim the Rust updater so you see how the pieces fit. Take notes and update our docs as you go, because being new to the system is precious and fades fast.

First week. We'll go through the backlog together and pick a first change that gets your hands into the engine/runtime code. We'll also spend a couple of days improving our build infra so you're fast down here. We’ve made a lot of improvements to it recently, but it will be an area you’ll want to be familiar with and improve further. A good starter might be to improve our updater (rust) package a little together.

First month. Your first real feature. A natural starting point is asset support in patches, which will touch the updater, engine, and our backend. We have some past demos, and others will help you. From there, as you find your feet, there is lots to do at this layer. I expect we’ll tackle teaching our Flutter fork to build debug builds, which comes with real build-infra work but will unlock entire product categories for the company.

First quarter. Once you're on your feet, the bigger builds open up: hot restart (making our update mechanism play nice with in-process restart rather than a full process restart), then zero-config crash reporting and/or in-production profiling. That is the kind of work that needs changes at the engine and runtime layers and cuts across the whole stack. Medium-term there are further improvements to our custom Dart compiler, interpreter and “linker”, as well as new features like “native build caching” for Flutter/Dart to explore together. That work is yours to shape.

Beyond that it's hard to predict. We're a small startup. First and foremost we want someone who aligns with our mission, wants a company this size and is comfortable at this layer. What you bring that others on the team don't is the interest and ability to work down in our C++. Over time, as we build more into the fork and contribute more upstream, that surface is yours to decide and build.

Compensation
The base pay range for this role is $160,000 – $230,000 per year.

Skills Required

  • Proficiency and strong desire to work in C++
  • Experience shipping features in large C++ codebases and becoming productive in unfamiliar codebases
  • Systems-level/runtime or engine development experience (interpreter, runtime, or similar)
  • Experience with build systems and build infrastructure, including macOS/iOS builds
  • Ability to own capabilities end-to-end: design docs, implementation, shipping, and support
  • Self-directed, comfortable with ambiguity and small-team ownership
  • Willingness to perform maintenance tasks such as rebases, native bug fixes, and build-infra fixes
  • Familiarity with or willingness to learn Flutter engine and Dart SDK internals
  • Experience with Rust (updater tooling) or willingness to work with Rust
  • Familiarity with native crash reporting, symbolication, or in-production profiling (or willingness to learn)
Am I A Good Fit?
beta
Get Personalized Job Insights.
Our AI-powered fit analysis compares your resume with a job listing so you know if your skills & experience align.

The Company
HQ: San Francisco, CA
5 Employees
Year Founded: 2023

What We Do

Shorebird is a developer-tools company that makes it easier for businesses to build, ship, and operate mobile applications with Flutter. Our flagship product, Code Push, enables safe over-the-air updates for Flutter apps—allowing teams to fix bugs, ship features, and respond to issues without waiting for app store approval. We're expanding our platform to support more of the Flutter development lifecycle, with a focus on developer experience, reliability, and speed. Shorebird is trusted by teams ranging from startups to enterprises who need to move fast without breaking things.

Why Work With Us

We're building critical infrastructure for the Flutter ecosystem. We are a small team that has a big impact and overall developer velocity is our North Star.

Similar Jobs

Bankrate Logo Bankrate

Forward Deployed Engineer

Artificial Intelligence • Consumer Web • Digital Media • Fintech • Marketing Tech • Software • Financial Services
Easy Apply
Remote
United States
160 Employees
100K-195K Annually

Golden Pet Brands Logo Golden Pet Brands

Senior Data Analyst

Digital Media • eCommerce • Information Technology • Marketing Tech • Pet • Retail • Social Media
Easy Apply
Remote
United States
178 Employees
100K-125K Annually

Pluralsight Logo Pluralsight

Account Executive

Edtech • Information Technology • Software
Remote or Hybrid
USA
1000 Employees
176K-220K Annually

GitLab Logo GitLab

Support Engineer

Cloud • Security • Software • Cybersecurity • Automation
Easy Apply
Remote
2 Locations
2500 Employees

Similar Companies Hiring

Prolaio Thumbnail
Artificial Intelligence • Big Data • Healthtech • Mobile • Wearables • Analytics
Chicago, IL
82 Employees
ARB Interactive Thumbnail
Gaming • Mobile • Software
Miami, Florida
190 Employees
Granted Thumbnail
Artificial Intelligence • Healthtech • Insurance • Mobile • Financial Services
New York, New York
23 Employees

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account