Software Engineer, Systems Machine Learning

Facebook Inc.
Menlo Park, CA, United States
5 days ago
Apply on www.jobmonkeyjobs.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours

Tech stack

Artificial Intelligence Computing Platforms C++ (Programming Language) Command-Line Interface Profiling Code Review Nvidia CUDA Software Debugging Software Design Documents Linux Programming Tools Distributed Systems
+17 more
Hardware Interface Design Python (Programming Language) Log Analysis Machine Learning Open Source Technology Tensorflow Memory Leaks Software Deployment Software Engineering System Software Diagnostic Tools Pytorch Prompt Engineering Perf (Linux) Data Analytics Build Tools MLIR (Multi-Level Intermediate Representation)

Job description

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, build, and maintain developer tools that help engineers debug, profile, measure, and monitor 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., * Design and develop software tools across the MTIA tooling ecosystem, including debugging, profiling, performance analysis, memory analysis, and monitoring infrastructure

  • Own features and components end-to-end, from design through implementation, testing, and deployment
  • Build and improve tooling infrastructure that enables engineers to efficiently develop, test, and optimize AI workloads on MTIA hardware
  • Collaborate with the MTIA compiler, runtime, kernel, and hardware teams to integrate tooling hooks and support new platform capabilities
  • Proactively identify gaps in the tooling ecosystem and propose solutions to improve developer productivity
  • Contribute to technical design discussions, write design documents for medium-scope projects, and participate in code reviews
  • Partner with internal product teams across advertising, recommendations, and generative AI to understand developer pain points and improve tool usability

Requirements

  • Proficiency in C++ and Python, including systems-level programming concepts
  • Experience working across multiple layers of a system stack (e.g., application, runtime, OS/driver, or hardware interfaces)
  • Track record of independently delivering software projects from design through production deployment
  • Experience debugging and resolving issues in complex software systems (e.g., using log analysis, stack traces, or system-level diagnostic tools), * Experience building developer tools such as debuggers, profilers, build systems, CLI tools, monitoring dashboards, or diagnostic utilities
  • Exposure to accelerator ecosystems (GPU/CUDA, TPU, custom ASICs) or heterogeneous computing environments
  • Familiarity with Linux debugging and profiling tools (gdb, perf, strace, eBPF, valgrind) or similar diagnostic infrastructure
  • Demonstrated ability to integrate AI tools to optimize/redesign workflows and drive measurable impact (e.g., efficiency gains, quality improvements)
  • Experience adhering to and implementing responsible, ethical AI practices (e.g., risk assessment, bias mitigation, quality and accuracy reviews)
  • Demonstrated ongoing AI skill development (e.g., prompt/context engineering, agent orchestration) and staying current with emerging AI technologies
  • Contributions to open-source projects demonstrating tooling or system software interest
  • Experience in using data-driven methods to evaluate tooling effectiveness and to prioritize improvements
  • Experience with distributed systems debugging, profiling, or monitoring at scale
  • Familiarity with ML frameworks (PyTorch, TensorFlow) or compiler infrastructure (LLVM, MLIR, TVM)

About the company

Meta builds technologies that help people connect, find communities, and grow businesses. When Facebook launched in 2004, it changed the way people connect. Apps like Messenger, Instagram and WhatsApp further empowered billions around the world. Now, Meta is moving beyond 2D screens toward immersive experiences like augmented and virtual reality to help build the next evolution in social technology. People who choose to build their careers by building with us at Meta help shape a future that will take us beyond what digital connection makes possible today-beyond the constraints of screens, the limits of distance, and even the rules of physics.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.jobmonkeyjobs.com
Prepare application

Good distractions

Loading talks and stories from around this role…