Senior/Staff Platform Engineer
Tipo: Remoto
Cobertura: Horario del Pacífico (8:00 AM – 5:00 PM PST y de guardia cada 4-5 semanas)
Descripción del trabajo
Estamos buscando un Senior/Staff Platform Engineer para construir, operar y evolucionar infraestructuras de producción a gran escala. Este es un rol práctico de ingeniería de plataformas y confiabilidad para alguien que tenga una profunda experiencia operando Kubernetes e infraestructura en la nube, solucionando problemas complejos de sistemas de producción y construyendo la automatización y las herramientas que mantienen esos sistemas confiables. El trabajo abarca Kubernetes, Linux, infraestructura en la nube, redes, observabilidad, CI/CD, confiabilidad y operaciones de producción. Escribirás código de producción y automatización en Go, Python o Java, pero este no es principalmente un rol de desarrollo de software. Buscamos un ingeniero que entienda los sistemas subyacentes a las aplicaciones y pueda diagnosticar y resolver problemas de infraestructura de manera independiente a través de múltiples capas. Este es un rol altamente autónomo. Trabajarás directamente con partes interesadas técnicas, serás responsable de iniciativas de infraestructura ambiguas desde el diseño hasta la producción y se confiará en ti para tomar decisiones técnicas y abordar problemas críticos sin requerir dirección constante.
Responsabilidades clave
- Ingeniería de plataformas y Kubernetes:
- Diseñar, construir, operar y mejorar plataformas de Kubernetes en producción.
- Ser responsable de preocupaciones a nivel de plataforma, incluyendo arquitectura de clúster, redes, aislamiento de cargas de trabajo, gestión de recursos, seguridad, actualizaciones, escalado y confiabilidad.
- Solucionar problemas de Kubernetes más allá de la capa de aplicación, incluyendo redes/CNI, programación, comportamiento de nodos, restricciones de recursos, controladores y fallas a nivel de clúster.
- Operar y mejorar infraestructuras a gran escala y altamente disponibles en entornos de nube, híbridos, virtualizados y/o bare-metal.
- Diagnosticar problemas complejos que abarcan Kubernetes, contenedores, Linux, redes e infraestructura subyacente.
- Optimizar la infraestructura de la plataforma para confiabilidad, rendimiento, escalabilidad y eficiencia operativa.
- Desarrollo de software y automatización:
- Escribir, mantener y mejorar herramientas de producción y automatización utilizando Go, Python o Java.
- Construir software y automatización que mejore las operaciones de la plataforma, la confiabilidad, el despliegue, la solución de problemas y la experiencia del desarrollador.
- Leer, depurar y contribuir a bases de código de producción existentes.
- Desarrollar servicios internos, APIs, integraciones y herramientas operativas según sea necesario.
- Automatizar procesos operativos repetitivos y reducir la intervención manual en toda la plataforma.
- Aplicar buenas prácticas de ingeniería de software, incluyendo pruebas, revisión de código, mantenibilidad y documentación.
- Confiabilidad y operaciones de producción:
- Ser responsable de la confiabilidad y la salud operativa de la infraestructura crítica de producción.
- Liderar o contribuir significativamente a la respuesta a incidentes para problemas complejos de plataformas e infraestructura.
- Investigar causas raíz e implementar remediaciones duraderas en lugar de soluciones temporales.
- Definir y mejorar SLOs, SLIs, alertas y procesos operativos.
- Solucionar problemas de sistemas utilizando registros, métricas, trazas, herramientas de perfilado y diagnósticos a nivel de sistema.
- Impulsar mejoras en disponibilidad, rendimiento, capacidad, resiliencia y preparación operativa.
- Contribuir a la planificación, prueba y mejora continua de la recuperación ante desastres.
- Infraestructura como código y entrega:
- Construir y mantener infraestructura como código utilizando Terraform y tecnologías de automatización relacionadas.
- Crear patrones de infraestructura reutilizables y mejorar la automatización a medida que la plataforma evoluciona.
- Construir y mejorar flujos de trabajo de CI/CD y despliegue que soporten entornos de ingeniería a gran escala.
- Equilibrar la velocidad de entrega con confiabilidad, seguridad, escalabilidad y requisitos operativos.
- Trabajar en la provisión de infraestructura, gestión de configuración, automatización de despliegues y operaciones de producción.
- Participar en la planificación y ejecución de migraciones de nube o infraestructura de producción, incluyendo análisis de dependencias, redes, corte, retroceso y validación de producción.
- Observabilidad:
- Construir y mantener monitoreo de producción, métricas, paneles, alertas, registros y trazado distribuido.
- Mejorar la observabilidad para que los ingenieros puedan identificar y diagnosticar fallas rápidamente.
- Utilizar telemetría de producción para identificar problemas de confiabilidad, capacidad y rendimiento antes de que se conviertan en incidentes mayores.
- Mejorar continuamente la detección de incidentes y reducir el tiempo de diagnóstico y recuperación.
- Colaboración y liderazgo técnico:
- Trabajar directamente con equipos de ingeniería internos y clientes para entender requisitos, investigar problemas y impulsar soluciones técnicas.
- Comunicar arquitectura, decisiones técnicas, riesgos, compensaciones y progreso claramente a las partes interesadas técnicas.
- Ser responsable de iniciativas de infraestructura complejas desde la definición inicial del problema hasta el diseño, implementación y operación en producción.
- Contribuir a discusiones de arquitectura, RFCs, revisiones de diseño y dirección técnica.
- Mentorear a otros ingenieros y ayudar a mejorar las prácticas de ingeniería y operativas en todo el equipo.
- Operar de manera independiente en situaciones ambiguas y asumir la responsabilidad cuando no haya dirección técnica o de gestión inmediata disponible.
Calificaciones
experiencia
- Más de 10 años de experiencia profesional en Ingeniería de Plataformas, Ingeniería de Confiabilidad de Sitios, Ingeniería de Infraestructura, DevOps o campos relacionados; se prefieren más de 10 años para candidatos a nivel Staff.
- Experiencia práctica significativa operando infraestructuras de producción complejas y sistemas distribuidos.
- Experiencia demostrada construyendo y operando plataformas de Kubernetes en producción, no solo desplegando aplicaciones en clústeres existentes.
- Experiencia en programación de producción con Go, Python o Java.
- Fuerte experiencia en confiabilidad de producción, respuesta a incidentes, solución de problemas y propiedad operativa.
- Experiencia en poseer de manera independiente iniciativas técnicas complejas desde un punto de partida ambiguo hasta la producción.
- Experiencia trabajando directamente con partes interesadas técnicas o clientes y comunicando temas técnicos complejos de manera efectiva.
- Título en Ciencias de la Computación, Ingeniería o un campo relacionado, o experiencia práctica equivalente.
-
Habilidades técnicas
- Profundo entendimiento de la infraestructura de Kubernetes en producción, incluyendo arquitectura de clúster, redes/CNI, NetworkPolicy, programación, gestión de recursos, nodos, seguridad/RBAC y comportamiento del clúster.
- Fuertes fundamentos en Linux y solución de problemas de sistemas de producción.
- Fuerte comprensión de conceptos de redes, incluyendo DNS, enrutamiento, balanceo de carga, conectividad y redes en la nube/Kubernetes.
- Experiencia en producción con al menos una plataforma de nube
importante
AWS, GCP o Alicloud.
- Infraestructura como código a gran escala utilizando Terraform o herramientas equivalentes.
- Experiencia en gestión de configuración y automatización con tecnologías como Ansible, Puppet o similares.
- Fuertes habilidades de depuración de producción y análisis de causas raíz a través de infraestructura y sistemas distribuidos.
- Experiencia en observabilidad utilizando métricas, registros, trazas, paneles y plataformas de alertas como Prometheus, Grafana, OpenTelemetry, Datadog o equivalentes.
- Experiencia con infraestructura de CI/CD y prácticas modernas de entrega de software.
- Docker y herramientas de contenedores como parte del ciclo de vida de producción.
- Experiencia en codificación y automatización de producción en Go, Python o Java.
- Comprensión de alta disponibilidad, planificación de capacidad, recuperación ante desastres y resiliencia de producción.
- Preferido:
- Experiencia en planificación y ejecución de migraciones de nube o infraestructura de producción, incluyendo estrategias de corte y retroceso.
- Experiencia operando entornos de Kubernetes a gran escala o multi-clúster.
- Experiencia con infraestructura híbrida, en las instalaciones, virtualizada o bare-metal.
- Experiencia construyendo o modificando controladores u operadores de Kubernetes.
- Experiencia avanzada en redes de Kubernetes, CNI, NetworkPolicy, mTLS o identidad de carga de trabajo.
- Experiencia en infraestructura multi-nube.
- Experiencia diseñando y probando estrategias de recuperación ante desastres.
- Experiencia con infraestructura de CI/CD a gran escala o de desarrollador.
- Experiencia en planificación de capacidad e ingeniería de rendimiento.
- Experiencia construyendo herramientas internas de plataforma o mejorando la experiencia del desarrollador.
- Experiencia con seguridad, endurecimiento de infraestructura, IAM o requisitos de cumplimiento.
- Experiencia previa en liderazgo técnico, mentoría o responsabilidades de ingeniería a nivel Staff/Principal.
- Experiencia trabajando directamente con clientes externos o partes interesadas en un entorno de consultoría o entrega de servicios.
Habilidades blandas
- Comunicación técnica escrita y verbal excepcional.
- Fuerte capacidad analítica, de depuración y resolución de problemas.
- Alto grado de propiedad y capacidad para operar de manera independiente.
- Cómodo tomando decisiones técnicas y avanzando en el trabajo en entornos ambiguos.
- Capaz de comunicarse de manera efectiva con clientes, ingenieros y liderazgo técnico.
- Fuerte juicio técnico y capacidad para explicar compensaciones en lugar de simplemente implementar soluciones predefinidas.
- Capaz de liderar técnicamente e influir en otros sin requerir autoridad formal de gestión de personas.
- Cómodo trabajando dentro de un equipo distribuido y altamente técnico.
Por favor, ten en cuenta: Este es un rol práctico de ingeniería de plataformas y confiabilidad. No estamos buscando candidatos cuya experiencia se haya limitado a desplegar aplicaciones en Kubernetes, consumir servicios en la nube gestionados o aprovisionar infraestructura sin poseer su operación en producción. El candidato ideal ha construido, operado, solucionado problemas y mejorado infraestructura de producción personalmente y puede explicar claramente lo que poseía, cómo funcionaban los sistemas subyacentes y cómo abordó fallas y compensaciones arquitectónicas. Este rol requiere una autonomía significativa y una fuerte comunicación técnica. Los ingenieros deben sentirse cómodos trabajando directamente con partes interesadas y abordando problemas técnicos complejos sin supervisión continua. Se requiere experiencia en codificación de producción, pero puede ser en Go, Python o Java. Go no es un requisito. La experiencia en migraciones a la nube es muy preferida, pero no es un requisito excluyente. Este rol está actualmente abierto a candidatos con sede en Brasil, México o Canadá.