Engineering
Jun 26, 2025
Leveling Up Customer Experience Monitoring at Twitch: The QoUX Journey
In the fast-paced world of live streaming, the quality of user experience directly impacts viewer retention and satisfaction. I'm excited to share how Twitch transformed its monitoring capabilities through Quality of User Experience (QoUX), an initiative that has allowed us to understand user behavior, catch user-impacting issues faster and with lower effort, and respond quickly.
Dec 5, 2024
Views pwn Tables as data interfaces
Jun 22, 2022
Smarter, Better, Faster: Using Machine Learning to Review Emotes
Apr 26, 2022
Ingesting Live Video Streams at Global Scale
Apr 12, 2022
Breaking the Monolith at Twitch: Part 2
Mar 30, 2022
Breaking the Monolith at Twitch: Part One
The story of how Twitch transitioned from
Jan 10, 2022
Automated Chaos Testing on the Front-end
Nov 30, 2021
Using Algorithms to Meet Accessibility Requirements for Color Contrast
Nov 16, 2021
Defend Your Castle: High Availability for High-Stakes Cloud Services
Sep 16, 2021
The Quest for Fresher Stream Summaries
Sep 7, 2021
Guiding a monolith with a gentle touch: pairing codeowners and lint rules
Jul 24, 2019
ThisEmoteDoesNotExist: Training a GAN for Twitch Emotes
The idea for this project began when a coworker and I were talking about NVIDIA’s photo-realistic generated human faces using StyleGAN and…
Apr 10, 2019
Go memory ballast: How I learnt to stop worrying and love the heap
I’m a big fan of small code changes that can have large impact. This may seem like an obvious thing to state, but let me explain:
Mar 15, 2019
How Twitch Addresses Scalability and Authentication
Curious how Twitch Identity services address scalability and performance challenges related to authentication?
Feb 26, 2019
Twitch for Android: From Meme to Dream
Meet PogDroid, our beloved Android app to watch the latest memes unfold live while on the go. Buckle up: This is PogDroid’s adventure!
Dec 19, 2018
How VP9 delivers value for Twitch’s esports live streaming
VP9 will soon help Twitch offer a better viewing experience for premium esports and partner channels
May 14, 2018
Artisanal Objective-C Sum Types
A sum type combines many possible differently-typed values into a single value, expressed in Swift as an enum.
Jan 16, 2018
Twirp: a sweet new RPC framework for Go
Today Twitch is releasing Twirp, an RPC framework we use for communication between backend servers written in Go.
Dec 1, 2017
Twitch invites you to take on the ICME 2018 Grand Challenge
Because of its scalability and low cost, HTTP streaming is now widely used for live broadcasting on the open Internet. A number of…
Oct 23, 2017
Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part II
By: Jeff Gong, Software Engineer, jeffgon@twitch.tv
Sahil Dhanju, Software Engineer Intern
Chih-Chiang Lu, Senior Software Engineer…
Oct 10, 2017
Live Video Transmuxing/Transcoding: FFmpeg vs TwitchTranscoder, Part I
By: Jeff Gong, Software Engineer, jeffgon@twitch.tv
Sahil Dhanju, Software Engineer Intern
Chih-Chiang Lu, Senior Software Engineer…
Apr 25, 2017
Investigating React Native
On the Twitch mobile team, we care a lot about making sure we use the best tools available to build our apps. React Native is a topic that…
Apr 4, 2017
Segment-based rate control of video encoder for live ABR streaming
Contact:
Tarek Amara, Video Processing Engineer, amatarek@twitch.tv
Yueshi Shen, Principal Research Engineer, yshen@twitch.tv
Mar 24, 2017
CocoaPods for Development-Time Modularity
At Twitch, we use CocoaPods, but not just for consuming external libraries like 1PasswordExtension and google-cast-sdk. We also use them…
Oct 18, 2016
Twitch comes to GHC 2016
Get ready, Houston. Twitch is coming to the Grace Hopper Celebration of Women in Computing!
Oct 11, 2016
How Twitch uses PostgreSQL
Twitch has approximately 125 database hosts serving OLTP workloads in production, usually as part of a cluster. Approximately 4% run MySQL…
Sep 20, 2016
iOS versioning
iOS versioning is a seemingly simple problem. All you need to do is give your app a version number and you’re done, right? Not quite. In…
Aug 8, 2016
Improving Chat Rendering Performance
Chat is a core part of the Twitch experience. Rendering new chat lines dozens of times a second on the client turns out to be a very…
Aug 4, 2016
Twitch goes to GopherCon 2016
When I first went to GopherCon with Twitch two years ago, the Go language had already changed the way I write software. Twitch’s chat…
Jul 29, 2016
Twitch Hosts Girls Who Code
Today Twitch welcomed 20 very impressive high-school ladies who are participating in Girls Who Code’s summer program.
Jul 15, 2016
High Performing Native Chat on Twitch
Jul 12, 2016
What makes a great data science team?
Here at Twitch, we’ve been working hard to make evidence-driven decision-making a central part of how we build great products. Data…
Jul 5, 2016
Go’s march to low-latency GC
We use Go at Twitch for many of our busiest systems. Its simplicity, safety, performance, and readability make it a good tool for the…
Mar 9, 2016
Building a Better Twitch — Updating to HTTPS
As part of our ongoing work to make Twitch more secure, we’re updating the Twitch website to be served over HTTPS. Going forward, this will…
Dec 18, 2015