Senior Software Engineer in Warsaw

Senior Software Engineer in Warsaw

Warsaw Pełny etat 90000 - 110000 zł / rok (szac.) Hybrydowo
S

W skrócie

  • Zadania: Twórz i zarządzaj systemami rozproszonymi, poprawiając ich obserwowalność i wydajność.
  • Firma: Innowacyjna firma technologiczna z kulturą współpracy.
  • Benefity: Konkurencyjne wynagrodzenie, elastyczne godziny pracy i możliwości rozwoju zawodowego.
  • Pozostałe informacje: Dynamiczne środowisko z doskonałymi możliwościami rozwoju kariery.
  • Dlaczego ta praca: Pracuj z najnowszymi technologiami i wpływaj na rozwój innowacyjnych projektów.
  • Kwalifikacje: Doświadczenie w programowaniu w Pythonie oraz umiejętności współpracy w zespole.

Przewidywane wynagrodzenie mieści się w przedziale 90000 - 110000 zł za rok.

Warszawa, Polska

Rola: To nie jest wąska rola specjalistyczna. Potrzebujemy kogoś, kto potrafi poruszać się po całym stosie rozproszonego systemu: rozumieć, jak elementy pasują do siebie, sprawić, by system był wystarczająco obserwowalny, aby wiedzieć, co działa, a co nie, pisać i strukturyzować kod z wyraźnymi granicami i odpowiednimi elementami enkapsulowanymi, oraz być równie komfortowym w SSH na maszynie floty, aby zgłębić problem na żywo, jak i projektować system na tablicy.

Dołączysz do zespołu Virtual Device Cloud, który ma głęboką, skoncentrowaną siłę w macOS, CoreSimulator i wewnętrznych strukturach APFS, i będziesz ściśle współpracować z Menedżerem Produktu oraz zespołami Test Orchestration i Cloud. Twoim zadaniem będzie poprawa dyscypliny testowej i międzyplatformowej obserwowalności oraz zwiększenie częstotliwości dostarczania, poprawności i widoczności w całej flocie.

Obowiązki:

  • Przykład dla innych - ustal standardy zespołu dotyczące testowania, obserwowalności i dostarczania poprzez przegląd kodu i współpracę, oraz angażuj innych.
  • Właściciel cyklu życia urządzenia - projektuj i buduj usługi, które ten zespół posiada w całym cyklu życia urządzenia, od obrazu, który urządzenie uruchamia, po jego rozbiórkę. Obejmuje to gotowość, cykl życia sesji i definicje floty, które podłączają symulatory i VM do naszej warstwy orkiestracji, niezależnie od tego, czy flota działa jako pody na Kubernetes z Agones, czy jako VM na hostach bare-metal i w chmurze.
  • Uczyń flotę obserwowalną - buduj i używaj narzędzi do obserwowalności, które odpowiadają na pytanie „czy działa zgodnie z zamierzeniem, a jeśli nie, to dlaczego” w całej flocie i w pipeline'ie budowy obrazów, w tym gości i VM, które cicho zawodzą, zanim ich ładunek nawet się zacznie.
  • Napraw problemy cyklu życia na dobre - znajdź przyczynę i napraw powtarzające się regresje cyklu życia za pomocą testów i automatycznych kontroli wydania, aby ten sam błąd nie został wysłany dwa razy.
  • Spraw, aby urządzenia uruchamiały się i recyklingowały szybciej - mierz i redukuj czas uruchamiania, gotowości i rozbiórki od początku do końca, i umieść obraz oraz stopień zajęcia dysku na budżecie.
  • Współpraca między zespołami - współpracuj z zespołami Cloud i Test Orchestration, aby proponować i wprowadzać zmiany oparte na dowodach w systemach, których nie posiadasz. Utrzymuj umowy między naszymi warstwami w sposób jawny.

