Twitch
is building the future of interactive entertainment and video is at the
very core of that vision. If you eat thundering-herd problems for
breakfast, if you think handling data by the terabit per second sounds
entertaining, and if you've ever asked yourself ‘but what if we lose a
second backbone link?’ then we want you to come help scale our systems
by another order of magnitude. You will get to join an awesome team
working on solving massive and difficult problems over a large array of
domains: from fraud detection, real-time analytics, distributed
real-time load balancing, protocol-aware reverse proxies, to distributed
job scheduling, …
Here’s a short list of our current scale:
-Serve more than 150 million unique visitors per month
-More than 2 million peak concurrent users
-More than 26 billion minutes (50,000 years) of video watched each month and growing
-10 billion messages sent on chat per day and growing
-Serving 5 million+ requests per second on the edge and growing
-Anticipated scale year-over-year = 2.5x
Our
technical stack is vast and our hardware deployments are far reaching
to all corners of the globe. We primarily use Go in our backend, while
utilizing Python and SQL for interactive data analysis. Our scale and
speed of our growth forces us to experiment with techniques and
technologies.
RESPONSIBILITIES
- Primary areas of responsibility: Viewcount systems, viewbot/fraud detection, Twitch live video CDN.
- Be
a key contributor in architecture, design and implementation of core
software backend components of the video infrastructure, creating
architectures solving problems for the long term.
- You will work on critical, high performance, large scale services and libraries.
- Own end-to-end availability and performance of software services serving millions of requests.
- Lead in design and architecture sessions with other senior technical leads.
- Lead wide product or technical initiatives working with multiple engineering and product groups.
- Level-up the organization around you with thorough code review and engineering best practices.
- Mentor other members of the team, developing their skills and understanding.
REQUIREMENTS
- 5+
years of development experience as a software / distributed systems
engineer working on mid- to large-scale fault-tolerant high-throughput
distributed production systems.
- You build systems through design, experimentation, and measurement.
- Excellent communication skills and the ability to work well within a team.
- Strong customer focus, ownership, urgency, and drive.
- Good understanding of data stores, data modeling, indexing and associated trade-offs.
- You should care about software design and have built systems that other people love to use and work with.
- Passionate about learning new languages and technologies.
BONUS POINTS
- You know Go and have used it in production ready systems or think learning it sounds interesting.
- Experience crunching large amounts of data / data analysis / visualization using SQL / Python / Pandas are a big plus.
- Experience
with large scale services, database, and or data processing systems.
Experience developing web services, or other large scale distributed
systems, that have successfully delivered to customers is a big plus.
- Experience
performance tuning for high throughput, highly available distributed
services: performance counters, event traces, profiling.
- Experience with Amazon AWS is a big plus.
- You've written a Linux kernel module, distributed storage system, or software load balancer.
About Twitch
Twitch
is the world’s leading video platform and community for gamers, with
more than 100 million visitors per month. We connect gamers from around
the world by allowing them to broadcast, watch, and chat with each
other. Twitch’s live and on-demand video platform forms the backbone of
a distribution network for video game broadcasters including pro
players, tournaments, leagues, developers and gaming media
organizations. Twitch is leading a revolution in gaming culture,
turning gameplay into an immersive video experience. Learn more at:
http://twitch.tv
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.