CURRICULUM VITAE PERSOONLIJKE GEGEVENS
Naam Nationaliteit Leeftijd Functie E-mail Regio
Bram Rooijmans Nederlandse 35 Senior Java ontwikkelaar, Java architect
[email protected] Utrecht
OPLEIDING
2009 2008 2006 2005 2005 2004 2003 2002 2001 2001
Sun Certified Programmer for the Java 2 Platform SE 6.0 Tapestry 5 training van Howard Lewis Ship Sun Certified Programmer for the Java 2 Platform SE 5.0 Spring Framework cursus van Interface21 Sun Certified Business Component Developer for J2EE 1.3 JBoss Advanced Training Sun Certified Web Component Developer for the J2EE Platform Sun Certified Developer for the Java 2 Platform Sun Certified Programmer for the Java 2 Platform 1.2 Doctoraal Kunstmatige Intelligentie, Universiteit van Amsterdam Specialisatie: Natuurlijke taal user-interfaces Stedelijk Gymnasium Haarlem
1996
PROFIEL
Uitgebreide Java/J2EE projectervaring. Kan snel inwerken in grote, complexe projecten. Goede communicatieve vaardigheden. Proactief en pragmatisch.
LAATST GELEZEN BOEKEN
Scala for the Impatient (Horstmann) Domain Driven Design (Evans) Clean Code (Martin) SCJP Sun Certified Programmer for Java 6 Study Guide (Sierra, Bates) Expert Spring MVC and Web Flow (Ladd, Donald) The Pragmatic Programmer: From Journeyman to Master (Hunt, Thomas)
MOTIVATIE
Als kind wilde ik altijd uitvinder en ontdekkingsreiziger worden; ik denk dat ik als Java ontwikkelaar aardig goed terecht gekomen ben. Ik houd van technische uitdagingen en het werken met de nieuwste technologieën, zodat ik mijn eigen vaardigheden blijf ontwikkelen. Het werken onder tijdsdruk en met beperkte middelen is altijd een uitdaging en uitdagingen motiveren me enorm, dan ben ik op mijn best.
VAARDIGHEDEN J = Junior, M = Medior, S = Senior
DATABASES
JAVA
Oracle 11g DB2, MySQL, PostgreSQL SQL JDBC
Java2 Standard Edition 6.0 Java2 Enterprise Edition (J2EE) Enterprise Java Beans (EJB) 3
S S S
Spring Framework 3 Spring MVC Hibernate 4.2 iBatis 2.1.6
S S S M
Java Server Faces (JSF) 1.2 Java Servlets 2.4 Java Server Pages (JSP) 2.0 Jakarta Struts 1.2 JSTL 1.1 Tapestry 5
S S S S M J
JBoss Seam Framework 2.2.0 JBoss RichFaces 3.3.2
M M
FRONT-END
Java Swing Eclipse SWT / JFace Java 2D JMS Apache ActiveMQ 4.1 JavaMail Java Communications API
S M S S M M M
HTML Javascript JQuery CSS 3 Bootstrap, from Twitter Webservices / Axis / Spring-WS WSDL
M M M M
Eclipse Juno Rational Application Developer 7 IBM WebSphere Application Developer 5 Maven 3 JUnit 4 Mockito 1.9 CVS, Subversion iText PDF 1.3.1 Apache ANT 1.6.5
S S S S S S S S M
S S S S S M M
XML Schema Definition (XSD) SAX Apache Xerces 2.0
S M M
METHODES
J2EE APPLICATIE SERVERS Apache Tomcat 6 IBM WebSphere 7 JBoss AS 6 BEA Weblogic 8.1
ONTWIKKELTOOLS
XML
SCALA Scala 2.10.1 Akka 2.2.0 Lift sbt
S M S S
S M M J
Agile Development / Scrum Design Patterns Object Oriented Development Unit Testing Open Source UML
S S S S S S
WERKERVARING PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
september 2012 – heden Rabobank Online Beveiliging Senior Java ontwikkelaar Onderhoud en uitbreiding van de modules die inloggen van gebruikers en signeren van opdrachten verzorgen voor www.rabobank.nl, de Rabobank iDeal pagina en de back-end voor de Rabobank Mobiel Bankieren apps. Werkend in een klein Scrum-team met Spring, Hibernate, WebServices (Spring-WS, Apache XMLBeans), Tomcat en WebSphere. Veel aandacht voor kwaliteit; unit-test coverage 80+%, code reviews, continuous integration met Hudson, Sonar en FitNesse/Selenium. Regelmatig verantwoordelijk voor derdelijns support en stand-by diensten. Daarnaast ontwikkeling van een zeer snelle logfile-parser in Scala en een real-time message-driven component t.b.v. security monitoring met Akka. Java 6, Tomcat 6, WebSphere 7, Spring 3, Spring WS, Hibernate 4, JPA, Maven 3, Freemarker, FitNesse, JUnit, Mockito, Scala 2.10.1, Akka 2.2 januari 2012 – juni 2012 Khonraad Software Engineering BOPZ Online en Huisverbod Online Scala ontwikkelaar Migratie van verschillende onderdelen van BOPZ-Online en Huisverbod-Online naar Scala, Lift en JPA. Vormgeving van de web-applicaties met HTML, CSS3, JQuery en Bootstrap. Versie-beheer met Git, builds gemaakt met SBT. Daarnaast ontwikkeling van een boekings/reserverings-systeem voor Kura Kura Yoga Retreat (Bali, Indonesië) met dezelfde technieken. Scala 2.9.1, Lift, SBT, Git, MongoDB, HTML, CSS3, JQuery, Bootstrap. juni 2011 – december 2011 DocData Payments Online betalingssysteem Senior J2EE ontwikkelaar Onderhoud van het online betalingssysteem van deze Payment Service Provider. Werkzaam in een internationaal Scrum-team, verantwoordelijk voor het aanbrengen van verbeteringen en bugfixing. Ontwikkeling met Spring, Hibernate en JSF, deployment op Tomcat 6. Koppelingen gemaakt met SFTP met externe betalingssystemen van o.a. Atos Worldonline en Omnipay. Veel aandacht voor code-reviews en unit tests, kwaliteitsbewaking met Hudson en Sonar. Java 5, Tomcat 6, Spring 3, Hibernate 3.3.2, JSF 1.2, RichFaces 3.3.1, Apache Commons VFS, Maven 2, Sybase, TestNG 5, PowerMock/ EasyMock 1.4.6. oktober 2009 – maart 2011 Khonraad Software Engineering BOPZ Online en Huisverbod Online Senior J2EE ontwikkelaar Ontwikkeling van een CRM applicatie t.b.v. sales, back-office, beheer en helpdesk van BOPZ (Bijzondere Opnemingen in Psychiatrische Ziekenhuizen) Online en Huisverbod Online. Migratie van Velocity+Spring+Tomcat 6 naar JSF+Richfaces+Seam+JBoss 5.1 en verdere ontwikkeling van de applicatie met JBoss Seam en Drools Expert voor het vastleggen van business logic. Instructies geven aan nieuwe eindgebruikers. Koppelingen
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
gemaakt met verschillende externe webservices en Google Maps. Implementatie van iPad en Android Apps met PhoneGap en iWebKit. Java 6.0, J2EE, JBoss AS 5.1, JBoss Seam 2.2.0, JSF 1.2, RichFaces 3.3.2, Hibernate 3.2.6, PostgreSQL 8.3, Maven 2.2, Eclipse 3.4, JBoss Tools, Drools Flow, Drools Expert, CVS. mei/november 2009, februari/mei/september/oktober/november/december 2010, mei/juli 2011, mei 2012 Vijfhart IT opleidingen Examentraining Java 6.0 Java docent Het geven van een tweedaagse Java cursus aan junior Java programmeurs, ter voorbereiding op het Sun Certified Java Programmer for Java 6.0 (CX-310-065) examen. Java 6.0, presenteren, lesgeven, aansturen junior Java programmeurs. maart 2008 – december 2008 Rabobank Rabo SMS Betalen Senior J2EE ontwikkelaar Implementatie van person-to-person mobiel betalen via SMS (Rabo Mobiel). Technical lead tijdens migratie naar Spring Framework 2.5 en iBatis. Implementatie van custom (stateful) RMI/SSL communicatie op basis van Spring Remoting. Opzet van Maven2 project structuur. Ontwikkeling van webservices t.b.v. ontsluiting van de betaalengine (Axis 1.4). Aansturen van junior ontwikkelaars. Veel aandacht voor Unit Tests, code coverage (Emma) en JavaDoc. Java, J2EE, Eclipse 3.2, Spring Framework 2.5.5, iBatis 2, Maven 1&2, Axis 1.4, Oracle 9i, RMI, SSL, security (JSSE), Apache Tomcat 5, HTML, JavaScript, JSTL, CVS, JUnit, Agile Development. augustus 2007 – februari 2008 ING Bank STARpro Approval Package (CCRM) Senior J2EE ontwikkelaar Onderhoud van de Basel II credit risk management applicatie van ING in een internationaal team van ontwikkelaars. Refactoring van het data model, oplossen van productieproblemen. Kwaliteitsbewaking van verschillende componenten m.b.v. FindBugs, code reviews en unit tests. Verantwoordelijk voor het monitoren van de autobuild (CruiseControl) en falende builds repareren. Java, J2EE, Rational Application Developer 7, Subversion, CruiseControl, Oracle, HTML, JSP, JavaScript, JUnit. februari 2007 – augustus 2007 Supercam Supercam p2p videostreaming platform Java architect, senior J2EE ontwikkelaar Uitbreiden van het Supercam videostreaming platform. Implementatie van verschillende back-end componenten voor auditing, gebruikersstatistieken, rapportages en databeheer. Front-end ontwikkeling met Spring MVC en JSTL. Integratie van componenten met JMS en HTTP (Spring remoting). Refactoring t.b.v. een verbeterde, modulaire architectuur. Java 5.0, J2EE, Spring Framework 2.0, Spring MVC, Acegi 1.0.3, Hibernate 3.2, EJB 3, Maven 2, JMS, Apache ActiveMQ 4.1, Apache Tomcat 5.5.20, LDAP, MS SQLServer 9, Eclipse 3.2, Subversion, Agile Development.
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT
oktober 2006 – november 2006 Nationale Postcode Loterij Lotus Senior J2EE ontwikkelaar Afronden van de ontwikkeling van verschillende Swing/Spring/Hibernate front-office applicaties t.b.v. de administratie (leden, loten, trekkingen e.d.) van de loterij. Voornamelijk bugfixing en refactoring. Java 5.0, J2EE, Spring Framework 1.2, Hibernate 3.1, JBoss 4.0.3, EJB 2.0, XDoclet, Oracle, Java Swing, JGoodies, Eclipse 3.1, Maven 1.1, Subversion, FindBugs, Jalopy. augustus/oktober 2006, januari/oktober 2007, januari/april/september/december 2008, februari 2009 Vijfhart IT opleidingen Examentraining Java 5.0 Java docent Het geven van een tweedaagse Java cursus aan junior Java programmeurs, ter voorbereiding op het Sun Certified Java Programmer for Java 5.0 (CX-310-055) examen. Java 5.0, presenteren, lesgeven, aansturen junior Java programmeurs. april 2006 – september 2006 De Telefoongids Website www.detelefoongids.nl Senior J2EE ontwikkelaar Ontwikkeling van www.detelefoongids.nl, een van de 5 meest bezochte websites van Nederland. Migratie van intern middleware platform o.b.v. Castor/JDO naar Spring/Hibernate/Java 5. Opstellen van project coding guidelines voor Unit Tests en JavaDoc. Koppeling van de Falkplan Webservices met kaartinformatie en routeplanning aan de bedrijvengids van www.detelefoongids.nl, m.b.v. Axis 1.2.1. Front-end ontwikkeling met Struts, JSTL en JavaScript. Opzetten van project build met ANT. Java 5.0, J2EE, Spring Framework 1.2.9, Hibernate 3.1, Jakarta Struts 1.2, JSTL, CSS, JavaScript, MyEclipse 4.1, Eclipse 3.1, Apache Tomcat 5.5.12, Apache ANT 1.6.5, CVS. november 2005 – maart 2006 ING Car Lease ING Car Lease website Senior J2EE ontwikkelaar Ontwikkeling van de Europese ING Car Lease website (www.ingcarlease.com) voor zes verschillende landen. Implementatie van deze website met Tapestry, Spring en iBatis. Opzet van architectuur en implementatie van de Reporting Component voor het genereren van PDF en Excel bestanden met iText, ter vervanging van Business Objects. Opstellen van materialized views in Oracle t.b.v. rapportages. Samenstellen en printen van offertes met iText. Configuratie van rapportages en offertes in Spring. Veel aandacht voor Unit Tests, code coverage (JCoverage, Cobertura) en JavaDoc. Java, J2EE, Tapestry 3.0.3, Spring Framework 1.2.6, iBatis 2.1.6, Maven 1.0.2, iText PDF Generator 1.3.1, I18N, Eclipse 3.1, Apache Tomcat 5.0.28, Oracle 9i, CVS, JUnit, OpenQA Selenium, EasyMock 1.1, Unit Testing. september 2005 – november 2005 Robeco Robeco Authorization Process
FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
J2EE ontwikkelaar Implementatie van een Webservice als koppeling tussen IBM Tivoli Identity Manager en acht verschillende back-end systemen (Oracle, MS SQLServer, Sybase). J2EE applicatie gebaseerd op Spring. Configuratie van en deployment op BEA Weblogic 8.1. Java, J2EE, BEA Weblogic 8.1, Spring Framework 1.1.3, Webservices, WSDL, EJB security, Oracle 8, MS SQLServer, JDBC, Eclipse 3.1, ANT, CVS, JUnit, Unit Testing. januari 2005 – juli 2005 PricewaterhouseCoopers Uitdiensttredingen Procedure Database t.b.v. HRM Java architect, senior J2EE ontwikkelaar Ontwerp van een nieuw te bouwen WebSphere Portal applicatie voor administratie van uitdiensttredende medewerkers. Veel overleg met de klant (HRM), requirements engineering, schrijven van functioneel ontwerp (70 pag.) en technisch ontwerp, Service Oriented Architecture en datamodel. Opzet projectplanning. Ontwikkeling van de Business Layer (business logic) en Persistence Layer (Hibernate). Integratie met WebSphere Portal front-end. Schrijven van Unit Tests. Java, J2EE, IBM WebSphere Application Developer 5, IBM WebSphere Portal 5, Hibernate 2.1.8, Oracle 9i, SQL, LDAP, JavaMail, CVS, JUnit, CheckStyle, SQL, Design Patterns, Unit Testing, Service Oriented Architecture, UML augustus 2004 – november 2004 ING Bank STARpro Loan Pricer (CCRM) Java ontwikkelaar Ontwikkeling van twee componenten voor de Basel II credit risk management applicatie van ING. Schrijven van technisch ontwerp documenten en unit-tests. Bugfixing van eerder ontwikkelde componenten. Veel overleg met de Business Analists. Java, J2EE, IBM WebSphere Application Developer 4, HTML, JSP, JavaScript, JUnit, SQL, Apache ECS, PVCS, XML/XSD, Component Based Development, Design Patterns, Unit Testing, UML februari 2004 – juli 2004 Hewlett-Packard IT Service Desk Java ontwikkelaar Bugfixing door middel van het aanleveren van hotfixes en service packs voor IT Service Desk 4.5. Ontwikkeling van een nieuwe component voor automatische clients-side updates. Performance tuning van de HP ObjectServer. Uitvoeren van code reviews en schrijven van verschillende how-to's over het toepassen van Eclipse 3.0 in de HP project structuur. Java, MS Visual J++, MS SQLServer, Oracle 8, Eclipse, ClearCase, UML, ITIL juli 2003 – januari 2004 Finalist IT Group FacturenOnline Java ontwikkelaar Afronden van een door drie stagairs begonnen intranetapplicatie gebruikt voor de urenadministratie, CRM, projectadministratie en facturatie van Finalist IT Group. Bugfixing en ontwikkeling van nieuwe features. Implementatie van verschillende rapportageopties met PDF en Excel.
VAARDIGHEDEN
Java, J2EE, EJB, JBoss Application Server 3.2, Apache Tomcat, JavaMail, Eclipse, JSP, Struts, HTML, CSS, JavaScript, ANT, CVS, XDoclet, JasperReports, iReport, Open Source
PERIODE
februari 2003 – juni 2003 Moonshake Technologies Capital Tool Box Java ontwikkelaar Ontwikkeling van een financial risk analysis engine voor Capital Tool Company. Implementatie van twee van de in totaal tien modules; asset management en market data management. Implementatie van een XML/HTTP upload component voor grote hoeveelheden data. Specificatie en implementatie van business validations. Ook verantwoordelijk voor communicatie met de klant voor het verfijnen van het functioneel ontwerp en het schrijven van het technisch ontwerp. Java, J2EE, EJB, JBoss Application Server 3, Apache Tomcat, IBM DB2, Eclipse, JMS, JSP, Struts, XML/XSD, XML/SAX, ANT, CVS, JUnit, Log4J, HTML, CSS, JavaScript, JDBC, SQL, Component Based Development, UML, Open Source
KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT
januari 2003 Framfab CMS voor BNN omroep Java ontwikkelaar Ontwikkeling van een content management systeem (CMS) op basis van MMBase en Struts. Opzet van een op portlets gebaseerde website met behulp van JSP, Struts en custom tags. Java, Apache Tomcat, JSP, Struts, MMBase, HTML, CSS, JavaScript, ANT, CVS augustus 2002 – december 2002 Netwerk VSP Intranet applicatie Java ontwikkelaar Ontwikkeling van een intranetapplicatie voor Netwerk VSP voor de administratie van landelijke folderverspreiding. Front-end ontwikkeling op basis van JSP/Struts en backend met EJB en SQL. Ook ontwikkeling van test-tools met Java Swing. Java, J2EE, EJB, JBoss Application Server 2.4, HP Bluestone, HTML, CSS, JavaScript, ANT CVS, JUnit, JDBC, SQL, Unit Testing oktober 2001 – juli 2002 Global IDs Inc. Database explorer Java architect, Java ontwikkelaar Ontwikkeling van een database exploratie applicatie op basis van Tryllian's Agent Development Kit. Remote installatie van Java JVM's met Agent Runtime, database detectie en data retrieval. User-interface ontwikkeling met Java Swing. Als technisch projectleider verantwoordelijk voor o.a. functioneel en technisch ontwerp. Java, Tryllian Agent Development Kit, Java Swing, Borland JBuilder, ANT, CVS, JUnit, Windows 2000, Linux, Solaris, Oracle 8, MS SQLServer, MySQL, JDBC, SQL, Extreme Programming augustus 2001 – augustus 2002 Telitas Benelux SMS dating via mobiel en web
FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN PERIODE KLANT PROJECT FUNCTIE WERKZAAMHEDEN
VAARDIGHEDEN
Java ontwikkelaar, front-end architect Ontwikkeling van een web-based SMS dating applicatie, inclusief prototype, op basis van Tryllian's Agent Development Kit. Verantwoordelijk voor front-end ontwerp (JSP, authenticatie, autorisatie, session management) en aansturen van andere ontwikkelaars. Java, Tryllian Agent Development Kit, Apache Tomcat, Java Swing, Borland JBuilder, JSP, SQL, ANT, CVS, JUnit, Extreme Programming, Object Oriented Development, Component Based Development, Unit Testing april 2001 – juni 2001 Europe Container Terminals Virtual Harbor Java ontwikkelaar Ontwikkeling van een pilot op basis van Tryllian's Agent Development Kit. De pilot demonstreerde de toepassing van Java Agents als "smart components" in het proces van inplannen en scannen van zeecontainers in de Rotterdamse haven. Java, Tryllian Agent Development Kit, Borland JBuilder, ANT, CVS, Extreme Programming, Component Based Development augustus 2000 – maart 2001 Yellow Fellow Java ontwikkelaar Ontwikkeling van een web-based marktplaats voor Yellow, de jongerenorganisatie van KPN, TMF, Radio538 en Postbank, op basis van Tryllian's Agent Development Kit. Ontwikkeling van het vraag/aanbod matching-algorithme van de marktplaats. Schrijven van unit-tests. Java, Tryllian Agent Development Kit, Borland JBuilder, ANT, CVS, JUnit, Unit Testing september 1999 – juni 2000 Robosail Robosail Java ontwikkelaar Ontwikkeling van een experimentele automatische piloot voor racezeiljachten. In een klein team (3 man) en met "carte blanche" functioneel en technisch ontwerp schrijven, Artificiële Intelligentie algoritmes implementeren en testplan opstellen. Ontwerp en ontwikkeling van de Java Swing user-interface. Het eindresultaat was een intelligente autopiloot die de huidige wereldstandaarden overtreft. Java, Design Patterns, Java Swing, Java Communications API, Borland JBuilder, Windows NT, MS Access, SQL