This job might no longer be available.
Senior Software Engineer, Video Playback (C++)
4 years ago
About Twitch
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 Position
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 own significant portions of our cross-platform video playback library. This low-level playback library powers playback on all of the client platforms that Twitch supports, including desktop and mobile web, Android, PS4, XBox, 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, and obsessed with building performant client software, then this is the position for you. 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!
Responsibilities
- Take ownership of key components of C++ cross-platform video playback library
- Experiment to decide for performance improvements and feature enhancements
- Work closely with product stakeholders throughout Twitch to build new video features
- Collaborate with backend video teams like ingest, transcode, replication, and mapping teams to improve the video playback experience
- Add reliable cross-platform unit, integration, and e2e tests
- Write and contribute to technical documents like project proposals and architecture overviews
Requirements
- Have 8+ years of professional software development or equivalent expertise
- Have deep expertise with video - streaming formats, video codecs, video players
- Have strong experience with C/C++
- Have strong understanding of software architecture fundamentals, such as multi-threading, object oriented design, abstractions, software design, and multiple testing methodologies
- Have great communication skills and can clearly articulate complex technical problems and solutions
Bonus Points
- Have built or contributed to a low-level video player
- Have worked with web video APIs like MSE, EME, Media Capabilities
- Have worked with WebRTC
- Have worked with Emscripten / WebAssembly
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.
Create Your Profile — Game companies can contact you with their relevant job openings.