Hoe ziet de werkdag uit van een java developer?
Momenteel werk ik in een scrum team van ongeveer zes ontwikkelaars, een tester, een scrum master en een product owner. De bestaande code waar dit team voor verantwoordelijk is, is behoorlijk clean en daar wordt ook aandacht aan besteed tijdens het reviewen van code. Het team is onderdeel van een groter geheel van teams dat volgens een enterprise variant van distributed Scrum werkt. In principe zijn alle ontwikkelaars in het team gelijkwaardig en rondt iedereen zelfstandig user stories af in de volgorde van de product backlog. Als er moeilijkere ontwerpbeslissingen genomen moeten worden of als er onduidelijkheden over een user story zijn, dan wordt er met meerdere mensen overlegd. Elke twee weken is er een demosessie, waarin alle teams hun voortgang demonstreren.
Wat vind je het leukste van java development?
Persoonlijk vind ik de statische typering in de praktijk een van de handigste eigenschappen van Java. Doordat de compiler op basis hiervan in staat is om allerlei controles te doen, voel ik me vrijer om bestaande code te refactoren. Dat is het eerste wat ik mis als ik aan een project werk waarin bijvoorbeeld JavaScript of Ruby gebruikt wordt.
Daarnaast heeft de volwassenheid van Java veel voordelen. Voor de meeste problemen of toepassingen zijn meerdere oplossingen voorhanden. Daardoor kun je vaak grote stappen zetten door voort te borduren op het werk van anderen en heb je de keuze uit verschillende alternatieven. Ik vind het mooi om te zien hoeveel je soms met Java-projecten kunt bereiken met relatief weinig moeite.
Welke trends zie je op java development gebied?
Tijdens conferenties merk ik dat reactive programming op dit moment populair is. Technologieën als Vert.x, Ratpack en Reactor komen regelmatig langs. Ik heb er zelf nog geen ervaring mee, maar ik ben wel benieuwd naar de voor- en nadelen vergeleken met de meer traditionele technieken in de Java-wereld.
De laatste weken wordt er regelmatig over Kotlin geschreven, wat aangeprezen wordt als concurrent voor Java voor het ontwikkelen van mobiele apps voor Android. Ik zou het mooi vinden als Java als taal wat kon leren van Kotlin, net zoals Java EE in het verleden geleerd heeft van Spring. Java 8 met zijn lambda’s en streams is een serieuze verbetering ten opzichte van Java 7, maar er is altijd ruimte voor verbetering.
Kennisdeling vind jij belangrijk, welke bijdrage heb jij hierin gehad?
Afgelopen jaar heb ik een presentatie gegeven over JSON web tokens tijdens een Meetup voor Java-ontwikkelaars in Eindhoven. Daarnaast heb ik samen met Vivian een Meetup in Weert georganiseerd over Java micro frameworks. Op basis van deze laatste Meetup heb ik samen met collega Pascal Widdershoven een workshop samengesteld die we twee keer voor de Fontys in Eindhoven hebben begeleid.
Wat was je leukste project en waarom?
Het werken in de back end voor een health watch van Philips. Deze back end bestaat uit een aantal samenwerkende micro services die met elkaar communiceren via REST over HTTP en asynchrone berichtenuitwisseling via RabbitMQ. Elk van deze micro services is een Spring Boot applicatie. Er is al een aantal jaar aan dit systeem gewerkt voordat ik bij het project betrokken werd en de code is van een hoge kwaliteit. Daardoor biedt dit project een mooie kans om in de praktijk te leren van het werk van anderen. Daarnaast vind ik de gezondheidszorg een interessant domein om in te werken.
Luc, bedankt voor het interview.
Wil jij meer weten over Java development of heb je een vraag voor Luc, laat dan een bericht achter in de comments. Lijkt het jou ook leuk als om Java developer aan de slag te gaan bij Kabisa? Stuur je sollicitatie of neem contact op via telefoonnummer 0495-430798.