Responsibilities
TikTok is the leading destination for short-form mobile video. At TikTok, our mission is to inspire creativity and bring joy. TikTok's global headquarters are in Los Angeles and Singapore, and its offices include New York, London, Dublin, Paris, Berlin, Dubai, 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.
Want more jobs like this?
Get Software Engineering jobs in Singapore delivered to your inbox every week.
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
Content Discovery User Platform team builds and maintains a reliable and safe user platform, supporting user lifecycle information management and access across TikTok. As one of the most fundamental services in TikTok, user team needs to support the company's fast growth by
- Ensuring and improving the system's reliability and stability
- Improving the scalability of the whole system, including scalability in system functionalities to meet various business requirements and scalability in engineering to support rapid growth of user numbers and traffic.
- As a fundamental platform, continuously improve the usability of the platform and optimize the development process.
In this team, you'll have the opportunity to sharpen your expertise in coding and large-scale distributed system design, performance analysis and large system operation. Our challenges are not some regular day-to-day technical puzzles -- you'll have a unique opportunity to have first-hand exposure to the challenges of building a hyper scalable, hyper stable and safe large scale system within a non-stop evolvement of a phenomenal product ecosystem.
- Improve system design and architecture to ensure high stability and performance of the services across global multi-DC, including but not limited to: disaster tolerance, SLA management, chaos engineering, multi-site disaster recovery architecture
- Design and develop core components to improve system scalability
- Analyze service performance and find bottlenecks (language/trace analysis/storage) and optimize accordingly to improve cost and efficiency
- Familiar with relational database and No-SQL database; Familiar with patterns of distributed database.
- Manage operations of user service, such as SLA management, system deployment, performance tuning and trouble shooting
- Participate in regular on-call duties
Qualifications
Minimum Qualifications
- Bachelor Degree in Computer Science or related field
- Strong programming fundamentals, particularly in data structures, concurrency.
- Experience on operations and optimizations of large scale distributed system's stability
Preferred Qualifications
- At least 5 years of relevant working experience handling scalable distributed services
- Experience building and optimizing highly available, scalable, distributed back-end services.
- Experience on designing and building large scale user platform is preferred
- Experience on DDD (domain driven design) is preferred
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.