Senior JAVA (lead) developer
Functie
Taakomschrijving:
- Het bewaken van de technische architectuur van systemen en applicaties in het team, samen met de technische architect, zodat voldaan wordt aan de concrete niet-functionele vereisten van het project, én aan de algemeen geldende architectuur-richtlijnen.
- Het bewaken van de technische richtlijnen rond software-ontwikkeling binnen het team
- Coaching van de andere ontwikkelaars binnen het team (ondersteuning, code reviews, …).
- Ontwikkelen binnen een Scrum aanpak.
Profiel
Competenties:
- ontwikkelervaring in een team.
- Ervaring en openstaan voor XP technieken (collective code ownership, test driven development, …).
- Communicatieve en coachende vaardigheden naar teamleden en het volledige team.
- Kennis hebben van evolutionair software design (object georiënteerd design, code en design patterns, simplicity, …).
- Actief willen meedenken met de functionele analisten en feedback geven.
- Ervaring met microservices-architectuur en -platformen, cloud-based solutions en aanverwanten zoals feature toggling, blue-green deployment, A/B testing.
- Ervaring in een DevOps-organisatie met het naar productie brengen van toepassingen met raakvlakken naar andere toepassingen in continuous delivery.
- Aandacht voor niet functionele vereisten zoals performantie, throughput, beschikbaarheid, onderhoudbaarheid.
- Kennis van en ervaring met diverse integratie-alternatieven (REST, messaging, …), event-drivenarchitectuur, API-management.
- Ervaring met Domain Driven Design.
- Frontend-ontwikkeling (Angular, Progressive Web Apps, …).
- Persistentie (relationeel data model, object/relational mappers, NoSQL, event sourcing, …).
- Remoting en serialisatie (SOAP, REST, XML, JSON).
- Java ontwikkeling: Java 8 en hoger
- Java enterprise ontwikkeling: JPA 2.0, JMS, Spring Boot, Spring Cloud
- Markup: XML, XSD, XSLT, HTML, CSS
- Web UI ontwikkeling: Angular
- Java persistentie: Hibernate, JDBC
- Webservices: SOAP, REST, JAXB, JAX-WS, JAX-RS, Spring MVC
- Java testing en logging: JUnit, slf4j, Mockito, Webdriver, Selenide
- Technische analyse: UML, UML tool (Enterprise Architect, Visio), design patterns, object-georiënteerde analyse en ontwerp, ERD
- Java build en integration: Maven, Jenkins, SonarQube
- Ontwikkelingsomgeving: IntelliJ, SQL Developer, andere tools is een plus
- J2EE Application Servers (WebLogic versie 8 en hoger)en Tomcat
- Versiebeheer: git
- Databaseontwikkeling: SQL, NoSQL
- Docker, Kubernetes en OpenShift, AWS
- Kafka