Ingeniero Senior de Software de Sistemas, C++ y CUDA - Apache Spark Acelerado

  • Full Time
Job expired!

Estamos buscando Ingenieros de Software de Sistema para unirse a nuestro equipo de Apache Spark Acelerado. NVIDIA lidera el mundo en computación acelerada y estamos construyendo la próxima generación de ecosistema de procesamiento de datos. Apache Spark es el motor de procesamiento de datos distribuido más popular en los centros de datos. Se utiliza para una amplia variedad de cargas de trabajo, desde la preparación de datos, generación de características, informes, análisis y más. Los científicos de datos pasan una cantidad considerable de tiempo explorando datos y realizando experimentos de aprendizaje automático (ML). Cada hora de cálculo necesaria para ordenar los conjuntos de datos, extraer características y ajustar los algoritmos de ML impide un flujo de trabajo empresarial eficiente.

En NVIDIA, nos apasiona trabajar en problemas difíciles que tienen impacto. Necesitará tener sólidas habilidades de programación, una profunda comprensión de la construcción y empaquetado de software, especialmente relacionado con C++. Trabajará con un equipo que está utilizando bibliotecas de código abierto – RAPIDS libcudf, RMM y cuIO – para acelerar las operaciones en Apache Spark ETL y ML.

Lo que estarás haciendo:

  • Desarrollar bibliotecas CUDA/C++ que serán utilizadas por motores de procesamiento de datos distribuidos, acelerando las operaciones en Apache Spark

  • Mejorar OSS RAPIDS a través de la discusión técnica y las contribuciones de código

  • Colaborar con equipos de sistemas distribuidos para crear soluciones a los desafíos de procesamiento distribuido a gran escala

  • Proporcionar recomendaciones y retroalimentación a los equipos sobre decisiones relacionadas con temas como infraestructura, integración continua y estrategia de pruebas

  • Construir, probar y optimizar las bibliotecas CUDA/C++ en diferentes plataformas

  • Construir automatización y herramientas que aumentarán la eficiencia de los equipos que desarrollan sistemas distribuidos

Lo que necesitamos ver:

  • Licenciatura, Maestría, o Doctorado en Ciencias de la Computación, Ingeniería Informática, o campo relacionado o experiencia equivalente

  • Más de 8 años de experiencia laboral en desarrollo de software

  • Habilidades técnicas sobresalientes en el diseño e implementación de sistemas distribuidos de alta calidad

  • Excelentes habilidades de programación en C++, Java, y/o Scala

  • Capacidad para trabajar con equipos multifuncionales en diferentes áreas y geografías

  • Alta motivación con fuertes habilidades interpersonales

Formas de destacar entre la multitud:

  • Familiaridad con RAPIDS libcudf, RMM y cuIO

  • Experiencia en la escritura de software distribuido de alto rendimiento a gran escala

  • Experiencia en el desarrollo del núcleo del sistema operativo

  • Experiencia en el desarrollo en CUDA en GPUs

  • Sólida comprensión de C++ 17/20

Somos considerados ampliamente como uno de los empleadores más deseables del mundo de la tecnología, y como resultado, contamos con algunas de las personas más visionarias y trabajadoras del mundo trabajando para nosotros. Si eres apasionado, creativo, y motivado, nos encantaría que te unieras al equipo. Con salarios competitivos y un generoso paquete de beneficios, somos ampliamente considerados como uno de los empleadores más deseables del mundo de la tecnología. Tenemos algunas de las personas más visionarias y trabajadoras del mundo trabajando para nosotros y, debido al crecimiento sin precedentes, nuestros exclusivos equipos de ingeniería están creciendo rápidamente. Si eres un ingeniero creativo y autónomo con una verdadera pasión por la tecnología, queremos oír de ti.

El rango de sueldo base salario es de 176,000 USD - 333,500 USD. Tu salario base será determinado basado en tu ubicación, experiencia, y el pago de empleados en posiciones similares.

También serás elegible para la equidad y beneficios. NVIDIA acepta solicitudes de manera continua.