Wymagane umiejętności:

  • Solidne doświadczenie w projektowaniu, budowaniu i obsłudze rozproszonych systemów w produkcji.
  • Praktyczne doświadczenie z Kubernetes, najlepiej w tym zakresie orkiestracji floty, takiej jak Agones lub porównywalny model floty sesyjnej.
  • Udowodniona zdolność do wysyłania kodu produkcyjnego w Go i/lub Pythonie przez standardową ścieżkę wdrożeniową CI/CD, w tym budowanie i utrzymywanie samych pipeline'ów.
  • Silne instynkty obserwowalności i doświadczenie: metryki, logowanie, śledzenie i budowanie widoczności w systemach, które jeszcze jej nie mają.
  • Praktyczne doświadczenie z DevOps oraz systemami Linux/Unix: umiejętność zalogowania się na maszynę (VM, host kontenera lub bare metal) i pewne działanie - diagnozowanie, naprawianie i rozumienie, co naprawdę dzieje się na maszynie.
  • Dostarcza przez zespół: historia sukcesów w dostarczaniu poprzez przegląd i współpracę w systemach, które obsługują inni, a nie samodzielnie.
  • Znajomość macOS: simctl, launchd, XPC oraz jak działa stos wirtualizacji/symulatora Apple'a.
  • Znajomość projektowania pamięci i copy-on-write (np. APFS lub podobne wewnętrzne struktury systemu plików).
  • Doświadczenie w pracy w infrastrukturze Windows i Linux.
  • Znajomość Apple Virtualization Framework i związanych narzędzi (np. tart).
  • Posiadał startup, czas uruchamiania lub gotowości dla VM, kontenerów, runnerów CI lub serwerów gier i obniżył go.
  • Swift: niektóre z naszych repozytoriów go używają, a przeglądanie ich jest częścią roli.
  • Doświadczenie w budowaniu i utrzymywaniu obrazów OS lub VM za pomocą narzędzi takich jak Packer, tart, Ansible, cloud-init lub sysprep.

Jesteśmy hybrydowym miejscem pracy, które docenia znaczenie elastyczności, jednocześnie ceniąc współpracę i budowanie relacji osobiście. W związku z tym pracownicy Saucers znajdujący się w pobliżu lokalizacji biura muszą być w stanie i chętni do przychodzenia do biura. Osoby zatrudnione zdalnie muszą być w stanie i chętni do podróży do biura w zależności od wymagań konkretnej roli.

Sauce Labs z dumą jest pracodawcą równych szans i ceni różnorodność w naszej firmie. Nie dyskryminujemy ze względu na rasę, religię, kolor, pochodzenie narodowe, tożsamość/podstawę płci, orientację seksualną, wiek, stan cywilny, status weterana ani status niepełnosprawności.

Obowiązki związane z bezpieczeństwem w Sauce: W Sauce zobowiązujemy się do wspierania zdrowia i bezpieczeństwa pracowników oraz mienia, współpracując z wewnętrznymi interesariuszami, aby uczyć się i działać zgodnie z ewoluującymi protokołami i procedurami bezpieczeństwa. Oczekuje się, że w pełni przestrzegasz wszystkich polityk i procedur związanych z bezpieczeństwem na poziomie departamentu i organizacji oraz stosujesz podejście „bezpieczeństwo przede wszystkim” w projektowaniu, budowaniu i prowadzeniu naszych produktów i usług.

Senior Software Engineer in Warsaw – pracodawca: Sauce Labs

Sauce Labs oferuje pracownikom możliwość pracy w zespole, który ma głęboką wiedzę na temat macOS, CoreSimulator i APFS. Pracownicy mają szansę na rozwój zawodowy poprzez prowadzenie zespołu w zakresie testowania, obserwowalności i dostarczania oprogramowania. Firma stawia na współpracę między zespołami, co sprzyja wymianie wiedzy i umiejętności.

S

Dane kontaktowe:

Zespół rekrutacyjny Sauce Labs

Naszym zdaniem te umiejętności pozwolą ci błyszczeć jako Senior Software Engineer in Warsaw

Projektowanie systemów rozproszonych
Kubernetes
Agones
Python
CI/CD
Obserwowalność systemów
Linux/Unix