Senior Software Engineer, DBMS Development

San Jose, California


Employer: TikTok
Industry: Infrastructure
Salary: Competitive
Job type: Full-Time

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.

Our database development team is responsible for building and owning database products used by TikTok's infrastructure including but not limited relational databases, key-value stores and document stores. In this team, you'll have the opportunity to develop and enhance serverless DBMS service in a cloud native environment. We embrace a culture of self-direction, intellectual curiosity, openness, and problem-solving. We are looking for candidates to work in an open, agile, and highly collaborative environment in the following areas:

- Distributed query processing, including distributed transactions, distributed lock management, logging/recovery, replication, intra-cluster communication, query optimization etc.
- Distributed storage including blob storage, key-value stores etc.
- Database performance tuning and optimization
- Cluster and system management including database scale out, high availability, backup/restore, database monitoring, observability and serviceability frameworks and tools including telemetry collection, performance and crash diagnostics etc.

Responsibilities
- Design and development of core database system functionalities and related tools
- Design, build, and maintain internal global cloud infrastructure, and solve unique, large-scale, highly complex cloud infrastructure problems
- Work on platform software based on open-source container runtimes and Kubernetes technologies.
- General ownership of DevOps which includes automated monitoring and logging tools, developing traffic infrastructure for efficient and secure routing requests, managing release processing, versioning, and CI/CD.
- Design and implement comprehensive unit, functional, and system tests for product quality, conduct performance, and scalability tests, and research innovative ideas for improvement.
- Establish reliability guidelines and ensure systems meet our goals around durability, availability, and performance.

Qualifications

Qualifications:
- BS or a higher degree in Computer Science, Computer Engineering, or other related fields
- Industry experience in distributed storage systems ( consensus-based consistency protocol, QoS resource scheduling, orchestration in distributed systems, etc.)
- Experienced in local storage engine for RDBMS (multi-thread programming, IO subsystem, LSM-tree, key-value store) and RDBMS (storage API, caching, transaction management) in general.
- Ability to lead the decomposition, design, and implementation of complex requirements for distributed storage systems.
- Knowledge and expertise in mainstream technology development of distributed storage systems; Understand distributed storage technologies, such as raid, raft protocol, consistent hash, etc.
- A results-oriented attitude and ability to deliver high-quality code in a fast-paced, dynamic agile team environment.
- Proficient in C/C++ development under Linux, and proficient in multi-threading and asynchronous programming;

Preferred Qualifications:
- Preference will be given to those who are familiar with large-scale distributed storage systems with compute/storage separation database architecture from mainstream vendors will be given priority.
- Applicants familiar with local storage engines such as RocksDB/InnoDB are preferred.
- MySQL/PostgreSQL software development experience is a plus.
- Knowledge and experience with Linux shell and other scripting languages such as Python etc

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 dataecommerce.accommodations@Tiktok.com

Created: 2024-04-26
Reference: A152409
Country: United States
State: California
City: San Jose
ZIP: 95118