You're using an older version of Internet Explorer that is no longer supported. Please update your browser.

Software Engineer, Video Distribution

Full Time
3 days ago
Job summary
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 operates the largest dedicated live video CDN in the world, routinely delivering over 25Tbps to more than 5MM concurrent viewers. The Video Distribution team oversees the software that operates that CDN, which includes everything from custom edge software that delivers video on thousands of hosts worldwide, to the graphing algorithms that manage our worldwide caching hierarchy, and to the highly complex and introspective algorithms that decide what server a user should be assigned when they start playback.

We are looking for engineers who are excited by the thought of working across the entire CDN stack, from service load-balancing, to performance optimization, and to backbone traffic management. You will report to the Software Development Manager. You will help architect, develop, test, deploy, operate, and maintain our video software. As part of the team, we will work together to enable our broadcasters and viewers to create and interact in new ways.

You Will:
• Design, implement, and deploy new CDN features like dynamic content-replacement and traffic simulation
• Create, test, and document services and their operational process
• Help define the future of the Twitch video stack
• Collaborate across the company to define, design, build and improve the video systems


You Have:
• Bachelor's, or preferably Master's, in Computer Science, Computer Engineering, or equivalent experience
• 3+ years of relevant software development experience
• Experience building and scaling distributed, highly available systems
• Experience shipping code in fast, iterative cycles
• Excellent command of at least one programming language


Bonus Point:
• You know Go and have used it in production-ready systems
• You have used WebRTC to build real time video/audio systems
• You have some experience with network engineering and BGP
• Experience building APIs/interfaces that other programmers love to use
• You've written a Linux kernel module, distributed storage system, or software load balancer
• Experience with network programming

• 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
Software and Programming