Jak sprawić, żeby badacze AI trenowali modele na stabilnej, powtarzalnej platformie, bez kolejek do GPU i bez tygodni na konfigurację środowiska?
Odpowiedź leży w infrastrukturze: harmonogramowaniu zasobów GPU, narzędziach dla badaczy i dyżurze, który pozwala szybko reagować, gdy coś przestaje działać.
W Etteplan szukamy Senior MLOps Engineera, który przejmie odpowiedzialność za platformę, na której zespół AI naszego klienta trenuje i ocenia modele rekonstrukcji mowy. Dołączysz do małego zespołu platformowego, w którym współpracujesz na co dzień z badaczami AI oraz z drugim inżynierem odpowiedzialnym za usługi webowe i infrastrukturę produkcyjną.
Od ponad 40 lat łączymy wiedzę inżynierską z nowoczesnymi technologiami. Tworzymy rozwiązania z obszaru software, embedded systems i zaawansowanej inżynierii, pomagając klientom rozwijać produkty i systemy wykorzystywane w rzeczywistym świecie.
Rola w skrócie Obszar: platforma treningowa AI (MLOps), infrastruktura GPU, narzędzia dla badaczy
Kluczowe technologie: Kubernetes, Slurm, CUDA, PyTorch, MLflow / Weights & Biases / DVC, Terraform, Python
Główne zagadnienia: harmonogramowanie GPU, środowiska treningowe, pipeline'y danych audio, narzędzia dla badaczy, eksport modeli na urządzenia, dyżury on-call, zgodność z GDPR
Środowisko: serwery GPU on-premise i chmura (AWS, GCP lub Azure), Linux
Poziom: Senior
O projekcie i Twojej roli Dołączysz do zespołu klienta rozwijającego technologię rekonstrukcji mowy opartą na AI. Będziesz odpowiadać za środowiska, w których zespół trenuje i ocenia modele, za narzędzia potrzebne badaczom oraz za dyżur, gdy te narzędzia mają problemy.
Zespół platformowy tworzą dwie role: Senior MLOps Engineer, odpowiedzialny za platformę treningową AI, oraz Senior DevOps Engineer, odpowiedzialny za usługi webowe i produkcyjną infrastrukturę. Każda z ról ma własną domenę, ale są one zaprojektowane tak, by się wzajemnie zastępować. Dzielicie jedną rotację dyżurów, recenzujecie swoją pracę, stosujecie te same praktyki infrastructure as code i CI/CD oraz zastępujecie się w czasie urlopów, incydentów i intensywnych okresów wydań.
Co chcemy osiągnąć w pierwszym roku:
zespół AI trenuje i ocenia modele na powtarzalnej, dobrze udokumentowanej platformie z uczciwym harmonogramowaniem GPU,
własne narzędzia do eksperymentów, ewaluacji i eksportu modeli są codziennie używane przez zespół AI,
wspólna rotacja dyżurów z DevOps Engineerem działa, z runbookami dla obu domen,
potrafisz przejąć obsługę usług webowych na czas nieobecności współpracownika.
Dlaczego warto?
Odpowiadasz za całą platformę treningową. Od serwerów GPU po narzędzia, z których badacze korzystają codziennie, więc Twoja praca bezpośrednio przyspiesza rozwój modeli.
Budujesz własne narzędzia, a nie tylko utrzymujesz cudze. Śledzenie eksperymentów, uruchamianie zadań treningowych, pipeline'y ewaluacji i benchmarków oraz eksport i pakowanie modeli dla urządzeń docelowych.
Pracujesz z infrastrukturą on‑premise i w chmurze. Łączysz własne serwery GPU z pojemnością w chmurze i dbasz o koszty, bezpieczeństwo i powtarzalność.
Jesteś częścią małego, wzajemnie zastępującego się zespołu. Dzielisz dyżury, runbooki i praktyki z kolegą z DevOps, więc żadna domena nie zależy od jednej osoby.
W tej roli będziesz odpowiadać za:
Przygotowanie i utrzymanie środowisk treningowych AI na serwerach GPU on-premise oraz w chmurze.
Zarządzanie harmonogramowaniem GPU i współdzielonymi zasobami obliczeniowymi (Kubernetes, Slurm lub podobne), tak aby badacze mieli uczciwy i przewidywalny dostęp.
Budowę i utrzymanie pipeline'ów i magazynów dla dużych zbiorów danych audio: z wersjonowaniem, kontrolą dostępu i obsługą danych głosowych zgodną z GDPR.
Tworzenie własnych narzędzi dla zespołu AI, takich jak śledzenie eksperymentów, uruchamianie zadań treningowych, pipeline'y ewaluacji i benchmarków oraz eksport i pakowanie modeli dla urządzeń docelowych.
Pełnienie roli głównego inżyniera dyżurnego (on-call) dla problemów z narzędziami AI i infrastrukturą treningową.
Dbanie o to, aby środowiska treningowe były powtarzalne, bezpieczne i efektywne kosztowo w miarę rozwoju zespołu i modeli.
Udział we wspólnej rotacji dyżurów obejmującej usługi produkcyjne i narzędzia AI oraz obsługę incydentów w obu domenach na podstawie wspólnych runbooków.
Regularną pracę w domenie drugiej roli, tak aby żaden obszar nie zależał od jednej osoby.
Utrzymywanie spójności infrastructure as code, CI/CD, zarządzania sekretami i kontroli dostępu w obu domenach.
Pisanie i utrzymywanie runbooków, notatek architektonicznych i postmortemów, z których korzystacie obaj.
Wsparcie w pracach nad bezpieczeństwem i zgodnością w całej firmie, w tym GDPR i obsługą danych głosowych.
Szukamy osoby, która:
Ma co najmniej 5 lat doświadczenia w DevOps, SRE, MLOps lub inżynierii platform ML.
Ma doświadczenie w budowie i obsłudze infrastruktury GPU do trenowania modeli ML: sterowniki NVIDIA, CUDA, kontenery z obsługą GPU oraz trening na wielu GPU lub wielu węzłach.
Zna narzędzia ML, takie jak PyTorch, trening rozproszony, MLflow, Weights & Biases lub DVC.
Ma doświadczenie w budowie wewnętrznych narzędzi i procesów dla badaczy lub data scientistów.
Dobrze zna administrację Linuxem i podstawy sieci.
Zna infrastructure as code (Terraform, OpenTofu, Pulumi lub podobne) oraz zarządzanie konfiguracją (Ansible lub podobne).
Zna kontenery i orkiestrację: Docker i Kubernetes.
Zna pipeline'y CI/CD (GitHub Actions, GitLab CI lub podobne).
Bardzo dobrze zna Pythona i skrypty shell. Znajomość Go lub innego języka kompilowanego jest dodatkowym atutem.
Zna monitoring, logowanie i alertowanie (Prometheus, Grafana, Loki, OpenTelemetry lub podobne).
Ma praktyczne doświadczenie z co najmniej jedną dużą chmurą (AWS, GCP lub Azure).
Ma doświadczenie w prowadzeniu rotacji dyżurów: reagowanie na incydenty, postmortemy i ograniczanie szumu alertów.
Chce poznawać i obsługiwać domenę drugiej roli oraz dzielić dyżur.
Swobodnie posługuje się językiem angielskim w mowie i piśmie.
Docenimy również:
Doświadczenie po stronie DevOps: budowanie i prowadzenie produkcyjnych usług webowych i API.
Budowanie lokalnych (on-premise) środowisk LLM dla małych zespołów.
Doświadczenie z danymi z obszaru mowy, audio lub przetwarzania sygnałów.
Optymalizację i eksport modeli na urządzenia brzegowe (ONNX, TFLite/LiteRT, kwantyzacja).
Inżynierię danych dla dużych zbiorów danych nieustrukturyzowanych (magazyny obiektowe, wersjonowanie danych, pipeline'y adnotacji).
Optymalizację kosztów (FinOps) dla obciążeń GPU.
Jak przebiega proces rekrutacyjny?
Prześlij nam swoje CV w języku angielskim, dopisując w formularzu oczekiwania finansowe, preferowaną formę współpracy oraz dyspozycyjność.
Teraz czas na nasz ruch - analizę Twojego zgłoszenia. Jeśli przebiegła pomyślnie, zaprosimy Cię na dłuższą rozmowę w formie zdalnej (ok. 1.5h).
Po spotkaniu spodziewaj się feedbacku w przeciągu 2 tygodni.
Powyższe etapy poszły Ci jak z płatka? Świetnie! Witaj w Etteplan :)
Możesz też zajrzeć na naszą stronę internetową lub Facebooka i zobaczyć, co ciekawego się u nas dzieje!
-
Nasza firma wdrożyła procedury ochrony sygnalistów zgodnie z obowiązującą ustawą. Każda osoba ma prawo zgłaszać nieprawidłowości w bezpieczny sposób, a zgłoszenia są objęte pełną ochroną prawną. Więcej informacji: https://www.etteplan.com/pl/kodeks-postepowania/
Senior MLOps Engineer – GPU Infrastructure, Kubernetes & Python (M/F/NB) in Gdańsk – pracodawca: Etteplan
Pracując jako ServiceNow Consultant w naszej firmie, dołączysz do dynamicznego zespołu w międzynarodowym środowisku, gdzie innowacyjne podejście do projektów ITSM i CSM jest na porządku dziennym. Oferujemy elastyczne godziny pracy, możliwość rozwoju zawodowego oraz dostęp do szkoleń, które pomogą Ci zdobyć nowe umiejętności i certyfikaty. Nasza kultura pracy opiera się na współpracy, dzieleniu się wiedzą oraz wsparciu, co sprawia, że jesteśmy doskonałym miejscem dla osób pragnących rozwijać swoją karierę w obszarze nowoczesnych technologii.