Senior Software Engineer
Se busca Senior Software Engineer para empresa de tecnología de seguridad vial y infraestructura inteligente. Responsabilidades incluyen diseño, desarrollo y optimización de sistemas de producción.
Atractivo para ingenieros experimentados que buscan desarrollar soluciones de seguridad vial y infraestructura inteligente en un entorno remoto.
Descripción del puesto
Derq es una empresa derivada del MIT que desarrolla soluciones de seguridad vial y infraestructura inteligente impulsadas por inteligencia artificial. Somos un equipo de innovadores apasionados que aprovechamos lo último en inteligencia artificial y tecnología para transformar el futuro de la movilidad. Nuestra plataforma mejora la seguridad vial y la gestión del tráfico convirtiendo datos en tiempo real en información útil para las ciudades y los operadores de carreteras. Nuestra tecnología patentada recopila y analiza datos de sensores conectados como cámaras, radar y controladores de señales de tráfico para ayudar a predecir y prevenir incidentes viales. Implementamos soluciones en el borde y en la nube que hacen que las intersecciones y las carreteras sean más seguras e inteligentes. Descripción del rol Como Ingeniero de Software Senior en Derq, te enfocarás en diseñar, desarrollar y optimizar sistemas de producción que alimentan nuestras soluciones de tráfico y seguridad en tiempo real. Este es un rol de ingeniería práctica con propiedad total del código, el rendimiento y el comportamiento del sistema desde el desarrollo hasta la implementación. Trabajarás en sistemas desplegados en el borde, críticos para el rendimiento, mejorando la eficiencia, la fiabilidad, la escalabilidad y el comportamiento general del sistema en condiciones del mundo real. Este rol se sitúa entre la ingeniería de software y la ingeniería de sistemas, con un fuerte enfoque en enviar soluciones listas para producción en lugar de liderazgo en investigación o arquitectura pura. Trabajarás en nuestra pila estándar de C++ en Linux (compilaciones basadas en CMake, bibliotecas compartidas y patrones de implementación consistentes con nuestro software de producción en carretera / borde). Responsabilidades clave Diseñar, desarrollar y mantener sistemas de software de grado de producción con un enfoque en el rendimiento, la fiabilidad y la escalabilidad Optimizar el comportamiento del sistema para entornos en tiempo real y de baja latencia, incluidos componentes de borde y nube Diseñar, implementar y refinar la lógica del sistema central que mejora el rendimiento, la fiabilidad y la escalabilidad de la plataforma en condiciones del mundo real. Perfilar, analizar y optimizar el rendimiento del sistema en CPU, memoria, E/S y red Mejorar la observabilidad del sistema a través de registros, monitoreo y diagnósticos Trabajar en el desarrollo de extremo a extremo, desde el diseño y la implementación hasta las pruebas, la implementación y el soporte Colaborar con los equipos de implementación, ML y sistemas para validar y respaldar mejoras en entornos similares a la producción y en vivo. Depurar y resolver problemas complejos de producción que involucran sistemas distribuidos o en tiempo real Escribir código limpio, mantenible y bien probado siguiendo las mejores prácticas de ingeniería Participar en revisiones de código y contribuir a mejorar los estándares de ingeniería y las herramientas Soportar sistemas de producción después de la implementación y ayudar con la sintonía de rendimiento y la resolución de problemas Licenciado en Ciencias de la Computación, Ingeniería de Software, Ingeniería Eléctrica o un campo relacionado 10+ años de experiencia profesional en ingeniería de software, ingeniería de sistemas o sistemas críticos para el rendimiento Fuerte experiencia práctica con C++ moderno Experiencia sólida trabajando con sistemas basados en Linux Experiencia en la construcción y optimización de sistemas en tiempo real, de alto rendimiento o de baja latencia Fuerte comprensión de: Estructuras de datos y algoritmos Rendimiento del sistema y optimización de recursos Depuración de comportamiento de sistemas complejos Experiencia con pruebas automatizadas, validación de sistemas y depuración de producción Familiaridad con conceptos de sistemas distribuidos y confiabilidad del sistema Fuertes habilidades de resolución de problemas y mentalidad de propiedad
Responsabilidades
- Diseñar y desarrollar sistemas de software de producción
- Optimizar el rendimiento del sistema
- Implementar y refinar la lógica del sistema central
- Analizar y optimizar el rendimiento del sistema
- Mejorar la observabilidad del sistema