Senior Software Engineer - Video Playback (C++)

About the Employer

About Us

Launched in 2011, Twitch is a global community that comes together each day to create multiplayer entertainment: unique, live, unpredictable experiences created by the interactions of millions. We bring the joy of co-op to everything, from casual gaming to world-class esports to anime marathons, music, and art streams. Twitch also hosts TwitchCon, where we bring everyone together to celebrate, learn, and grow their personal interests and passions. We’re always live at Twitch. Stay up to date on all things Twitch on LinkedIn, Twitter and on our Blog.

About the Role

Twitch is building the future of live interactive entertainment, and video is at the very core of that vision. Twitch’s Video Playback engineering team is looking for an experienced C++ video client engineer to improve and evolve the bitrate (ABR) algorithm in our cross-platform playback library. This low-level library powers playback on all of the platforms that Twitch supports, including desktop and mobile web, Android, PlayStation 4, Xbox One, and others. As a core playback engineer, you will help shape the future of the Twitch live video experience used by over 15 million users a day.

If you are passionate about video, streaming, or entertainment, have a background in mathematics or statistics, and are excited about experimenting to decide, then this is the position for you. You will work with experienced video veterans in building the player for the largest live video streaming platform in the world. Along the way, you’ll gain in-depth knowledge of our highly available and scalable end-to-end live video infrastructure.

We can’t wait to see what we can build together!

You Will:

  • Experiment with new adaptive bitrate (ABR) algorithms to improve quality of service (QoS) for Twitch viewers with varied devices located in diverse geographies
  • Add reliable cross-platform unit, integration, and end-to-end tests to validate that ABR changes work and continue to work as expected
  • Collaborate with other video teams like ingest, transcode, and replication to improve video playback
  • Work with product partners throughout Twitch to build new video features
  • Write contribute to technical documents like project proposals and architecture overviews

You Have:

  • 8+ years of professional software development or equivalent experience
  • A background in mathematics and statistics. You will need to read technical papers on advanced ABR algorithms and strategies and adapt relevant findings into the playback library.
  • Strong experience with C/C++
  • Expertise with video - streaming formats, ABR algorithms, video codecs, video players
  • Understanding of software architecture fundamentals, such as multi-threading, object-oriented design, abstractions, software design, and multiple testing methodologies

Perks

  • Medical, Dental, Vision & Disability Insurance
  • 401(k)
  • Maternity & Parental Leave
  • Flexible PTO
  • Commuter Benefits
  • Amazon Employee Discount
  • Monthly Contribution & Discounts for Wellness Related Activities & Programs (e.g., gym memberships, off-site massages, etc.)
  • Breakfast, Lunch & Dinner Served Daily
  • Free Snacks & Beverages

We are an equal opportunity employer and value diversity at Twitch. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.