Java / Scala Developer
Widełki: 12 000 - 15 000 netto | B2B
W paru słowach:
Nad czym będziesz pracować? Coiote, Internet of Things, machine-2-machine,
product development - in-house-framework
Jakie technologie? Scala, MongoDB, Udash
Zagadnienia: concurrency, scalability, multi-node processing
Typ pracy? Full-stack
Jak pracujemy? tough problems - high user experience
80/20, can-do attitude, initiative
No-time-for-bullshit, #workwiththebest
A teraz konkretnie:
Zespół do, którego dołączysz zajmuje się budowaniem platformy
Coiote, która pozwoli w jednym miejscu zobaczyć i zarządzać urządzeniami w interakcji z systemami klienta.
Do tej pory w zespole zrealizowaliśmy projekty z zakresu:
- zarządzania kartami SIM dla wiodącego polskiego operatora GSM,
- zarządzania urządzeniami (tzw. on-board-unit) do automatycznego poboru opłat za przejazd.
Dlaczego akurat my?
Jeśli:
- chcesz pracować w niewielkim (6 osobowym), autonomicznym zespole,
- interesują Cię zagadnienia z zakresu IoT i M2M,
- chcesz pracować nad systemem obsługującym miliony urządzeń na raz,
- lubisz łączyć i efektywnie wykorzystywać swoją wiedzę z różnych dziedzin IT,
- lubisz szybkie wdrażanie najlepszych rozwiązań i brak zbędnej biurokracji,
- poszukujesz środowiska pracy otwartego na Twoją inicjatywę - zachęcamy, a wręcz tego oczekujemy,
- chcesz pracować nad nowymi rozwiązaniami,
- lubisz elastyczny dobór zadań - możesz pracować full-stack.
… to z nami wszystko to jest na wyciągnięcie ręki.
Co oferujemy?
- 26 dni płatnego urlopu
- Dużą decyzyjność zespołu
- Pracę w środowisku będącym na bieżąco z nowoczesnymi technologiami
- Możliwość rozwoju osobistego w wielu dziedzinach i podniesienia kwalifikacji
- Darmowe śniadania i lunche oraz kuchnię pełną smakołyków
- Elastyczne godziny pracy
- Firmowy parking i rowerownię
- Kartę Multisport
- Swobodną atmosferę w pracy - no dress code, no open space, no bullshit!
Co dokładnie będziesz robić?
- implementować funkcjonalności, wg. Twojej najlepszej ekspertyzy i wybranych technologii,
- code-review zarówno dla podnoszenia jakości produktu, jak i dla rozwoju zespołu,
- pisać testy jednostkowe oraz bieżące testy integracyjne - weryfikacja i współpraca nowego komponentu z istniejącymi funkcjonalnościami,
- debugować /naprawiać znalezione defekty i działać na drugiej linii wsparcia dla działu Supportu (poniżej 10% czasu).
Z czym aktualnie walczymy?
Zagadnienia, z którymi aktualnie się mierzymy:
- koordynacja komunikacji z wieloma systemami / urządzeniami w instalacji wielo-węzłowej, co wiąże się z rozwiązywaniem problemów:
- konsystencji danych,
- wielodostępu,
- Node-affinity
- przy czym, poza poprawnością przetwarzanych danych interesuje nas wysoka wydajność systemu.
- budowa frameworku wykonywania zadań - interpreter skryptów, wykonywanych asynchronicznie komend,
- budowa edytora widoków.
Technologie:
Narzędzia:
- Jenkins
- Intellij IDEA
- Git
- Jira, GitLab
Metodyka pracy:
Cenimy wartości Agile i w procesie budowy produktu wykorzystujemy Scrum, jednak traktujemy proces jako narzędzie i modyfikujemy go w miarę potrzeb.
Uzyskasz wsparcie ze strony:
-
Product Managera - odpowiedzialnego za kontakty z klientem końcowym i formułowanie wymagań,
-
UX designera - odpowiedzialnego za kształtowanie interakcji użytkownika końcowego z produktem i projekt wizualny interfejsu,
-
Zespołu QA - odpowiedzialnego za końcową jakość produktu,
-
Zespołu deweloperów - o wieloletnim doświadczeniu w wykorzystywanych technologiach i domenie biznesowej,
-
Całego zespołu AVSystem - wierzymy we własne umiejętności, a wzajemna pomoc jest częścią naszej kultury organizacyjnej.
Cały zespół projektowy jest dostępny biurko obok i jest decyzyjny.
W jaki sposób się rozwiniesz?
- gwarantowana praca w doświadczonym zespole i podniesienie swoich kompetencji technicznych,
- rozwój w kierunku Product/Project Managementu,
- możliwość rozwoju naszych projektów open source.
Czego oczekujemy:
-
Scala jest wiodącym językiem programowania - nowe funkcjonalności są budowane wyłącznie w tym języku, a kontakt z Javą ogranicza się wyłącznie do wykorzystania bibliotek. Biegłość będzie dużym atutem, jednak jeśli do tej pory nie miałeś do czynienia z tym językiem, oczekujemy nastawienia na zdobycie nowych umiejętności. Uważamy, że dotychczasowy specjalista Javy/JVM sobie z tym poradzi. Z naszej strony pomagamy poprzez cykl szkoleń
(materiały: https://github.com/ghik/opinionated-scala/wiki),
- odpowiedzialności za zespół i budowane rozwiązanie,
- chęci do działania, umiejętności postrzegania big-picture i aktywnego wkładu w rozwój platformy,
- wykształcenia wyższego technicznego (preferowane kierunki: telekomunikacja, teleinformatyka lub informatyka)
- funkcjonalna znajomość protokołów sieciowych,
- znajomości zagadnień - bazy danych (na plus NoSQL), system design, programowanie obiektowe, algorytmy i struktury danych, Unix, front-end (umiejętność budowy interfejsów i znajomość podstawowych technologii, nie oczekujemy bycia ekspertem HTML/CSS/JavaScript),
- znajomości języka angielskiego na poziomie B2 lub wyższym
- doświadczenia i wiedzy, liczymy, że również nauczymy się czegoś nowego.
Na duży plus:
- Bardzo dobra znajomość Scali
- Praktyczne doświadczenie w wykorzystywanych przez nas technologiach
- Doświadczenie w dziedzinie IoT
- Doświadczenie w branży telco
- Doświadczeniu w budowie oprogramowania wielowątkowego
- Doświadczenie w realizacji dużych projektów (zakres i czas)
- Doświadczenie w pracy w projektach związanych z integracją SOAP/REST/JMS