B&A
Meta
Ingeniero/a de Software - Redes de Hosts
Sobre la oportunidad
En Meta, estamos construyendo y operando una de las redes más dinámicas y de ritmo rápido del mundo, impulsando nuestros centros de datos globales y soportando tecnologías avanzadas como IA, IA Generativa, motores de recomendación y Metaverso. Nuestros equipos de infraestructura de red son responsables de desarrollar, implementar y operar este complejo sistema, cubriendo todo el ciclo de vida de la red desde el desarrollo de hardware hasta la operación. Buscamos ingenieros/as de software para unirse a nuestros equipos y ayudar a construir sistemas distribuidos escalables, desarrollar soluciones efectivas para nuestros desafíos y enviarlas a producción. Como parte de nuestros equipos de ingeniería de red, tendrás la oportunidad de trabajar en tecnología de conmutación avanzada, colaborar con ingenieros/as y contribuir al desarrollo de la infraestructura de red a hiperescala de Meta.
Responsabilidades
- Diseñar, desarrollar y validar drivers, firmware y software para dispositivos de red, stacks de transporte y cargas de trabajo de IA
- Depurar problemas complejos a nivel de sistema y liderar ejercicios de ajuste de rendimiento para optimizar el rendimiento del stack de software
- Comprender los componentes de software de múltiples equipos asociados, liderar los esfuerzos de integración e impulsar el desarrollo continuo
- Desarrollar y automatizar suites de pruebas para el framework CI/CD y varios componentes
- Colaborar con equipos asociados para integrar componentes de software, alinear objetivos y participar en rotaciones de guardia (oncall)
- Diseñar, desarrollar e implementar servicios para gestionar switches de red de centros de datos y funciones de reenvío
- Mejorar las bibliotecas de comunicación colectiva y computación paralela de HPC (NCCL, RCCL, OneCCL, MPI)
- Desarrollar infraestructura para mantener el estado del switch y permitir la comunicación entre servicios a escala
Cualificaciones Mínimas
- Grado en Ciencias de la Computación, Ingeniería Informática, campo técnico relevante o experiencia práctica equivalente
- 7+ años de experiencia en desarrollo de software en entornos industriales o doctorado con 4+ años de experiencia
- 3+ años de experiencia relevante con dispositivos y productos de red (routers, switches, adaptadores, balanceadores de carga) y comprensión de los protocolos de enrutamiento de red en entornos industriales
- Dominio de C/C++ y al menos un lenguaje de scripting (Python/Shell Scripting)
- Experiencia en el desarrollo y automatización de suites de pruebas
- Experiencia en colaboración con equipos multifuncionales (por ejemplo, hardware, firmware, pruebas) para definir y entregar soluciones técnicas
Cualificaciones Preferidas
- Experiencia con una de las siguientes: servicios de plataforma (programar, controlar y monitorizar Óptica, Capa Física (PHY), FPGAs, sensores, control de ventiladores, energía, etc.), Paquete de Soporte de Placa (BSP), Sistemas Operativos, Kernel, Bootloader, Gestión de Energía, Sistema Operativo en Tiempo Real (RTOS), Linux
- Conocimiento práctico de la pila de transporte, en particular Remote Direct Memory Access (RDMA) y/o RDMA over Converged Ethernet versión 2 (RoCEv2)
- Plataformas de computación paralela como CUDA, RoCM y OpenCL
- Kernel de Linux, especialmente drivers y stack de red
- Qemu, entorno de emulación FPGA es una ventaja
- Programación de sistemas, TCP/IP, HTTP/HTTPS, SPDY, DNS y balanceadores de carga
$183,997/año a $257,000/año + bonus + acciones + beneficios
