Logo
TikTok

Senior Backend Software Engineer, Real Time Communication (Seattle, WA)

TikTok, Seattle, WA


Responsibilities

TikTok is the leading destination for short-form mobile video. Our mission is to inspire creativity and bring joy. TikTok has global offices including Los Angeles, New York, London, Paris, Berlin, Dubai, Singapore, Jakarta, Seoul and Tokyo.

Why Join Us
Creation is the core of TikTok's purpose. Our platform is built to help imaginations thrive. This is doubly true of the teams that make TikTok possible.
Together, we inspire creativity and bring joy - a mission we all believe in and aim towards achieving every day.
To us, every challenge, no matter how difficult, is an opportunity; to learn, to innovate, and to grow as one team. Status quo? Never. Courage? Always.
At TikTok, we create together and grow together. That's how we drive impact - for ourselves, our company, and the communities we serve.
Join us.

Team Introduction
TikTok RTC is a world-leading Real-Time Communication service that provides instant and quality multimedia interaction among our customers across the globe. We are building the next generation audio/video processing and compression platform, along with the fastest delivery networks and the richest cloud services.

Working in this team, you will have the opportunity to tackle the challenges of advanced audio/video algorithm design and global large-scale network deliveries while leveraging your expertise in coding, algorithms, data analysis, and large-scale system design.

As a Senior Software Engineer in the RTC team, you will
- Design, build and maintain a global scale, multi-regional Real Time Communication system.
- Research and development of distributed traffic scheduling platform, stability assurance platform, unified configuration center, real-time message middleware and other core systems.
- Uphold excellent engineering practices in the codebase and system designs
- Design and implement the RTC system to work effectively among data centers
- Optimize the network transmission of streaming media
- Collaborate with internal product and engineering teams

Qualifications

Required:
- Working experience in software engineering.
- Bachelor's degree in Computer Science or a related technical background involving software/system engineering, or equivalent working experience.
- Good programming experience with at least one of the following languages: C, C++, Java, Python, or Go.
- Expertise in designing, analyzing, and troubleshooting large-scale distributed systems.
- Experience with networking, e.g. TCP/IP, DNS, CDN, NAT, Load Balancer, Proxy, etc
- Familiar with Unix/Linux operating systems
- Familiar with commonly used database systems, such as MySQL, Redis, etc
- Strong verbal and written communication skills
- Strong analytical and critical thinking skills

Preferred Qualifications:
- Familiar with Zipkin and other link tracking tools, familiar with commonly used RPC frameworks such as grpc, thrift, spring cloud, Dubbo, Motan, etc.
- Experience with message queue middleware such as Kafka, NSQ, RabbitMQ is preferred
- Experience with WebRTC, CDN, Live Streaming and Multimedia is a bonus.

TikTok is committed to creating an inclusive space where employees are valued for their skills, experiences, and unique perspectives. Our platform connects people from across the globe and so does our workplace. At TikTok, our mission is to inspire creativity and bring joy. To achieve that goal, we are committed to celebrating our diverse voices and to creating an environment that reflects the many communities we reach. We are passionate about this and hope you are too.

TikTok is committed to providing reasonable accommodations in our recruitment processes for candidates with disabilities, pregnancy, sincerely held religious beliefs or other reasons protected by applicable laws. If you need assistance or a reasonable accommodation, please reach out to us at [redacted]