Principal Software Engineer

Principal Software Engineer

Pełny etat Hybrydowo
E

W skrócie

  • Zadania: Prowadzenie inicjatyw inżynieryjnych w zakresie wydajności Elasticsearch i optymalizacja systemów.
  • Firma: Elastic, firma AI zajmująca się wyszukiwaniem, z kulturą współpracy.
  • Benefity: Konkurencyjne wynagrodzenie, opieka zdrowotna, elastyczne godziny pracy i rozwój zawodowy.
  • Pozostałe informacje: Dynamiczne środowisko z doskonałymi możliwościami rozwoju kariery.
  • Dlaczego ta praca: Pracuj z nowoczesnymi technologiami i wpływaj na innowacyjne projekty w dużej skali.
  • Kwalifikacje: Głęboka wiedza o Javie, zarządzaniu pamięcią JVM i systemach rozproszonych.

Elastic, the Search AI Company, enables everyone to find the answers they need in real time, using all their data, at scale — unleashing the potential of businesses and people. The Elastic Search AI Platform, used by more than 50% of the Fortune 500, brings together the precision of search and the intelligence of AI to enable everyone to accelerate the results that matter.

Elasticsearch powers search, observability, and AI retrieval (RAG) for the world's largest organizations. We are seeking a Principal Software Engineer to join the Elasticsearch Performance team. In this role, you will lead architectural and code-level performance engineering initiatives. Your goal is to drive the continuous optimization and predictability of Elasticsearch performance, partnering with area-specific teams to unlock the full potential of our software.

Co do Twojej roli:

  • Posiadanie kluczowych inicjatyw inżynieryjnych dotyczących wydajności od architektury po produkcję, koncentrując się na dostarczaniu wysokiego wpływu optymalizacji.
  • Prowadzenie technicznego projektowania, planowania i realizacji głównych ulepszeń architektonicznych i kodowych dotyczących wydajności.
  • Opracowywanie podstawowych modeli wydajności i metodologii dla złożonych, rozproszonych systemów.
  • Prowadzenie strategii optymalizacji, aby zapewnić, że Elasticsearch pozostaje wydajny, przewidywalny i skalowalny w różnych środowiskach.
  • Profilowanie i analizowanie zachowania systemu w celu identyfikacji wąskich gardeł w logowaniu, metrykach, wyszukiwaniu wektorowym i ES|QL.
  • Zapewnienie solidnych benchmarków wydajności i wykrywania regresji zarówno dla architektur stanowych, jak i bezstanowych (Serverless).
  • Współpraca w całej firmie, aby wprowadzić myślenie o wydajności od samego początku w nowe funkcje.
  • Prowadzenie działań automatyzacyjnych poprzez projektowanie i budowanie wspomaganych przez AI narzędzi optymalizacyjnych, które usprawniają profilowanie, testowanie hipotez i benchmarking.
  • Mentorowanie i coaching innych inżynierów, promując kulturę doskonałości technicznej i rozwoju świadomego wydajności.

Co przynosisz:

  • Masz głęboką wiedzę na temat wewnętrznych mechanizmów Javy i zarządzania pamięcią JVM.
  • Rozumiesz, jak działają modele współbieżności.
  • Potrafisz pisać kod, który jest wydajny, bezpieczny dla wątków i wolny od blokad.
  • Masz udokumentowane doświadczenie w profilowaniu i optymalizacji rozproszonych systemów.
  • Posiadasz solidne zrozumienie architektury systemów rozproszonych, w tym tolerancji na partycjonowanie, propagacji stanu klastra i wyzwań związanych ze skalowaniem w dużych magazynach danych.
  • Masz udokumentowane osiągnięcia w wykorzystaniu AI lub zaawansowanych narzędzi do przyspieszania optymalizacji, debugowania złożonych problemów wydajnościowych i automatyzacji procesów benchmarkingowych.
  • Potrafisz współpracować w różnych funkcjach i zespołach, działając jako mnożnik siły dla inżynierii wydajności w całej organizacji.
  • Potrafisz pracować autonomicznie, podejmować decyzje i osiągać wyniki w rozproszonym zespole, korzystając z asynchronicznej, bezpośredniej i przejrzystej komunikacji.

Dodatkowe punkty:

  • Doświadczenie w integracji wysokowydajnych bibliotek natywnych (np. C++, Rust, kod przyspieszony SIMD) w aplikacjach Java.
  • Głęboka wiedza na temat wydajności nowoczesnych silników magazynowania, trybów indeksowania lub optymalizacji wyszukiwania wektorowego.
  • Doświadczenie w definiowaniu i zarządzaniu SLA wydajności oraz kryteriami sukcesu dla systemów rozproszonych.
  • Doświadczenie w pracy nad wewnętrznymi mechanizmami dużego magazynu danych lub silnika wyszukiwania.

Informacje dodatkowe - Dbamy o naszych ludzi:

