Senior Software Engineer, Video Clients (C++)

About the Employer
  • Twitch
  • San Francisco, CA, United States

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. Amazon Interactive Video Service (IVS) is an AWS Service built within Twitch that enables AWS developers to easily leverage the low-latency highly-distributed live video platform that powers Twitch in their own applications. The IVS Video Clients engineering team is looking for an experienced C++ engineer to contribute to core functionality of our video playback library. This cross-platform low-level library powers playback on all of the client platforms that Twitch supports, including desktop and mobile web, Android, iOS, PS4, Xbox, and others, as well as the player SDKs for IVS.

If you are passionate about video, streaming, or entertainment, and obsessed with building performant client software, then this is the position for you. We do not require previous experience working with video technologies. You will work with talented video veterans in building the client 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:

  • Take ownership of key components of C++ cross-platform video playback library
  • Experiment to decide to build new features and improve performance and client quality of service
  • Lead cross-team projects, collaborating with backend video teams like ingest, transcode, replication, and mapping teams to improve the video playback experience
  • Add reliable unit, integration, and end-to-end tests that run on different browsers and devices
  • Up-level the team through mentorship and best practices

You Have:

  • 8+ years of professional software development or equivalent expertise
  • Expertise with modern C/C++
  • Strong understanding of software architecture fundamentals, such as multi-threading, object oriented design, abstractions, software design, and multiple testing methodologies
  • Great communication skills and can clearly articulate complex technical problems and solutions

Bonus Points

  • Experience contributing to a low-level video player
  • Experience working with Emscripten and WebAssembly
  • Experience working with UDP technologies like QUIC and RIST

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

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

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.