JustJoin.IT Praca zdalna Senior

Senior Software Engineer (Java)

AdsHero

⚲ Warszawa

Wymagania

  • Apache Kafka
  • PostgreSQL
  • Kotlin
  • BigQuery
  • MongoDB
  • Java
  • Scala

Opis stanowiska

O nas Jesteśmy startupem tworzącym rozwiązania reklamowe dla szybko rozwijającego się świata e-commerce. Nasz team tworzą eksperci z wieloletnim doświadczeniem zdobytym w największych firmach e-commerce - Allegro oraz Adtech - Netsprint. Tworzymy unikatowy produkt w regionie CEE i możesz być tego częścią. Aktualnie poszukujemy do naszego zespołu doświadczonej osoby na stanowisko: Senior Software Engineer (Java) Lokalizacja: 100% Zdalnie Forma współpracy: Umowa B2B O nas i o projekcie Szukamy doświadczonego Senior Software Engineer do pracy nad systemem reklamowym i produktami optymalizującymi sprzedaż w dynamicznie rozwijającej się branży retail media. Rozwijamy zaawansowaną platformę, która łączy marki, sprzedawców i sklepy e-commerce, optymalizując zyski każdej ze stron. Dołączysz do zespołu odpowiedzialnego za kluczowe komponenty systemu, pracując nad skalowalnymi rozwiązaniami przetwarzającymi duże wolumeny danych. Jeśli programujesz w Javie, myślisz analitycznie i potrafisz dostrzegać reguły oraz anomalie w danych, a do tego znasz branżę e-commerce - to jest rola dla Ciebie. Twoje zadania: • Analiza i projektowanie rozwiązań we współpracy z Product Ownerem i zespołem. • Rozwój istniejącego systemu reklamowego poprzez optymalizację algorytmów doboru reklam i implementację nowych funkcji. • Tworzenie wysokowydajnych mikroserwisów w oparciu o architekturę sterowaną zdarzeniami. • Implementacja jobów przetwarzających dane z wykorzystaniem BigQuery. • Integracja z zewnętrznymi systemami reklamowymi i partnerskimi. • Wdrażanie, monitorowanie i utrzymanie aplikacji na środowisku produkcyjnym (Kubernetes). Czego oczekujemy (must-have): • Minimum 5 lat komercyjnego doświadczenia w programowaniu na platformie JVM (Java 17+, Kotlin lub Scala). • Bardzo dobra, praktyczna znajomość Spring Boot 3 i ekosystemu Spring. • Doświadczenie w pracy z architekturą mikroserwisową i systemami rozproszonymi. • Praktyczna znajomość systemów kolejkowych, w szczególności Apache Kafka. • Doświadczenie z relacyjnymi i nierelacyjnymi bazami danych (PostgreSQL, MongoDB, Elasticsearch). • Umiejętność wdrażania i monitorowania aplikacji na produkcji w oparciu o Kubernetes. • Duża samodzielność, proaktywność i produktowe spojrzenie na realizowane zadania. • Zorientowanie na jakość i dobre praktyki, w tym pisanie testów jednostkowych i integracyjnych (np. JUnit, Mockito, Testcontainers). Mile widziane (nice-to-have): • Doświadczenie w branży AdTech, MarTech lub E-commerce. • Praktyczna znajomość BigQuery lub podobnych hurtowni danych. • Znajomość narzędzi do monitoringu, takich jak Prometheus, Grafana. • Kontrybucje do projektów open-source. • Doświadczenie w obszarze data engineering i przetwarzania dużych zbiorów danych. Co oferujemy: • 100% praca zdalna – pracuj z dowolnego miejsca na świecie. • Elastyczne godziny pracy – dostosuj pracę do swojego rytmu dnia. • Nowoczesny stack technologiczny i realny wpływ na jego kształt. • Realny wpływ na produkt – Twoje pomysły i rozwiązania mają bezpośrednie przełożenie na biznes. • Doświadczony i zgrany zespół, od którego można się wiele nauczyć. • Współpraca w oparciu o umowę B2B. Proces rekrutacji: Nasz proces jest prosty, transparentny i skupiony na partnerskiej rozmowie. Zależy nam na tym, abyśmy mogli jak najlepiej się poznać. Zwykle składa się z dwóch głównych etapów, po których przedstawiamy ofertę. • Wstępna rozmowa (ok. 30 minut) • To krótka, zdalna rozmowa, podczas której opowiemy więcej o firmie i projekcie. Chętnie poznamy Twoje doświadczenie i odpowiemy na pierwsze pytania. • Rozmowa techniczna (ok. 60-120 minut) • Spotkanie z inżynierami z zespołu. Rozpocznie się od krótkiego wprowadzenia produktowego, aby dać Ci pełen kontekst tego, co robimy. • Część techniczna to dyskusja i wspólne rozwiązywanie problemów. Spodziewaj się pytań z obszarów:Algorytmy i bazy danych (z krótkim zadaniem programistycznym, gdzie liczy się pomysł, a nie składnia). • Projektowanie systemów (System Design), gdzie wspólnie zaprojektujemy fragment jednego z naszych systemów. • Praktyczne doświadczenie – porozmawiamy o utrzymaniu aplikacji na produkcji, debugowaniu i dobrych praktykach inżynierskich. • To także doskonały moment, abyś Ty zadał nam pytania o technologię, kulturę pracy czy cokolwiek, co jest dla Ciebie ważne. Po tych etapach kandydatom, z którymi zdecydujemy się na współpracę, przedstawiamy ofertę. Staramy się, aby cały proces był sprawny, a na każdym etapie otrzymasz od nas informację zwrotną.