IT and R&D
Remote
IT and R&D
Remote
Backend Python Developer (Stats)
44
current job openings
30+
global offices
1,500+
people on board
Jako backend developer dołączysz do zespołu rozwijającego platformę przetwarzającą ogromne ilości danych źródłowych w kompaktowe agregaty publikowane za pośrednictwem szybkich, nowoczesnych API. Będziesz miał okazję pracować z najnowszym stackiem technologicznym w dojrzałym projekcie o bardzo dużej skali, w którym główny nacisk położony jest na niezawodność i wysoką wydajność tworzonych rozwiązań.
Twoje zadania:
- Projektowanie i implementacja wydajnych procesów do przetwarzania i agregowania dużych zbiorów danych;
- Implementacja i utrzymanie rozwiązań do udostępniania przeliczonych statystyk innym systemom i użytkownikom wewnętrznym;
- Modernizacja i optymalizacja istniejących systemów w odpowiedzi na ciągle zwiększającą się skalę;
- Zapewnienie niezawodności i skalowalności budowanych rozwiązań;
- Tworzenie wysokiej jakości kodu adresującego potrzeby biznesowe;
- Współpraca z innymi zespołami przy budowaniu komponentów rozproszonego systemu;
- Udział w budowaniu kultury technicznej opartej na dbałości o jakość tworzonych rozwiązań.
Wykorzystywanie narzędzia i technologie:
- Python (m.in. asyncio, FastAPI, Pydantic, typowanie, lintery);
- Google Cloud (m.in. BigQuery, Cloud SQL for Postgres);
- PostgreSQL (raw SQL, query builders);
- Docker, Kubernetes, Argo CD, Argo Workflows;
- Github;
- Sentry.
Nasze wymagania:
- Doświadczenie w programowaniu w języku Python, z wykorzystaniem nowoczesnych mechanizmów, m. in. asyncio, typing;
- Wiedza w zakresie programowania współbieżnego i asynchronicznego;
- Bardzo dobra znajomość SQL-owych baz danych (PostgreSQL, mile widziane BigQuery);
- Umiejętność projektowania i implementacji serwisów (HTTP, REST, mile widziane GraphQL);
- Znajomość zagadnień architektury systemów z naciskiem na wydajność i skalowalność;
- Doświadczenie w pracy na dużych zbiorach danych;
- Poczucie odpowiedzialności za dostarczane rozwiązania;
- Komunikatywność, umiejętność pracy w zespole.
Przykładowe tematy:
- Stworzenie joba liczącego agregaty na podstawie surowych danych;
- Optymalizacja czasu wykonania i kosztów joba liczącego agregaty;
- Optymalizacja zużycia zasobów instancji PostgreSQL przez dobór parametrów konfiguracyjnych;
- Zbudowanie serwisu HTTP udostępniającego dane użytkownikom;
- Projektowanie rozwiązań do efektywnego przechowywania i zarządzania danymi w partycjonowanych tabelach PostgreSQL;
- Migracja na Capacity Based pricing BigQuery z modelu On Demand;
- Stworzenie dashboardu do obserwacji wydajności i kosztów utrzymywanych jobów;
- Migracja tabel z bazy danych on-premise do instancji na Cloud SQL;
- Stworzenie mechanizmu śledzenia zmian w tabelach z danymi źródłowymi;
- Stworzenie asynchronicznego klienta do BigQuery;
- Migracja serwisu z Flask na FastAPI;
- Optymalizacja zapytań do BigQuery poprzez użycie partycjonowanych tabel lub zmaterializowanych widoków.
W zamian oferujemy:
- Przyjazną atmosferę współpracy z jasno określonymi zadaniami, w zorganizowanym zespole profesjonalistów;
- Wyjątkowo elastyczne warunki współpracy;
- Dostęp do najnowocześniejszych technologii i możliwość realnego wykorzystywania ich w projekcie o dużej skali i wysokiej dynamice.