Cerebras
Cerebras
Cerebras opracowuje sprzęt AI w technologii Wafer-Scale oraz zintegrowane oprogramowanie do wysokowydajnego trenowania i wnioskowania modeli. Jej Wafer-Scale Engine zasila system CS-3 oraz Cerebras Inference Cloud, który obsługuje przepływy pracy zgodne z OpenAI API i wdrażanie w środowiskach lokalnych, chmurowych oraz brzegowych. Platforma firmy jest przeznaczona do zastosowań obejmujących obsługę modeli, dostrajanie, trening wstępny, działanie agentów AI w czasie rzeczywistym, genomikę, odkrywanie leków, cyberbezpieczeństwo i wyszukiwanie korporacyjne. Cerebras łączy wyspecjalizowane układy, systemy i oprogramowanie dla organizacji tworzących i obsługujących wymagające obciążenia związane ze sztuczną inteligencją; firma zatrudnia od 501 do 1 000 pracowników.

Inżynier ds. środowisk uruchomieniowych ML i jąder, Core ML

Twórz wysokowydajne środowiska uruchomieniowe i jądra, które przekładają badania Core ML na oprogramowanie produkcyjne. Projektuj i optymalizuj oprogramowanie dla płytkowej platformy AI Cerebras oraz systemów uczenia maszynowego.

Opis

  • Projektowanie i implementowanie komponentów środowiska uruchomieniowego oraz wysokowydajnych jąder dla nowych algorytmów Core ML
  • Przekształcanie prototypów badawczych w wydajne implementacje na platformie Cerebras, w tym wersje referencyjne i porównania z GPU, gdy jest to przydatne
  • Profilowanie i rozwiązywanie problemów z wydajnością w ramach ML, kompilatorach, środowiskach uruchomieniowych, systemach komunikacji i jądrach
  • Optymalizowanie obliczeń, transferów pamięci, komunikacji i współbieżności na potrzeby wielkoskalowego trenowania oraz inferencji o niskich opóźnieniach
  • Tworzenie benchmarków, instrumentacji i automatycznych testów funkcjonalności, wydajności oraz dokładności numerycznej
  • Ścisła współpraca z badaczami Core ML oraz inżynierami kompilatorów, środowisk uruchomieniowych, jąder i inferencji
  • Współtworzenie architektury oprogramowania i decyzji dotyczących planu rozwoju poprzez identyfikowanie powtarzających się ograniczeń oraz możliwości ulepszania platformy

Wymagania

  • Wykształcenie licencjackie, magisterskie, doktoranckie lub równoważne doświadczenie praktyczne w dziedzinie informatyki, inżynierii komputerowej, elektrotechniki lub pokrewnej dyscyplinie
  • Doświadczenie w tworzeniu wysokowydajnego oprogramowania systemowego, systemów uczenia maszynowego, środowisk uruchomieniowych, kompilatorów lub jąder obliczeniowych
  • Bardzo dobra znajomość C++ i Pythona
  • Dobra znajomość programowania równoległego, zarządzania pamięcią, współbieżności, struktur danych i optymalizacji wydajności
  • Udokumentowana umiejętność debugowania i profilowania złożonego oprogramowania na wielu warstwach systemu
  • Znajomość współczesnych architektur i frameworków uczenia maszynowego, takich jak PyTorch lub JAX
  • Umiejętność skutecznej współpracy z badaczami i przekładania zmieniających się potrzeb algorytmicznych na niezawodne oprogramowanie
  • Mile widziane: doświadczenie z CUDA, Tritonem, asemblerem niskiego poziomu, programowaniem akceleratorów lub językiem dziedzinowym podobnym do C
  • Mile widziane: doświadczenie z wewnętrznym działaniem kompilatorów, rozproszonymi środowiskami uruchomieniowymi, interfejsami niestandardowego sprzętu lub systemami obliczeń wysokowydajnych
  • Mile widziane: znajomość podstaw uczenia maszynowego i systemów ML
  • Mile widziane: znajomość trenowania lub inferencji LLM, w tym mechanizmu attention, zarządzania pamięcią podręczną KV, generowania równoległego lub wykonywania rozproszonego
  • Mile widziane: doświadczenie w tworzeniu oprogramowania w przemysłowym lub akademickim środowisku badawczym
  • Mile widziane: wkład w znaczące projekty open source, frameworki uczenia maszynowego, kompilatory lub biblioteki jąder

Benefity

  • Pomagaj budować platformę AI zaprojektowaną z myślą o wyjściu poza ograniczenia tradycyjnych GPU
  • Możliwość publikowania i udostępniania jako open source zaawansowanych badań nad AI
  • Pracuj z jednym z najszybszych superkomputerów AI na świecie
  • Energia startupu połączona ze stabilnością zatrudnienia
  • Prosta, niekorporacyjna kultura szanująca indywidualne przekonania
  • Równe i różnorodne miejsce pracy
  • Stałe możliwości nauki, rozwoju i uzyskania wsparcia