Software Engineer, Systems Machine Learning
Meta PlatformsJob Title
Software Engineer, Systems Machine Learning
Role Summary
Join the MTIA (Meta Training & Inference Accelerator) Software Tooling team to design, build, and maintain developer tools for Meta's in-house AI accelerator ASICs. The team delivers debugging, profiling, memory analysis, and monitoring capabilities across compiler, runtime, kernel, and hardware layers.
You will develop tooling that helps engineers debug, profile, measure, and monitor AI workloads on MTIA hardware at scale and collaborate with cross-functional partners to integrate tooling into the full stack.
Experience Level
Entry-level - guidance: 2+ years of professional software engineering experience focused on systems, developer tooling, or infrastructure.
Responsibilities
Deliver and maintain developer tooling across the MTIA ecosystem; collaborate with compiler, runtime, kernel, and hardware teams to integrate tooling and support platform capabilities.
- Design and implement debugging, profiling, performance and memory analysis, and monitoring tools.
- Own features end-to-end: design, implementation, testing, and deployment.
- Build and improve tooling infrastructure to enable efficient development and optimization of AI workloads on MTIA hardware.
- Integrate tooling hooks with compiler, runtime, kernel, and hardware components.
- Identify gaps in the tooling ecosystem and propose practical solutions to improve developer productivity.
- Write design documents for medium-scope projects and participate in code reviews.
- Partner with internal product teams to understand developer pain points and improve usability.
Requirements
Must-have technical skills and experience required for day-one impact; preferred items listed separately.
- 2+ years of professional software engineering experience working on systems software, developer tooling, or infrastructure.
- Proficiency in C++ and Python; experience with systems-level programming concepts.
- Experience working across multiple layers of a system stack (application, runtime, OS/driver, or hardware interfaces).
- Proven track record of delivering software projects from design through production deployment.
- Experience debugging complex software systems using logs, stack traces, or system-level diagnostic tools.
Nice to have:
- Exposure to accelerator ecosystems (GPU/CUDA, TPU, custom ASICs) or heterogeneous computing.
- Experience building developer tools (debuggers, profilers, CLIs, monitoring dashboards, diagnostic utilities).
- Familiarity with Linux debugging and profiling tools (gdb, perf, strace, eBPF, valgrind) and distributed systems debugging/monitoring at scale.
- Familiarity with ML frameworks (PyTorch, TensorFlow), compiler infrastructure (LLVM, MLIR, TVM), and open-source contributions related to tooling or systems.
- Demonstrated ability to use data-driven methods to evaluate tooling effectiveness and prioritize improvements.
Education Requirements
Bachelor's degree in Computer Science, Computer Engineering, or a relevant technical field is expected, or equivalent practical experience. The posting indicates candidates may be in the process of obtaining a Bachelor's degree but the degree must be completed prior to joining Meta.
About the Company
Company: Meta Platforms
Headquarters: Menlo Park, California, United States
American technology company that develops social networking products (Facebook, Instagram, WhatsApp) and invests in virtual/augmented reality hardware and software through Reality Labs, focusing on connectivity, advertising, and immersive computing experiences.
