| ![]() |
| I am focused and driven professional with more than 10 years experience in software development, both in industry as well as academia. I endorse a hands-on mentality and remain keen on continuously delivering business value. I also promote an adequate understanding of the business domain, as this translates directly to clean and maintainable software (i.e. domain driven design). I prefer to be part of a team, but can be equally productive when working independently. In most projects I am involved in application design and architecture, but I find it equally rewarding to actually implement clean and maintainable software that is appreciated by customers. I seize the opportunity to assist colleagues whenever possible and am actively involved in conveying knowledge and skills, among others by maintaining a corporate weblog on my Linux server at home. |
| IT-Essence is the name of my company from which I offer my services as IT consultant. These services cover the following areas: · Application architect · Technical team lead & senior Java/JEE developer · Consultant applicaiton development · Consultant business process redesign (Agile) |
| IT-Essence | · | I conceived and implemented the website http://www.contract-crawler.nl/ |
| ING | · | I designed an ING securities domain model and wrote an accompanying software architecture document (SAD). |
| · | Promoted direct communication between the business (i.e. the product manager) and development team. | |
| · | Finished deliverables that were under my supervision within budget and on time. | |
| Fortis | · | Introduced test-driven development as well as continuous integration for various projects. |
| · | I wrote extensive documentation on FX options, thereby improving understanding of the business domain. | |
| · | Successful coordination between the business in Brussels and the development team in Amsterdam. | |
| · | I wrote software architecture documents, designed a domain model and managed regular feedback to both the architecture board and the team that delivered generic portal components. | |
| Amis | · | Setup of the Amis technology corner / weblog: http://technology.amis.nl/blog/. |
| General | · | Consultant with extensive experience in architecture, design and implementation of multi-tiered (JEE) applications, Web technology & distributed applications. |
| · | Passionate trainer with strong didactic skills. | |
| · | Linux and Open Source enthusiast. | |
| Branches | · | Consultancy / banking & financial industry / government / academia / retail |
| Languages | · | ·Java, C, C++, Fortran, Pascal |
| · | (X)HTML, XML, XSD, XSL(T), SQL | |
| Databases | · | Oracle, PostgreSQL, MySQL, Hypersonic DB |
| App. Servers | · | WebSphere (Application and Portal Server), Apache Tomcat, JBoss, Jetty |
| Platforms | · | Unix/Linux server + desktop, Beowulf clusters, Windows NT/XP, Sparc Solaris, IBM AIX. |
| Frameworks | · | Spring, Hibernate, Apache commons, Apache Lucene, Apache Axis, JUnit, DBunit, Castor. |
| · | Wicket, Spring MVC, Struts, Velocity/Freemarker. | |
| · | Java/Swing, X/Motif. | |
| Concepts | · | Agile development methodologies: RUP, Scrum, XP (Test-Driven Development). |
| · | OOA/OOD (UML, design patterns, refactoring), web services, loosely coupled systems. | |
| APIs | · | JPA, EJB, JSP, JSR-168, JMS, JAX-B, JDBC, JAX-P, JAX-RS, SOAP, JAAS, MPI, PVM. |
| Software | · | Eclipse (+ RAD/RSA), CVS, Subversion, Maven, Continuum, Hudson, Bamboo, Ant, Globus toolkit. |
![]() |
September 2009 - present |
|
| Role | · | Enterprise Application Integration consultant |
| Project | · | Together with JWorks and 42 I am working for Nidera Rotterdam on the integration of both the financial transaction data and master/reference data, such as companies, counterparties and commodities by developing a master data storage (MDS). The MDS encompasses the development of adapters that interface these reference data to the various back-end systems such as Commodity XL and Agresso Business World. |
| Environment | · | Scrum, Java 6, Subversion, Wicket, Spring, JPA, JAX-RS, JAX-B, JAX-P, Maven, Bamboo, Fitnesse, Selenium, Oracle. |
![]() |
February 2010 |
|
| Role | · | Consultant product lifecycle management |
| Project | · | Stream B.V. models business process flows by offering a product that is based on Petri nets and an associated content management system. I solved a long standing problem that was related to the integration of the automated build (Maven) and the development of Eclipse plug-ins using Eclipse itself, resulting in a report that summarized the solution and my findings. |
| Environment | · | Java 6, Mercurial, Maven, Hudson, OSGi, Eclipse. |
![]() |
November 2008 - present |
|
| Role | · | Owner: application architect & senior developer |
| Project | · | I conceived and realized the site http://www.contract-crawler.nl/, consisting of a crawler bot that hunts for new interim/freelance contracts and a web page disclosing the fetched contract data using Apache Lucene. After registration, users can be notified by e-mail when new contracts have been collected which satisfy personalized search criteria. Customizable RSS feeds and rating of agencies are provided as well. |
| Environment | · | Java 6, JPA (Hibernate), JAX-P, Wicket, Spring, Lucene, PostgreSQL, Maven, CVS. |
![]() |
February 2009 - August 2009 |
|
| Role | · | Senior Java developer |
| Project | · | For the Dutch Chamber of Commerce a new company register is developed with associated web application with which register data can be disclosed and managed. I assisted with the realization and implementation of a domain model representing the complex business logic of the Chamber of Commerce, imposed by the Dutch Tax and Customs Administration. |
| Environment | · | Agile, Hibernate, Spring, Maven, CVS, DB2. |
![]() |
December 2008 |
|
| Role | · | Consultant performance analysis. |
| Project | · | I did an analysis and resolution of some major performance bottlenecks that are associated with database access from a Java/Swing-based application as well as from a web-based application. These findings have been summarized in a tailor-made report. |
| Environment | · | JPA, Java 5, JSF, Java/Swing, EclipseLink, Maven, Subversion, MySQL, DB2. |
![]() |
September 2008 - November 2008 |
|
| Role | · | Consultant product lifecycle management. |
| Project | · | A quickscan was performed at Center Parcs. The focus was on the Maven-based build environment meant for the realization of test-driven development and continuous integration. Assistance was offered for the realization of the recommendations from the quickscan report, i.e. a reorganization of the project structure. |
| Environment | · | Java 5, Maven, Subversion, Bamboo server, JBoss, Fitnesse testing framework, EJBs, JDO. |
![]() |
January 2008 - October 2008 |
|
| Roles | · | Technical lead & Application architect |
| Project | · | The Tango project entails one of the largest mergers in the history of Dutch banking, in this case the merger of the Dutch Postbank and ING. As part of the WebSphere securities team, which received ING highest performing team award within the TANGO-project, my team delivered the brokerage intranet application on time and within budget. I successfully managed and coordinated communication with the design, maintenance and test teams. In addition I authored the software architecture document. As Java developer I developed various batch jobs as well as an intranet application for the management of rejected messages. |
| Environment | · | Maven, Wicket, Spring, Hibernate, EJB, IBM MQ, XML, XSD, Castor, WebSphere, RAD. |
![]() |
September 2007 - December 2007 |
|
| Role | · | Senior Java developer. |
| Project | · | I implemented a gateway that processes and relays cash management messages. The gateway normalises, validates and reconciliates various types of cash management data, such as transactions, specifications and balances. These data arrive from various Rabobank product platforms and are fed to CoConet's Multiversa IFP (International Finance Portal), the interaction platform for the customers. As a result, Multiversa only needs to support one type of reporting process that is guaranteed to be valid. |
| Environment | · | IBM MQ Series, MyEclipse, Java 5. |
December 2006 - July 2007 |
||
| Role | · | Technical team lead & Application architect |
| Project | · | Global Cash Management is a high-end cash management service offered to corporate clients by the Midas Plus cash management package. I was technical lead of part of the WebSphere Competence Center team. This team was assigned to the task of disclosing cash management functionality to corporate clients via the single point of access of the Merchant Bank and Commercial Bank business lines, the so-called MBCP portal. To this extent my team implemented a portlet that interacts with the Midas Plus back-end via J2EE web services. The portlet provides global customers access to the portal 24 x 7. As a team lead, I successfully managed the communication between the analysts in Brussels and the developers in Amsterdam. |
| Environment | · | JSR-168 portlets, WebSphere portal, Spring, Web services, RUP & continuous integration. |
January 2006 - December 2006 |
||
| Role | · | Senior Java/JEE developer & junior application architect |
| Project | · | Online trading offers automated trading functionality to authorized users of the Merchant Banking Client Portal (MBCP). The MBCP is a WebSphere Portal Server (WPS) based Internet application for Fortis Bank customers. As Java developer I designed and implemented the trade server, the central component of the online trading system. I wrote various documents, such as an architecture document proposing a redesign of the online trading messaging layer and extensions for option trading based on streaming prices. I also promoted and delivered documentation on the theoretical basics of option trading to Java developers. |
| Environment | · | Maven, WPS, Eclipse. Spring, JMS, AJAX, Windows/Linux, IBM/AIX. |
January 2005 - January 2006 |
||
| Role | · | Senior Java/JEE developer & software quality assurance |
| Project | · | The Merchant Banking Client Portal (MBCP) is a WebSphere Portal Server (WPS) based Internet application for Fortis Bank customers that "brings the services of the dealing room to your desk" and is completely developed in-house by the WebSphere Competence Center. New enhanced releases of the MBCP are delivered on a regular basis. Meanwhile a RUP-based procedure was introduced to the WebSphere Competence Center to improve the software development process. |
| Environment | · | WebSphere Portal Server (WPS), Eclipse. Spring, Struts, Hibernate, Ant, Maven, RUP. Windows, Linux, IBM/AIX. |
June 2004 - December 2004 |
||
| Role | · | Senior Java/JEE developer & JEE research and development |
| Projects | · | Set-up of Linux/Unix server and software hosting the Amis technology corner. |
| · | Various R&D activities for the knowledge centers, writing articles on the technology corner. | |
| · | Audit of the software managing customer transactions at the business points (outlets) of a Dutch posting service agency (TPG post). | |
| · | Design and implementation of a timesheet application by placing a multi-tiered J2EE architecture on top of a legacy database using the Struts + Hibernate frameworks. | |
| Environment | · | Struts, Hibernate, JAAS, SQL server+JDBC, Eclipse, Tomcat, design patterns, UML, Windows, Linux. |
| |
April 2003 - June 2004 |
|
| Role | · | Java developer |
| Project | · | The DataTAG project comprised the design and implementation of a system that provisions end-to-end fiber optic connections in a multi-domain network. The implementation was based on a combination of both Globus & J2EE technologies, see this paper (PDF). |
| Environment | · | Globus toolkit 3.0.2 (web services based), J2EE, EJB, servlets, JSP, Ant, Linux. |
| |
April 2001 - June 2004 |
|
| Role | · | Java developer |
| Project | · | The Virtual Laboratory Amsterdam is a multi-disciplinary e-Science project funded by the ministry of economic affairs. It provides a virtual computational platform based on a large-scale distributed computing development area. For this virtual lab, I was involved with the design, implementation and deployment of a proof of concept, including evaluation with first users. |
| Environment | · | Globus toolkit 3.0.2 (web services based), Java, Ant, UML, Linux, Sparc/Solaris, Beowulf clusters. |
| |
June 1999 - May 2001 |
|
| Role | · | Scientific C developer |
| Project | · | Dynamite provides automatic load balancing for parallel applications running under Linux and Solaris. It supports migration of individual processes between computers (e.g. in a cluster) in a manner transparent both to the application programmer and the user. I ported major parts of the low-level C code from Solaris to Linux. I also transformed the status of the software from pre-alpha to production ready, so that it could be deployed at ESI, a company that evaluated Dynamite with code that simulated car crashes. |
| Environment | · | PVM, C, Linux, Solaris, Beowulf clusters |
September 2000 - June 2001 |
||
| Role | · | Teacher (hired from UvA) for one day per week. |
| Project | · | Teaching Java and object orientation to students of the Institute of Information Engineering of the Hogeschool of Amsterdam. |
| |
May 1998 - May 1999 |
|
| Role | · | Java/C++ developer, research and development |
| Projects | · | Software components surrounding TIL (Table Information Language), an XML dialect for the dissemination and standardization of (aggregated) statistical data within the CBS. |
| · | The development and maintenance of a C++ based Y2K code checking tool. | |
| Environment | · | C++, Java, XML, Visual studio J++, DCOM, Windows NT. |
| |
September 1997 - April 1998 |
|
| Role | · | C developer |
| Project | · | CARiN was one of the first car navigation systems. I developed and maintained the test tool Carsim, which was key during the development and test phases of the CARiN software. In addition, Carsim was used for testing digital road maps. Besides development of new Carsim features and maintenance activities, I was in contact with all development teams (such as route planner, RDS/TMC, database). |
| Environment | · | OSF Motif & XFacemaker, UI development, shell scripts, Sparc Solaris. |
| July 1997 - August 1997 | ||
| Role | · | C developer |
| Project | · | I wrote some extensions and accompanying tests in the C language for an industrial automation software package. |
| |
November 1992 - April 1997, Ph.D. research |
|
| Project | · | Automated reduction of the independent variables in large matrices that are used to model lattice dynamics, by means of mathematical operations that can be derived from the lattice symmetry. |
At home I work on a Gentoo Linux environment, where I follow the developments of Linux and some Open Source Software projects. I set up one myself too around an XML dialect for storing bibliographic data, called BibTeXml. During holidays I often travel, with a preference for the South-West of the USA and the desert regions in the southern parts of Africa, such as the Namib and Kalahari deserts, see also my pictures. In my spare time I like to practice classical music on the piano.