Ghost Robotics

C++ Software Engineer (Senior, Staff, or Lead)

PythonDockerC++
Traducción automática. Consulta el original.

Descripción

Somos una empresa de robótica que construye sistemas fiables y de alto rendimiento que operan en el mundo real. Nuestro trabajo abarca software de percepción, control y sistemas, y valoramos el diseño limpio, la mantenibilidad y el rigor de ingeniería tanto como el rendimiento bruto.

Estamos contratando un Ingeniero de Software C++ con sólidas habilidades modernas en C++ y buenas prácticas generales de ingeniería de software. Trabajarás en software central de robótica y también contribuirás a las herramientas, sistemas de compilación e infraestructura CI que mantienen nuestro desarrollo rápido y fiable. Este puesto es adecuado para alguien que disfruta tanto de la arquitectura de sistemas C++ limpios como de la gestión del entorno de ingeniería que los rodea.

Cómo funciona la asignación de nivel

Este es un único puesto, abierto en los niveles Senior, Staff o Lead. Las responsabilidades a continuación reflejan el núcleo del puesto en todos los niveles. No necesitas decidir qué nivel se ajusta a ti antes de postularte. El candidato seleccionado será ubicado en el nivel acorde con las habilidades, el alcance y la experiencia que demuestre durante el proceso de entrevista, y la oferta se alineará con ese nivel. Senior y Staff son puestos de contribuidor individual. Lead conlleva el mismo alcance técnico más responsabilidades de liderazgo de personas, para candidatos que las deseen.

Qué harás (todos los niveles)

  1. Diseñar, implementar y mantener código C++ de alta calidad para sistemas de robótica
  1. Aplicar patrones de diseño y mejores prácticas modernos de C++ (17/20)
  1. Contribuir a la arquitectura del sistema con un enfoque en el rendimiento, la seguridad y la mantenibilidad
  1. Configurar y mantener entornos de desarrollo basados en Linux
  1. Configurar y mantener pipelines de CI/CD de GitLab para compilación, pruebas y despliegue
  1. Mejorar sistemas de compilación (por ejemplo, CMake) y gestión de dependencias
  1. Escribir pruebas unitarias y de integración, y dar soporte a flujos de trabajo de pruebas automatizadas
  1. Colaborar con ingenieros de robótica, control y hardware
  1. Participar en revisiones de código y ayudar a elevar la calidad general del código

Ingeniero de Software Senior C++

  1. Normalmente se alcanza con 5+ años de experiencia relevante, o 3+ años después de un doctorado
  1. Ser propietario de un área técnica definida y entregar de forma independiente de principio a fin
  1. Ser mentor de ingenieros con menos experiencia
  1. Historial de envío de C++ en producción en sistemas reales

Ingeniero de Software Staff C++

  1. Normalmente se alcanza con 8+ años de experiencia relevante
  1. Impulsar la dirección técnica y la arquitectura en el área del equipo
  1. Establecer estándares de ingeniería y multiplicar la producción de otros
  1. Influencia demostrada más allá de sus propias entregas, a través de equipos o de una base de código completa

Ingeniero de Software Lead C++

  1. Normalmente se alcanza con 10+ años de experiencia relevante, incluida la experiencia guiando a ingenieros
  1. Alcance técnico de nivel Staff más responsabilidades de liderazgo de personas: informes directos, contratación, rendimiento y planificación del equipo
  1. Capacidad demostrada para desarrollar ingenieros y dirigir un equipo sano y productivo

Requisitos

Cualificaciones principales (todos los niveles)

  1. Sólida competencia en C++ moderno (C++17 o superior), con experiencia real en el envío de sistemas en producción. Valoramos lo que has construido y enviado por encima de dónde proviene tu título. Un título avanzado en Informática, Ingeniería Eléctrica/Informática, Robótica o un campo relacionado es un camino. La experiencia industrial equivalente es otro, y es igual de bienvenido.
  1. Dominio práctico de conceptos modernos de C++: RAII, punteros inteligentes, semántica de movimiento, plantillas y programación genérica, primitivas de concurrencia y seguridad de hilos, y diseño limpio de API y bibliotecas
  1. Sólida comprensión de los principios y patrones de diseño de software
  1. Experiencia trabajando en entornos de desarrollo basados en Linux
  1. Experiencia práctica con Git y flujos de trabajo colaborativos
  1. Experiencia en la configuración o mantenimiento de pipelines de CI (preferiblemente GitLab CI)
  1. Familiaridad con sistemas de compilación como CMake
  1. Sólidas habilidades de depuración y atención al detalle

Cualificaciones preferidas

  1. Experiencia en robótica, sistemas embebidos o software en tiempo real
  1. Familiaridad con ROS / ROS 2
  1. Experiencia con compilación cruzada o entornos Linux embebidos
  1. Conocimiento de perfilado y optimización de rendimiento
  1. Experiencia con Docker o entornos de desarrollo contenerizados
  1. Exposición a Python u otros lenguajes de scripting para herramientas

Qué ofrecemos

  • Trabajar en sistemas de robótica del mundo real con impacto tangible
  • Una sólida cultura de ingeniería que valora el código limpio y el buen diseño
  • La oportunidad de influir en la arquitectura, las herramientas y los flujos de trabajo de desarrollo
  • Arreglos de trabajo flexibles cuando sea posible
  • El salario base inicial previsto para este puesto es de 135.000 a 185.000 dólares anuales, asignado por nivel como se describe anteriormente

Compensación

Salario base competitivo, beneficios completos y un paquete de incentivos de capital altamente motivador. Política de tiempo libre flexible. Nos centramos en el resultado, el impacto y la capacidad de trabajar junto a un equipo interdisciplinario estelar.

Ubicación

Filadelfia, PA. Este es un puesto a tiempo completo y presencial. No se considerarán candidatos remotos en este momento.

Viajes

No se requiere ningún viaje, aunque existen oportunidades nacionales e internacionales para ingenieros que deseen exposición de campo.

Información adicional

Se requieren verificaciones de antecedentes estándar y claras antes de la contratación, después de la contratación y en cualquier momento durante el empleo. Se requiere residencia permanente en EE. UU.

Más oportunidades con un solo perfil

¿Quieres optar a más puestos sin repetir todo el proceso? Crea tu perfil para que te encuentren las empresas que usan Nort.

Crear mi perfil

Tu próximo empleoya está buscándote.

Nort

Plataforma de reclutamiento inverso para programadores