Ingeniero de Implementación y Lanzamiento
Salario inicial (anual): CAD $60.000
Montreal, Canadá Remoto · Tiempo completo
La compañía contratante es un proveedor de software líder en la industria con tecnología en la intersección de IA, visión por computadora e imágenes computacionales. Sus productos galardonados abordan aplicaciones de misión crítica para los mercados de sistemas avanzados de asistencia al conductor (ADAS), vehículos autónomos (AV), Smart City y video seguridad.
Como miembro clave del equipo de ingenieros, el Especialista de implementación y lanzamiento apoya al equipo de la Compañía con la infraestructura necesaria para ejecutar sus productos con confianza. Al hacer parte del equipo de desarrollo, reportandose con el Gerente R&D, brindará asesoría y lanzará nuevas tecnologías requeridas para los productos, realizará el monitoreo y mejora de desempeño de infrastructura de los sistemas, dará soporte a la integración continua, y analizará la necesidad de llevar a cabo lanzamientos continuos. La automatización es el principio para resolver la mayoría de nuestros desafíos.
También estará a cargo de desarrollar y mantener de las herramientas de C++ y Python necesarias para permitir que los desarrolladores implementen y pongan a prueba los códigos.
Usted será un miembro clave de un equipo multidisciplinario que desarrolla soluciones de aprendizaje automático para cámaras digitales en vehículos autónomos.
Responsabilidades:
Selecciona, desarrolla y mantiene sistemas de desarrollo repetible para código fuente con base en C++ y Python.
Actúa como co-propietario del diseño y desarrollo del código fuente de los sistemas de implementación y lanzamiento (Docker, CMake, Python) que permitan el flujo de trabajo en el desarrollo de software.
Trabaja con el equipo de control de calidad para incrementar el testeo automatizado.
Evalúa y mejora los diseños, estructuras y estándares en curso para la infraestructura y servicios subyacentes.
Colabora con el equipo DevOps de la empresa al momento de planear la capacidad de servicio y los nuevos sistemas de especificaciones necesarios para cumplir con la demanda en aumento.
Desarrolla y articula una estrategia de lanzamiento robusta.
Resuelve problemas en los servicios correspondientes a los productos en mantenimiento.
Desarrolla herramientas para brindar asistencia a otros desarrolladores e investigadores en sus tareas.
Escribe secuencias de CI/CD y desarrollo legibles y mantenibles.
Asesora y comparte conocimiento con los miembros del equipo.
Requisitos:
Experiencia de más de 3 años en la construcción de paquetes Python.
Mínimo 3 años de experiencia en la creación de sus propios build scripts.
3 o más años de experiencia como DevOps/build & Release, administrando y desarrollando en Linux.
Gran dominio de la contenerización, empaquetamiento, y herramientas de desarrollo, con enfoque en Docker, pero también son bienvenidas otras herramientas (deb/apt).
Experiencia con servicios CI tales como GitLab, Jenkins, Travis, or CircleCI.
Comprensión y desarrollo de paquetes C++, sistemas y tool chains (es indispensable el dominio de CMake/Make).
Requisitos deseables
Experiencia real en el desarrollo de código en C++14 moderno más nuevo.
Comprensión de las soluciones de empaquetamiento y distribución de software (deb, apt, wheel, pipy)
Conocimiento de redes electrónicas (NFS, SAMBA, etc.)
Criterio sobre la toma de decisiones técnicas, y comprensión de las conseciones hechas.
Ideas sobre cómo agilizar el ciclo de desarrollo de software, y la habilidad para articular dichas ideas con el equipo, e implentarlas en la práctica.
Salario inicial (anual)
CAD $60.000
¿Necesitas ayuda?
¿Tienes dificultades cargando un archivo o tal vez algo no funciona bien en la página? Nos complacería solucionarlo para ti!