I am an experienced Java developer/architect who provided applications and solutions for companies on the national and international level in Belgium and the European Union. I can deliver turnkey applications for various businesses and cover almost all aspects of this process: alignment on uses cases, application design, development, (unit, integration, performance) testing, continuous build, deploy, release and support. I enjoy translating business challenges into useful applications because for me it is a personal fulfilment and my contribution to the society. I always try to keep up with the modern technologies, tools and methodologies. In most cases I used to work with agile methodology. I have worked on a wide range of projects from as simple as making this website to complex systems used across many countries. Most of the IT projects require coordinated efforts of many people - team(s) of developers, project managers, business analysts, testers. I have used to work in such environment mostly in technical lead and architectural roles to align on the requirements implementation, manage developers and provide an overall application design.
I have written a lot fo code and every time I try to create as few lines of code as
possible to achieve the goal but not at the expense of clarity. There are so many frameworks and tools that facilitate the application development these days.
In Java it is probably Spring/Spring Boot ecosystem that is dominating for new projects. My recent project were Spring Boot based and I have observed
a significant productivity/quality gains from configurations by default for various systems (messaging, database, web services etc.), embedded web server and
outstanding testing support.
Businesses are integrating a lot of things these days so some sort of message routers or complete enterprise service buses are used almost everywhere. I have recently worked with Apache Camel in the project to modernize the Belgian social security system and with Spring Integration for new applications to merge banking systems of Belgium and Netherlands.
For my private projects I prefer to use Python to make some experiments in the data science and artificial intelligence fields.
Testing is a very important part of the development process. Developers need to prove their implementation contract
by unit tests. Components need to work together and this has to be proved by integrations tests. There should be no regression and the performance
of the overall system should comply with the non-functional requirements.
All this should be planned, executed and controlled from the begging of the project till the end. Test coverage reports give some peace of mind to the management. Green light after tests does the same for developers. Architects feel more comfortable if they are reasonably sure that the new system will not collapse under some load in production etc.
ING bank has decided to merge its Belgian and Dutch operations in one cloud/micro-service based platform (Unite).
As a technical lead I was responsible for the design and development of a new credit risk assessment application. The application was based on Spring Boot with some custom ING extensions for security. It exposes and consumes REST APIs (Swagger) and also consumes services via Tibco and WMQ. The file exchange (sftp and xfb) was implemented via Spring Integration. When the foundation for the credit risk assessment application was created I had to leave the project in Brussels because my wife got an assignment in Singapore where I am located now.
The Belgian government has ordered a new version of the Social Security system running on Java to its dedicated IT
contractor Smals. As an application architect I was developing the business logic of several modules in JEE/Spring/Spring Boot
and user interfaces in Angular.
Apache Camel was used to manage the message exchange between modules. The system runs on several JBoss and WebLogic servers with Oracle database. The development and deployment have been done on time without major issues.
I was an architect and lead developer for this project.
The business process can be describes as following: Car dealers are using on-line technical documentations of cars for their service needs. After logging in they are can reach relevant interactive documentation and other information depending on their access level. The documents come continuously from various sources all over the world. Some documents/information has to be delivered to dealers with a higher priority than others are. The documents should be accessible base on the context e.g. car/electrical system or as a flash message on a dealer screen after a log in. The statistical information of the application usage should be available to the European and country level headquarters.
The implementation was using Apache Lucene with specific indexing rules and Spring/Spring Web. The application was deployed on WebSphere servers. This project was the first to use Apache Lucene based technologies in Toyota.