We're hiring a WebRTC Expert

Applications closed

Thanks for your interest in working at Tuple! We're no longer accepting new applications for this role.

You can always tell us why we should hire you anyway or get notified when we post new openings.

Full-time. Remote.

tl;dr: We’d like to hire a WebRTC expert (or someone intent on becoming one and well on their way) to help us improve call reliability, reduce latency, improve performance, and maybe even build an RTC pipeline from scratch some day.

Who we are

Tuple is an app that lets developers pair program while working remotely. Think of it a bit like super-powered Zoom screen-sharing, used by developers who are writing code together in real-time from the comfort of home.

Folks switch to Tuple because the screen-sharing is extremely high quality (important when viewing source code together) and the remote control is seamless and low-latency (important when controlling someone else's computer via the Internet).

We founded the company five years ago because we disliked the existing pairing tools, and believed that by focusing on this particular use-case, we could create something developers would love.

Turns out we were pretty much right: we've grown to millions in ARR and tens of thousands of paid users in five years without any outside funding or full-time sales help.

Role overview

WebRTC is our core dependency, and the degree to which we use it well is critical to our business. We want to hire someone for the long-haul to make sure this foundation is incredibly solid. The right person has the skills and the drive to help us make Tuple faster and more reliable every month.

Day-to-day, you should expect to pair (using Tuple, naturally) somewhat regularly.

We love junior developers, but this role is for someone senior.

About you

Here's how to tell if you'd be a good fit for this job.

Must-haves

  • You have substantial experience building things with WebRTC. Ideally, you've built some sort of native app rather than just using the version compiled into browsers.
  • You’re an expert at programming in C++. You’re unintimidated by the idea of reading (and forking, and modifying!) WebRTC’s C++ codebase.
  • You’re excited about the idea of shaving 1-10ms off of our latency, or 10% off of our CPU usage. What’s more, you’ve done that sort of work before and know how to go about tackling optimization problems.
  • You know your way around video codecs and how to tune them.
  • You believe in the power of pair programming (here's our take on it).
  • You write well.

Nice-to-haves

  • You're not afraid of sitting down with a tasty beverage and digging into an RFC. Low-level internals excite, rather than scare you.
  • You have experience collecting stats on and monitoring WebRTC-based calls. You’re excited about improving our monitoring infrastructure so we always know how Tuple calls are going in the real world.
  • You’ve had patches accepted into WebRTC.
  • You read the discuss-webrtc mailing list.

Big projects you’re likely to work on

  • Bringing multiway calls to Tuple. Our app currently supports up to three people on a call, but our customers want to invite even more folks to their pairing sessions. We’d like your help scaling our media server infrastructure and tuning WebRTC for this use-case.
  • Finding perf wins that reduce our CPU usage and remove latency. Every cycle counts.
  • Integrate our call monitoring tools into a support portal so we can provide higher quality feedback and give actionable feedback to users.
  • Maybe someday: rewriting portions of the RTC pipeline from scratch to make it even better at low-latency screen sharing.

Why you might want to work with us

  • We're tiny, so there are no layers of bureaucracy to work through. You can have a huge impact here.
  • We rarely have meetings.
  • You can work remotely, though we need you to have reasonable overlap with Boston's time zone (EST).
  • You'll have a front-row seat at an early-stage, fast-growing company. If you hope to start your own thing someday, this could be good preparation.

Why you might not want to work with us

  • We're still figuring out how we want to run the company, so some processes are missing or unrefined. If you need a lot of structure to thrive, this might not be ideal for you.

Salary

We're looking for someone great, not someone cheap. If you're expensive but amazing, we'll make it work.

How to apply

Pitch us!

Please write something that tells us why we're a great fit for each other and what you see the future being like if we work together.

You don't need to include a resume, but that doesn't mean we're not interested in what you've done in the past. We're just leaving it up to you to tell your story the way you want to tell it.

Please be very specific about your C++ and WebRTC-related experience.

When you're ready, email jobs+webrtc@tuple.app.