Software Engineer, Systems ML
- Menlo Park, CA, United States
Applications open in a new tab.
Job details
- Experience
- 4+ years of experience in systems software engineering, performance engineering, developer tooling, or a closely related field
- Posting language
- English
- Posted
Original job description
Summary:
Meta is seeking a Software Engineer to join the MTIA (Meta Training & Inference Accelerator) Software Tooling team, which develops and maintains the tooling ecosystem for Meta's in-house AI accelerator ASICs. The Tooling team provides debugging, profiling, memory analysis, and monitoring capabilities for the whole MTIA Ecosystem, redefining ML accelerator tooling by leveraging Meta's full-stack ownership from silicon specs to fleet observability.In this role, you will design and build developer tools across the MTIA tooling ecosystem, with a primary focus on debugging, sanitizer technology, and fault isolation for AI workloads running on MTIA hardware at scale. You will work at the intersection of compilers, runtime, hardware, and ML frameworks, collaborating with cross-functional partners to deliver a high-quality developer experience for Meta's custom AI accelerators.
Required Skills:
Software Engineer, Systems ML Responsibilities:
- Lead the design and development of MTIA's profiling and debugging tooling, including performance profiling, live debugging, and core dump for accelerator workloads
- Build tooling capabilities spanning performance profiling, kernel-level diagnostics, and multi-rank fault isolation
- Contribute broadly to the MTIA SW tooling infrastructure - profiling, performance debugging, memory analysis, monitoring, and reliability analysis for training and inference workloads
- Own significant components end-to-end, from technical design through implementation, production rollout, and long-term maintenance
- Collaborate closely with the MTIA compiler, runtime, kernel, and hardware teams to instrument the software stack with the hooks, sanitizers, and debuggers that are required
- Drive AI-native tooling approaches, leveraging automation and LLM-guided diagnostics to reduce time-to-root-cause
- Partner with internal product teams across advertising, recommendations, and generative AI to understand developer pain points and prioritize tooling investments
- Communicate architectural decisions through design documents and cross-team reviews
- share debugging methodology and best practices with engineers across the MTIA stack
Minimum Qualifications:
Minimum Qualifications:
- Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience
- Bachelor's degree in Computer Science, Computer Engineering, a relevant technical field, or equivalent practical experience
- 4+ years of experience in systems software engineering, performance engineering, developer tooling, or a closely related field
- Experience building debugging, sanitiser, profiling, or diagnostic tools for complex software/hardware systems
- Proficiency in C++ and Python, including low-level systems programming and scripting for tool automation
- Experience working across multiple layers of a system stack (compiler, runtime, OS/driver, hardware)
- Track record of leading the technical design and delivery of tooling or infrastructure projects through to production deployment
- Experience debugging issues across application, runtime, and hardware boundaries, with the ability to trace issues across application, runtime, and hardware boundaries
Preferred Qualifications:
Preferred Qualifications:
- Demonstrated ongoing AI skill development (e.g., prompt/context engineering, agent orchestration) and staying current with emerging AI technologies
- Experience adhering to and implementing responsible, ethical AI practices (e.g., risk assessment, bias mitigation, quality and accuracy reviews)
- Experience with accelerator ecosystems (GPU/CUDA, TPU, custom ASICs), including memory analysis, performance profiling, and runtime debugging using their toolchains (cuda-gdb, nsight-compute, nsight-systems)
- Demonstrated ability to integrate AI tools to optimize/redesign workflows and drive measurable impact (e.g., efficiency gains, quality improvements)
- Experience working at the device-software boundary - accelerator runtime/driver internals, DMA and memory-mapped device behavior, on-device fault handling or firmware-assisted error reporting
- Experience with Linux debugging and profiling infrastructure (gdb, perf, eBPF, ftrace, coredump analysis, hardware performance counters) and familiarity with binary formats and debugging metadata (ELF/DWARF)
- Experience with compiler-based instrumentation and runtime shadow-memory techniques underlying sanitizers (LLVM instrumentation passes, interceptors, allocator red zones)
Public Compensation:
$154,003/year to $217,000/year + bonus + equity + benefits
Industry: Internet
Equal Opportunity:
Meta is proud to be an Equal Employment Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, sex (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender, gender identity, gender expression, transgender status, sexual stereotypes, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. Meta participates in the E-Verify program in certain locations, as required by law. Please note that Meta may leverage artificial intelligence and machine learning technologies in connection with applications for employment.
Meta is committed to providing reasonable accommodations for candidates with disabilities in our recruiting process. If you need any assistance or accommodations due to a disability, please let us know at accommodations-ext@meta.com.
More about this job
Skills
- ML
- Debugging
- Debuggers
- Computer science
- Computer engineering
- C++
- Python
- Hazard assessment
- Firmware
- Reporting
- Linux