Restate
Restate
Restate razvijalcem, ki ustvarjajo odporne agente umetne inteligence, delovne tokove in zaledne storitve, zagotavlja platformo za zanesljivo izvajanje. Njeno lahko izvajalno okolje ohranja napredek aplikacije in po napakah nadaljuje prekinjeno delo, s čimer zmanjšuje potrebo po lastni logiki za obnovitev in infrastrukturni kodi. Ekipe lahko trajne korake opredelijo v jezikih TypeScript, Python, Go, Java/Kotlin ali Rust ter jih nato izvajajo v lastnih okoljih ali na oblačnih platformah. Restate temelji na visoko zmogljivem izvajalnem okolju Rust in je zasnovan za dolgotrajne, dogodkovno vodene in porazdeljene aplikacije, vključno z orkestracijo agentov umetne inteligence.

Zaledni razvijalec za porazdeljene sisteme — delo na daljavo v Združenih državah Amerike

Gradite Restateovo izvajalno okolje za zanesljivo izvajanje ter zanesljive in razširljive aplikacije. Delajte na porazdeljenih sistemih, shranjevanju, sporočanju in infrastrukturi, odporni proti napakam.

Opis

  • Gradite ključne zaledne komponente in komponente porazdeljenih sistemov
  • Razvijajte zmogljivosti za trajno izvajanje, upravljanje stanja, sporočanje, shranjevanje, sočasnost in odpornost proti napakam
  • Ustvarjajte zanesljive sisteme z nizko zakasnitvijo, ki delujejo v velikem obsegu
  • Izboljšujte zmogljivost, razširljivost in odpornost Restateovega izvajalnega okolja
  • Sooblikujte arhitekturo in nadaljnji razvoj temeljne platforme Restate
  • Načrtujte sisteme za zanesljivo delovanje v resničnih produkcijskih okoljih
  • Raziskujte in rešujte zapletene težave porazdeljenih sistemov in produkcijskega delovanja
  • Izboljšujte opazljivost, testiranje, obnovitev po napakah in operativno zanesljivost
  • Prispevajte k aplikacijski programski opremi in infrastrukturi
  • Sodelujte z inženirskimi ekipami, ki na Restateu gradijo produkcijske sisteme
  • Pretvarjajte tehnične izzive iz resničnega sveta v izboljšave izdelka
  • Po potrebi ustvarjajte referenčne implementacije, integracije in podporna orodja
  • Sodelujte v tehničnih razpravah, pregledih zasnove in arhitekturnih odločitvah
  • Ponavljajoče se tehnične težave pretvarjajte v ponovno uporabne sisteme, orodja in dokumentacijo
  • Pomagajte vzpostavljati inženirske prakse, ko ekipa in izdelek rasteta

Zahteve

  • Obsežne izkušnje z zalednim inženirstvom in razvojem produkcijskih sistemov
  • Izkušnje s porazdeljenimi sistemi, dogodkovno vodenimi arhitekturami ali sistemi, ki vključujejo sočasnost, stanje, sporočanje in obravnavo napak
  • Odlično poznavanje vsaj enega zalednega jezika; posebej pomembni so Rust, Go, Java, C++ ali primerljivi jeziki
  • Izkušnje z načrtovanjem, izdelavo in upravljanjem produkcijske programske opreme v velikem obsegu
  • Dobro poznavanje zanesljivosti programske opreme, zmogljivosti in zasnove sistemov
  • Izkušnje s porazdeljenimi podatkovnimi bazami, sistemi za izvajanje delovnih tokov, sistemi za sporočanje ali infrastrukturno programsko opremo so prednost
  • Izkušnje z Rustom ali drugim sistemskim programskim jezikom so prednost
  • Izkušnje s Kubernetesom in oblačno infrastrukturo so prednost
  • Izkušnje s sistemi za shranjevanje, omrežji ali nizkonivojskimi sistemi so prednost
  • Izkušnje s prenovo arhitekture ali selitvijo produkcijskih sistemov so prednost
  • Prispevki k odprtokodni programski opremi ali izkušnje z izdelavo infrastrukture za razvijalce so prednost
  • Jasno sporočanje tehničnih zamisli v projektnih dokumentih, arhitekturnih razpravah in kodi
  • Močan občutek lastništva ter sposobnost uspeha v okolju zgodnje faze
  • Sposobnost neposrednega sodelovanja z inženirji pri razumevanju in reševanju praktičnih tehničnih težav

Ugodnosti

  • Lastniški delež