Java fejlesztő

Pozíció leírása

Tapasztalt Java fejlesztő kollégát keresünk munkavállalói státuszban backend fejlesztési feladatok ellátására. A feladataid közé fog tartozni a meglévő rendszerek karbantartásán túl az új fejlesztések kiszolgálása backend oldalról egy korszerű, microservice alapú architektúrában. Lehetőséged nyílik továbbá a Kotlin programozási nyelv elsajátítására és használatára is.

  • Tech stack: Java 11/Kotlin, Typescript, Kafka, Spring framework, Rest api, Mysql, Bitbucket, Jenkins, AWS és saját szerverpark, Docker
  • Atlassian (Jira, Bitbucket, Confluence) és Jetbrains szotftverkörnyezet
  • Java és Kotlin alapú microservice-k fejlesztése
  • Magas színvonalú, újrahasznosítható, „tiszta” kód írása
  • Tesztek írása
  • Rendszertervezés
  • Architekturális problémák felismerése és javítása, teljesítmény optimalizáció
  • Adatbázistervezés
  • Adatbázis lekérdezések optimalizálása

Mit kínálunk?

  • Tapasztalattól és tudástól függő versenyképes fizetés, valamint egyéb béren kívüli juttatások
  • All You Can Move sportkártya vagy Medicover privát egészségbiztosítás, havi csapatépítő keret és negyedéves céges rendezvények
  • Szakmai in-house workshopok, tréningek és egyéni angol tanfolyam anyanyelvi tanárokkal
  • Lehetőség home office-ra vagy távmunkára, rugalmas munkaidővel (nincs kötelező törzsidő)
  • Szakmai fejlődési lehetőségek egy nemzetközi, technológia- és emberközpontú vállalatban
  • Nagyvállalati stabilitás és részben startup-szerű rugalmas működés ötvözete
  • Modern technológiák és toolok használata
  • Változatos projektek cégen belüli könnyű átjárással
  • Kis létszámú csapatok, ahol a csapat minden tagja aktívan részt vesz a döntéshozatalban
  • Alacsony stressz-szintű környezet és tervezhető munkafolyamatok
  • Bízunk egymásban, elvárjuk az önállóságot, viszont nem mikromenedzselünk


Követelmények

Általános szoftverfejlesztői ismeretek

  • Általános szoftverfejlesztői ismeretek
    • Algoritmikus komplexitás fogalma, alapvető algoritmusok
    • Memóriakezelési alapok (heap, stack)
    • Kivételkezelés
    • Clean code koncepciók
    • Alapvető szálkezelési ismeretek
  • Objektum orientált programozási ismeretek
    • Alapkoncepció, polimorfizmus, absztrakciós modellek
    • Tervezési minták: MVC, Dependency Injection, Adapter, Factory ismerete
    • SOLID koncepciók ismerete
  • Gyakori UML diagramok ismerete (class diagram, activity diagram, deployment diagram)
  • Linux felhasználói szintű ismeretek (SSH, Bash, jogosultságkezelési alapok)
  • Git alapszintű ismerete
    • Commit, push, fetch használata
    • Branching, merge commitok készítése

JAVA ismeretek

  • Tapasztalat Java keretrendszer használatában (Spring, Guice, EE CDI)
  • Tapasztalat ORM rendszer használatában (JPA, Hibernate, egyéb)
  • Build folyamat ismerete, függőségek kezelése (Maven, Gradle, Ant)
  • Típusok, kulcsszavak működésének ismerete (class, interface, static, final stb.)
  • Szálkezelés (Thread, Runnable, ExecutorService)
  • Memóriakezelés, JVM (referencia, stack, heap, GC)
  • Java features (String pooling, autoboxing, foreach, Iterable)
  • Collections API (List, Stack, Queue, Set, Map)
  • Kivételkezelés (checked/unchecked exception, try/catch/finally)
  • Teljesítményoptimalizálási és debug módszerek / tool-ok ismerete

Adatbázis ismeretek

  • Adatbázis anomáliák, normálformák, normalizáció
  • Egyedkapcsolati (ER) diagram tervezése, értelmezése
  • Külső kulcsok, egyedi kulcsok, constraint-ek
  • Indexek
  • Konkurens adatkezelési anomáliák, tranzakciók
  • Összetett SQL lekérdezések
  • Lekérdezések optimalizálása

Előnyt jelent

  • Docker használatában szerzett tapasztalat
  • CI/CD tapasztalat
  • Redis, Apache Kafka ismerete
  • Unit tesztelésben szerzett tapasztalat (JUnit, Mockito)
  • Java EE tapasztalat
  • Kotlin ismerete
  • Webszolgáltatások ismerete (pl. SOAP, JSON REST)

Szeretnénk, ha leendő munkatársunkként az alábbi készségekkel rendelkeznél

  • Legalább középfokú angol nyelvtudás írásban és szóban
  • Jó kommunikációs készség
  • Proaktív, kezdeményező, megoldás-orientált hozzáállás, innovatív szemlélet
  • Igény a folyamatos fejlődésre hard és soft skillekben egyaránt
  • Csapatban történő munkavégzésre való képesség