Jako firma rozproszona, różnorodność napędza naszą tożsamość. Niezależnie od tego, czy chcesz rozpocząć nową karierę, czy rozwijać istniejącą, Elastic to firma, w której możesz zrównoważyć świetną pracę z życiem osobistym.

  • Konkurencyjne wynagrodzenie oparte na pracy, którą wykonujesz tutaj, a nie na poprzednim wynagrodzeniu.
  • Ubezpieczenie zdrowotne dla Ciebie i Twojej rodziny w wielu lokalizacjach.
  • Możliwość dostosowania kalendarza z elastycznymi lokalizacjami i harmonogramami dla wielu ról.
  • Hoja liczba dni urlopowych każdego roku.
  • Zwiększ swój wpływ - dopasowujemy do 2000 USD (lub równowartość w lokalnej walucie) na darowizny finansowe i usługi.
  • Do 40 godzin rocznie do wykorzystania na projekty wolontariackie, które kochasz.
  • Wsparcie dla rodzicielstwa z minimum 16 tygodni urlopu rodzicielskiego.

Obowiązki w zakresie bezpieczeństwa i prywatności:

Przyjmij odpowiedzialność za ochronę poufności, integralności i dostępności danych i systemów organizacyjnych, przestrzegając odpowiednich polityk, standardów i procedur dotyczących prywatności i bezpieczeństwa. Upewnij się, że wszystkie indywidualne wkłady są zgodne z Ramami Bezpiecznego Rozwoju Oprogramowania Elastic (SSDF). Proaktywnie uczestnicz w obowiązkowym szkoleniu opartym na roli, aby zapewnić, że osobista realizacja techniczna konsekwentnie odpowiada najwyższym standardom ochrony danych, prywatności danych i odporności systemu.

Różni ludzie podchodzą do problemów w różny sposób. Potrzebujemy tego. Elastic jest pracodawcą równych szans i zobowiązuje się do tworzenia kultury inkluzyjnej, która celebruje różne perspektywy, doświadczenia i tła. Kwalifikowani kandydaci będą brani pod uwagę przy zatrudnieniu bez względu na rasę, etniczność, kolor, religię, płeć, ciążę, orientację seksualną, postrzeganie lub tożsamość płciową, pochodzenie narodowe, wiek, stan cywilny, status weterana chronionego, status niepełnosprawności lub jakąkolwiek inną podstawę chronioną przez prawo federalne, stanowe lub lokalne, ordynację lub regulację.

Witamy osoby z niepełnosprawnościami i dążymy do stworzenia dostępnego i inkluzyjnego doświadczenia dla wszystkich osób. Aby poprosić o dostosowanie podczas procesu aplikacji lub rekrutacji, prosimy o kontakt pod adresem candidate_accessibility@elastic.co. Odpowiemy na Twoją prośbę w ciągu 24 godzin roboczych od złożenia.

Kandydaci mają prawa na mocy federalnych przepisów dotyczących zatrudnienia i mogą zapoznać się z poniższymi plakatami:

  • Plakat Ustawy o Urlopie Rodzinnym i Medycznym (FMLA)
  • Plakat Ustawy o Ochronie Pracowników przed Poligrafem (EPPA)

Elasticsearch opracowuje i dystrybuuje technologie i informacje, które podlegają amerykańskim i innym krajowym kontrolom eksportowym oraz wymaganiom licencyjnym dla osób, które znajdują się w lub są obywatelami następujących krajów i regionów objętych sankcjami: Białoruś, Kuba, Iran, Korea Północna, Syria lub Rosja, w tym anektowane przez Rosję terytoria Ukrainy (region Krymu, Ludowa Republika Doniecka (DNR), Ludowa Republika Ługańska (LNR), Chersoń lub Zaporoże). Jeśli znajdujesz się w jednym z wymienionych krajów lub jesteś obywatelem jednego z nich, może być wymagane zezwolenie na eksport jako warunek zatrudnienia w tej roli. Proszę pamiętać, że pochodzenie narodowe i/lub narodowość nie wpływa na kwalifikowalność do zatrudnienia w Elastic.

Proszę zapoznać się z naszą Polityką Prywatności.

Wynagrodzenie za tę rolę ma formę wynagrodzenia podstawowego. Ta rola nie ma zmiennego składnika wynagrodzenia.

W Elastic nasza filozofia wynagrodzeń ma na celu zapewnienie sprawiedliwego, konkurencyjnego i przejrzystego wynagrodzenia. Zakresy wynagrodzeń ustalane są na podstawie kombinacji zewnętrznych benchmarków rynkowych, wewnętrznych rozważań dotyczących równości płac oraz odpowiedzialności i złożoności związanej z każdą rolą. Takie podejście pomaga zapewnić spójność w porównywalnych rolach, jednocześnie pozostając konkurencyjnym na odpowiednich rynkach pracy.

Typowy zakres wynagrodzenia początkowego dla tej roli wynosi: 369 400 zł—584 300 zł PLN.

Principal Software Engineer – pracodawca: Elastic

Elastic to doskonały pracodawca, który oferuje dynamiczne środowisko pracy w sercu innowacji technologicznych. Pracownicy mają dostęp do licznych możliwości rozwoju zawodowego oraz wsparcia w nauce nowych umiejętności, a także korzystają z elastycznych godzin pracy i kultury współpracy, co sprzyja kreatywności i efektywności. Dodatkowo, lokalizacja firmy sprzyja integracji zespołowej i networkingowi w branży, co czyni Elastic idealnym miejscem dla ambitnych inżynierów oprogramowania.

E

Dane kontaktowe:

Zespół rekrutacyjny Elastic

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

Java internals
JVM memory management
Concurrency models
High-performance coding
Thread-safe programming
Profiling distributed systems
Benchmarking tools (flamegraphs, JMH, Rally)