Старший інженер-програміст системного програмного забезпечення, C++ та CUDA - Прискорений Apache Spark

  • Full Time
Job expired!

Ми шукаємо інженерів системного програмного забезпечення для приєднання до нашої команди Apache Spark. Оскільки NVIDIA очолює світове прискорене обчислення, ми створюємо екосистему обробки даних наступного покоління. Apache Spark - це найпопулярніший розподілений двигун обробки даних у центрах обробки даних, який використовується для широкого спектра завдань, включаючи підготовку даних, генерацію функцій, звітність, аналітику та інше. Дослідники в області даних витрачають значну частину часу на дослідження даних і експериментування з машинним навчанням (ML). Кожна година обчислень, необхідних для сортування наборів даних, видобутку функцій та підгону алгоритмів ML, заважає ефективній бізнес-процедурі.

В NVIDIA ми зацікавлені у вирішенні складних проблем, якиї мають значний вплив. Щоб приєднатися до нас, вам потрібні сильні навички програмування, глибоке розуміння побудови та пакування програмного забезпечення, особливо щодо C++. Ви будете працювати з командою, яка використовує відкриті бібліотеки - RAPIDS libcudf, RMM та cuIO - для прискорення операцій в Apache Spark Extract, Transform, Load (ETL) та ML.

Що вам доведеться робити:

  • Розробляти бібліотеки CUDA/C++ для використання розподіленими двигунами обробки даних, прискорюючи операції в Apache Spark
  • Покращувати відкрите програмне забезпечення RAPIDS через технічні обговорення та внесення внесків до коду
  • Співпрацювати з командами розподілених систем для розробки вирішень викликів великомасштабної розподіленої обробки
  • Надавати рекомендації та зворотний зв'язок командам щодо рішень, що стосуються інфраструктури, неперервної інтеграції та стратегій тестування
  • Будувати, тестувати та оптимізувати бібліотеки CUDA/C++ на різних платформах
  • Створювати автоматизацію та інструменти, які покращать ефективність розробки розподілених систем

Що вам потрібно мати:

  • Бакалавр, магістр або доктор філософії в галузі комп'ютерних наук, комп'ютерної інженерії або суміжній галузі, або еквівалентний досвід
  • 8+ років досвіду роботи в області розробки програмного забезпечення
  • Винятково технічні навички у дизайні та реалізації високоякісних розподілених систем
  • Відмінні навички програмування на C++, Java та/або Scala
  • Здатність працювати з мульти-функціонируючими командами по всіх границях та регіонах
  • Високий рівень мотивації та сильні міжособистісні навички

Що виділяє вас з-поміж інших:

  • Знайомство з RAPIDS libcudf, RMM і cuIO
  • Досвід розробки ефективного розподіленого програмного забезпечення в масштабі
  • Досвід у розробці ядра операційної системи
  • Досвід з розробки на CUDA на GPU
  • Тверде розуміння C++ 17/20

Ми вважаємося одним з найбільш бажаних роботодавців у світі технологій, наймаючи деяких з найбільш прогресивних і наполегливих особистостей. Якщо ви зацікавлені, креативні і мотивовані, ми б хотіли, щоб ви приєдналися до нашої команди. З конкурентними зарплатами та щедрим пакетом соціальних гарантій ми вважаємося одним з найбільш привабливих роботодавців у технічній галузі. Ми зазнали вражаючого зростання, що призвело до швидкого розширення наших ексклюзивних інженерних команд. Якщо ви - творчий та самостійний інженер з справжнім зацікавленням в технологіях, ми з радістю дочуємо від вас.

Базовий діапазон заробітної плати за цю посаду варіюється від 176 000 USD до 333 500 USD. Ваша базова зарплата буде визначена на основі вашого місцезнаходження, досвіду і винагороди співробітників на схожих посадах. Ви також будете мати право на акції та пільги. NVIDIA приймає заявки на цю вакансію на постійній основі.