Software Engineer, Network Infrastructure

MetaMenlo Park, CaliforniaOn-siteFull-timeMid level, 2–5 yearsListed 1 hour ago

Apply now

About this role

Meta's Network Infrastructure Engineering team builds and operates the software systems that power one of the largest and most complex networks in the world. In this role, you will design and develop the software that manages, automates, and optimizes Meta's global network infrastructure — spanning data centers, backbone networks, and edge services. You will work at the intersection of distributed systems and network engineering, building tools and platforms that ensure reliability, performance, and scalability for billions of users.

Responsibilities

Design and develop software systems for network infrastructure automation, configuration management, and operational tooling across Meta's global network
Build and maintain distributed services that manage network device state, topology, and telemetry at scale
Develop and improve network monitoring, alerting, and observability platforms to reduce mean time to detection and mitigation during network incidents
Collaborate with network engineers and cross-functional partners to define requirements and translate them into reliable, scalable software solutions
Drive architecture decisions for network automation systems, evaluating trade-offs across reliability, performance, and operational complexity
Design and implement A/B testing and staged rollout frameworks for network configuration changes to reduce risk during deployments
Establish and maintain service level objectives for network infrastructure services, building dashboards and runbooks to support incident response
Identify and address performance bottlenecks in network control plane and data pipeline systems through instrumentation and profiling
Mentor other engineers on the team by sharing domain expertise, reviewing designs, and contributing to engineering standards and best practices
Lead retrospectives on network incidents and drive implementation of follow-up improvements to prevent recurrence

Qualifications

Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience
6+ years of experience in software engineering with a focus on network infrastructure, distributed systems, or network automation
6+ years of experience programming in C, C++, or Go in a production environment
Experience designing and operating large-scale distributed systems or network management platforms
Experience with network protocols and concepts such as BGP, OSPF, ECMP, switching, routing, or traffic engineering
Experience building observability systems including metrics collection, alerting, and dashboards for large-scale infrastructure Experience with software-defined networking (SDN), network operating systems, or network device APIs such as OpenConfig or gNMI
Experience with stream processing or time-series data pipelines for high-volume network telemetry
Experience contributing to or operating on-call rotations for critical network infrastructure services
Experience developing network automation frameworks for configuration management, topology discovery, or change validation at scale