AI/ML Software Engineer

Job expired!

Funkcja: Badania i Rozwój - Jaipur

Pasek płac: E4 do M2

Rola: Inżynier Oprogramowania AI/ML

Jeśli pasjonuje Cię rozwijanie i wdrażanie algorytmów AI i ML dla zaawansowanych jednostek sterujących w motoryzacji, ta rola z orientacją na cel jest dla Ciebie. W stałej interakcji z zespołami odpowiedzialnymi za sprzęt, oprogramowanie i testowanie, będziesz rozwijać moduły oprogramowania zapewniające jakość dostarczania w ustalonych terminach.

  • Skupienie: Rozwój i wdrażanie algorytmów AI i uczenia maszynowego na systemach wbudowanych.
  • Rozwój i wdrażanie algorytmów ML na systemach wbudowanych do identyfikacji, śledzenia i klasyfikacji obiektów.
  • Projektowanie i optymalizacja modeli AI/ML do wdrożenia na platformach wbudowanych o ograniczonych zasobach, uwzględniając pamięć, moc obliczeniową i efektywność energetyczną.
  • Udział w całym cyklu życia rozwoju oprogramowania, od zbierania wymagań i projektowania systemu, po testowanie, wdrożenie i utrzymanie.
  • Ocena i optymalizacja algorytmów w celu zapewnienia wydajnej i dokładnej wydajności systemów wizyjnych w czasie rzeczywistym.
  • Analiza wydajności i rozwiązywanie problemów w celu identyfikacji i usunięcia usterek.
  • Śledzenie postępów w dziedzinie AI i uczenia maszynowego oraz proponowanie innowacyjnych rozwiązań w celu ulepszenia naszych produktów.
  • Dokumentowanie i skuteczne przekazywanie pojęć technicznych, algorytmów i szczegółów wdrożenia członkom zespołu i interesariuszom.
  • Mentorowanie młodszych członków zespołu, dostarczanie wskazówek i ekspertyz technicznych w celu wspierania ich rozwoju zawodowego.
  • Przestrzeganie procesów wersjonowania i wydawania oprogramowania.
  • Tworzenie plików symulacyjnych CAN/dbc z matrycy CAN oraz korzystanie z narzędzi Vector CAN (takich jak CANalyzer, CANoe), ETAS-INCA itp.
  • Przeprowadzanie testów jednostkowych oprogramowania i walidacji, w tym znajomość testowania czarno- i białoskrzynkowego.
  • Przygotowywanie zwięzłej dokumentacji funkcji oprogramowania ECU i testów weryfikacyjnych.
  • Przeprowadzanie testów oprogramowania przy użyciu narzędzi symulacyjnych CAN, takich jak CAPL.

BTech/MTech z informatyki, elektroniki, instrumentacji, motoryzacji lub równoważne. Zaawansowane kwalifikacje są zaletą.

  • Projektowanie i rozwój oprogramowania wbudowanego, w tym Embedded Linux i Embedded C/C++.
  • Solidne zrozumienie technik ML, frameworków głębokiego uczenia (TensorFlow, PyTorch) oraz wizji komputerowej.
  • Doświadczenie w integracji i optymalizacji sprzętu i oprogramowania dla systemów wbudowanych, w tym przyspieszanie GPU i wdrażanie FPGA.
  • Biegłość w pracy z popularnymi platformami wbudowanymi, takimi jak systemy na chipie (SoC) oparte na ARM oraz mikrokontrolery.
  • Znajomość systemów operacyjnych czasu rzeczywistego (RTOS) i metodologii rozwoju oprogramowania dla systemów wbudowanych.
  • Doświadczenie w modelu zdolności procesów ASPICE i procesie