Software Engineer - Model Infrastructure, TikTok Feeds

TikTok
San Jose, California

About the job

We are seeking talented Software Engineers to join our Model Infrastructure team. You will focus on the architecture and engineering challenges associated with large-scale recommendation models – from online inference to offline training. Your work will directly contribute to supporting increasingly complex models, solving bottlenecks in computation and storage, and enabling breakthrough innovations in recommendation algorithms. As large foundation models (in CV/NLP/multimodal and beyond) continue to advance, the recommendation domain is evolving towards leveraging powerful compute to gain deeper understanding of user intent and preferences. In this role, you'll help co-design system architecture and algorithm infrastructure to balance compute cost with recommendation effectiveness at scale.

Responsibilities

Build and optimize infrastructure for online inference and offline training of recommendation models.

Solve challenges posed by the combination of high model complexity, massive data, and large-scale deployments.

Work closely with algorithm researchers to co-design infrastructure aligned with cutting-edge machine learning frameworks and hardware accelerators.

Continuously improve model architecture, efficiency, and scalability to enable better user experiences.

Abstract and build reusable infrastructure components and tools that benefit the broader recommendation stack.

Qualifications

Minimum

Bachelor's degree or above, majoring in Computer Science, or related fields.

Understanding of GPU architecture and the software stack (CUDA, CUTLASS, Triton Lang), with experience in GPU performance analysis.

Experience with at least one machine learning framework (e.g., TensorFlow, PyTorch, or in-house alternatives).

Initiative and self-drive; eager to take on complex challenges.

Proven ability to work independently and collaboratively in a fast-paced team environment.

Preferred

Familiarity with implementation details of deep learning networks and low-level operators.

Experience with large-scale distributed model training.

Knowledge of DNN compilers such as MLIR, XLA, or TVM.

Ability to analyze and optimize training/inference algorithms using mathematical tools.