SanMar- External
Castelion Corporation
Ingeniero de Computación en la Nube
Sobre la oportunidad
Por qué Castelion, por qué ahora
Castelion avanza a un ritmo increíble para desarrollar y entregar sistemas de defensa avanzados en un momento en el que la ejecución es más importante que nunca. Creemos que el enfoque, la responsabilidad y la excelencia son ventajas decisivas, y estamos creando un equipo de clase mundial para convertir ideas audaces en capacidades reales.
Esta es una oportunidad única para unirse en una etapa temprana, donde tendrá una responsabilidad significativa, colaborará con compañeros de equipo excepcionales y tendrá un impacto directo y medible en nuestra misión y en el futuro de la empresa, independientemente de su función.
Ingeniero de Computación en la Nube
Castelion busca un Ingeniero de Computación en la Nube para construir y liderar la plataforma de computación en la nube escalable del equipo Seeker para el procesamiento de datos, simulación, calibración y machine learning. Trasladará los flujos de trabajo de computación intensiva desde portátiles individuales y scripts aislados a una plataforma compartida, automatizada y fiable que dé soporte a múltiples equipos de ingeniería.
Trabajando en el procesamiento de datos, entrenamiento de ML e infraestructura de pruebas, construirá sistemas de computación distribuidos, optimizará cargas de trabajo de Python e integrará la simulación y las pruebas de regresión en tuberías de CI/CD. Este es un puesto práctico con un impacto significativo en la productividad de la ingeniería, la velocidad de procesamiento de datos y la escalabilidad del desarrollo de buscadores de Castelion.
Responsabilidades
- Construir una plataforma de computación compartida: Desarrollar y operar una infraestructura de computación distribuida que soporte el procesamiento por lotes, trabajos personalizados, simulación, calibración, preprocesamiento y entrenamiento de ML.
- Automatizar el procesamiento de datos: Crear flujos de trabajo basados en eventos que procesen automáticamente los datos recién ingeridos, incluidos los datos de pruebas de vuelo y de calibración en cámara.
- Escalar cargas de trabajo de computación intensiva: Habilitar el entrenamiento escalable de ML, el preprocesamiento Foxglove RDL, la preparación de datos, la reproducción y otros trabajos enviados por los usuarios.
- Integrar la computación con CI/CD: Permitir que las simulaciones y las pruebas de regresión se ejecuten automáticamente en tuberías de CI/CD, ampliando la cobertura de pruebas más allá de las limitaciones estándar de los ejecutores.
- Optimizar el rendimiento y los costes: Perfilar y mejorar las cargas de trabajo de Python, los flujos de datos, el uso de memoria, la concurrencia y la utilización de recursos, no solo la infraestructura subyacente.
- Mejorar la experiencia del desarrollador: Proporcionar interfaces sencillas, APIs o SDKs para que los ingenieros puedan enviar, supervisar, depurar y volver a ejecutar trabajos sin gestionar la infraestructura manualmente.
- Garantizar la fiabilidad y la observabilidad: Implementar registros, métricas, alertas, trazabilidad de trabajos y supervisión de costes para que los fallos sean fáciles de diagnosticar y solucionar.
- Habilitar flujos de trabajo reproducibles: Realizar un seguimiento de las versiones de código, entradas, configuraciones y salidas para que los trabajos de computación puedan reproducirse y auditarse de forma fiable.
- Soportar el movimiento de datos a gran escala: Diseñar enfoques eficientes para el almacenamiento, la transferencia de datos, el almacenamiento en caché, la partición y el preprocesamiento.
- Impulsar la adopción en todos los equipos: Trabajar directamente con los ingenieros para comprender sus flujos de trabajo y establecer patrones de computación coherentes en redes clasificadas y no clasificadas.
Cualificaciones básicas
- Experiencia en la construcción y operación de plataformas de computación distribuidas utilizadas por múltiples equipos de ingeniería.
- Sólidas habilidades en Python, incluyendo perfilado, concurrencia, gestión de memoria y optimización del rendimiento.
- Experiencia en producción con Ray y Kubernetes.
- Experiencia en el diseño de sistemas de procesamiento por lotes, basados en eventos y trabajos enviados por usuarios.
- Experiencia con servicios de computación, almacenamiento, redes, identidad y supervisión de Azure.
- Capacidad demostrada para optimizar el código de la aplicación y las tuberías de datos en cuanto a rendimiento, fiabilidad y coste.
- Experiencia en la implementación de observabilidad, recuperación automatizada de trabajos y flujos de trabajo de procesamiento reproducibles.
- Capacidad para construir interfaces de desarrollador sencillas y trabajar directamente con los usuarios para automatizar flujos de trabajo complejos.
Requisitos de elegibilidad adicionales
Este puesto puede requerir acceso a información clasificada o sitios, sistemas o información restringidos del Gobierno de los EE. UU., según lo determine la Empresa y/o los requisitos aplicables del Gobierno de los EE. UU. Si el puesto está designado de esta manera, su empleo en el cargo puede estar supeditado a su capacidad para obtener y mantener la autorización de seguridad requerida por el Gobierno de los EE. UU. u otra autorización gubernamental, y para satisfacer cualquier requisito de ciudadanía u otra elegibilidad impuesto por la ley, regulación, orden ejecutiva o requisitos de contrato gubernamental aplicables. Se le notificará si estos requisitos se aplican y cuándo.
Requisitos EAR/ITAR
Este puesto requiere acceso a información sujeta a control de exportaciones y, como tal, el empleo (o la contratación de un contratista) está supeditado a la capacidad del candidato para acceder a toda la información aplicable sujeta a control de exportaciones sin que se requiera una licencia de exportación adicional por parte de la Oficina de Industria y Seguridad y/o la Dirección de Controles Comerciales de Defensa.
Habilidades y experiencia preferidas
- Sólida experiencia en PyTorch, incluyendo entrenamiento distribuido, carga de datos, puntos de control y utilización de GPU.
- Experiencia en el escalado del entrenamiento de ML a través de grandes conjuntos de datos y recursos de computación distribuidos.
- Experiencia en la integración de cargas de trabajo de simulación y regresión en tuberías de CI/CD.
- Familiaridad con conjuntos de datos de ingeniería a gran escala, datos de pruebas de vuelo, calibración o flujos de trabajo de computación científica.
- Experiencia en la construcción de plataformas de computación que soporten entornos clasificados y no clasificados.
- Experiencia en la mejora del rendimiento de procesamiento y el tiempo de respuesta mediante la optimización de la carga de trabajo y el escalado de la infraestructura.
Castelion ofrece un generoso paquete de beneficios. Por favor, consulte la parte inferior de nuestra página de Carreras para obtener más detalles.
Otras funciones
Tenga en cuenta que esta descripción del puesto no está diseñada para cubrir o contener una lista exhaustiva de actividades, funciones o responsabilidades que se requieren del empleado para este puesto. Las funciones, responsabilidades y actividades pueden cambiar en cualquier momento con o sin previo aviso.
Declaración de Acción Afirmativa/EEO
Castelion es un empleador que ofrece igualdad de oportunidades. Nos comprometemos a proporcionar igualdad de oportunidades de empleo a todos los solicitantes y empleados sin distinción de raza, color, religión, sexo, orientación sexual, identidad de género, origen nacional, edad, discapacidad, información genética, estatus de veterano protegido o cualquier otra característica protegida por la ley federal, estatal o local aplicable.
Castelion se compromete a proporcionar adaptaciones razonables a personas cualificadas con discapacidades durante todo el proceso de solicitud y contratación. Si necesita una adaptación razonable para completar una solicitud, participar en el proceso de entrevista o participar de otro modo en el proceso de contratación, póngase en contacto con [email protected]. Las solicitudes de adaptación se considerarán de forma individual y se gestionarán de acuerdo con la ley aplicable.
Castelion se compromete a fomentar un lugar de trabajo donde las decisiones de empleo se basen en las cualificaciones, las necesidades empresariales y la capacidad para realizar las funciones esenciales del puesto, con o sin adaptación razonable.
