drs. Jeroen Derks, CISSP, SCJP, ZCE, MCC

Zo rond m'n 10e kreeg ik voor het eerst toegang tot een computer: de ZX Spectrum. Weliswaar was het de computer van een buurjongen, maar m'n interesse was gewekt. Later kregen we tijdelijk een Philips P2000 thuis waarop ik geprogrammeerd heb in BASIC. Mijn eerste computer kocht ik toen ik ging studeren, een Laser XT/3. Dit was ook de computer die ik voor het eerst van binnen bekeek en er een andere CPU (NEC V30), grotere harddisk (60Mb!) en meer geheugen (totaal 1,6Mb) in installeerde.
Vanaf dat moment ging het snel, ik heb een aantal computers gehad waar ik OpenBSD, Linux, Windows 98/XP, Minix, IRIX en Mac OS X op gedraaid heb. Deze deden o.a. dienst als firewall, web- en mailserver, ontwikkel-omgeving en game-machine.

Mijn interesses liggen voornamelijk bij: low-level programming (networking, OS), Internet, GUI/web development en computer/information/business security.
Mijn professionele ervaring ligt voornamelijk in Internet/web development en daarvan afgeleide applicaties.

Sinds juli 2001 ben ik werkzaam als freelancer. Momenteel ben ik per juni 2008 beschikbaar als freelance senior software ontwikkelaar en security consultant en doe ik bij voorkeur projecten waarbij ik voor het overgrote deel thuis kan werken of in Amsterdam (bij voorkeur op fietsafstand) of in Barcelona.

 


Vaardigheden / kennis

Programmeertalen: BASIC, bourne shell, C, C++, JavaScript, Modula-2, Pascal, PHP, SQL, (Assembly, ASP, Java, Perl)
Protocollen: IP, UDP, TCP, FTP, TFTP, HTTP, SOAP, SMTP, POP3, telnet, SSH, SSL
File formaten: Atom, CSS, DTD, HTML, RSS, SMIL, WSDL, WML, XHTML, XML, XSL
Databases: LDAP, msql, MySQL, Oracle (MFC ODBC, OO4O), Sybase (Rogue Wave DBTools++)
Bedrijfssystemen: Unix (*BSD, Irix, Linux, Minix, Solaris), MS-DOS, Windows 2/3.11/9x/ME/NT/2000/XP, (ComOS, IOS)
Hardware: Cisco; Livingston Portmaster; PC; SGI Indigo, Indy, O2, Challenge S/XL, Origin 200; Sun 3/4/Netra
Anders: BS7799, CGI, DOM, DNS, GNU, iDEAL, ISAPI, ISO9001, MFC, NSAPI, OO, OpenSSL, PGP, PHP-GTK, PKI, VB, VC++, VID, WAP, Win32, XSLT
 

Werkervaring

TomTom
Amsterdam
mar 2008 - heden
Als PHP software developer lever ik mijn bijdrage aan het development team dat verantwoordelijk is voor de website van TomTom (PHP, Smarty, MSSQL, JavaScript; Linux, Windows).
BSM
Amsterdam
sep 2007
Static code analyse van HTML aanmeldingsformulier geschreven in PHP voor een grote bank (PHP, MySQL; Linux, MacOSX, Windows).
Telfort
Amsterdam
jan 2007 - jul 2007
Opnieuw was ik onderdeel van het ontwikkelteam en verantwoordelijk voor een aantal projecten. (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
marktplaats.nl
Amsterdam
aug 2006 - dec 2006
Gedurende een aantal maanden was ik onderdeel van het ontwikkelteam en verantwoordelijk voor een aantal projecten met betrekking tot de website en het beheer gedeelte. (PHP, PEAR, Smarty, MySQL, JavaScript; Linux, Windows)
Derks.IT
Amsterdam
mrt 2006 - heden
In samenwerking met Holland Online zijn we bezig een aantal ideeën uit te werken, waaronder een community site, shops en eenvoudige pay-per-view sites. Voor de community site heb ik o.a. betalingen d.m.v. iDEAL mogelijk gemaakt en maak ik gebruik van een eigen applicatie framework. (PHP, PEAR, MySQL, JavaScript, SourceGuardian; Linux, Windows)
ProvenModels
Amsterdam
jan 2006 - feb 2006
Voor deze klant heb ik een lijst met bugs in de reeds aanwezige code opgelost. (PHP, MySQL, JavaScript; Linux, Windows)
Ber-Art
Breda
feb 2005 - heden
Ondersteuning Trojan Scan en security support.
Telfort
Amsterdam
nov 2004 - dec 2005
In deze periode heb ik, naast allerlei mini-applicaties en onderhoud aan bestaande applicaties, een applicatie framework gebouwd welke de basis is voor toekomstige applicaties. O.a. het registratie/authenticatie gedeelte van de website heb ik omgebouwd naar dit framework, naast aanpassingen in de functionaliteit. (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
Xinox
Delft
dec 2004
Voor het product JCreator van Xinox Software heb ik een download registratie formulier, licentie beheer en mailing list gebouwd (de mailing list is gebaseerd op het open source pakket PHPList welke gekoppeld is aan de downloaders). (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
Demon
Amsterdam
sep 2004
ISP Demon had performance problemen met een PHP/MySQL applicatie die gebruikt werd voor Customer Care. Na analyse van de problematiek, is de MySQL configuratie aangepast, geheugen uitgebreid en voorzieningen getroffen voor het archiveren van verouderde gegevens. (PHP, PEAR, MySQL; Linux, FreeBSD)
Derks.IT
Amsterdam
mei 2004 - aug 2004
Voor een online advertentie bedrijf heb ik een library gemaakt welke dubbele records uit de klanten database verwijdert (incl. een overeenkomstige applicatie en een uitbreiding op het toevoegen van nieuwe klanten welke m.b.v. deze library controleert of de toe te voegen klant niet reeds bestaat). Ook heb ik reeds aangepaste, maar nog niet geheel werkende order schermen aangepast en gerepareerd. (PHP, PEAR, PHPlib, Smarty, MySQL, JavaScript, HTML; Linux)
Neverseen
Almere
dec 2003 - feb 2004
Verspreid over enkele maanden heb ik de website van Pacorini Vlissingen in elkaar gezet, incl. een eenvoudig CMS voor het onderhoud van de nieuws artikelen (persberichten). (PHP, PEAR, MySQL, Javascript; Linux, Windows)
Telfort
Amsterdam
jun 2003 - apr 2004
Gedurende negen maanden ben ik actief en pro-actief betrokken geweest bij het ontwikkelen van diverse web-applicaties en API's. Pro-actief in het adviseren van te gebruiken technieken en methoden (o.a. PEAR DB_DataObject en toepassen van technieken als automatische documentatie generatie m.b.v. phpDoc/phpDocumentor, geautomatiseerd testen m.b.v. PEAR PHPUnit, etc). Ook bijgedragen aan security-awareness (ter illustratie: bij security audit (crystal box) op mijn code kwamen geen kritieke security problemen naar voren, enkele quotes: "defensieve manier van programmeren", "de enig juiste manier om hiermee [invoervalidatie] om te gaan", "zeer goede, vrijwel perfecte invoervalidatie").
Grotere projecten waar ik verantwoordelijk voor was:
  • authenticatie en registratie op de website, incl. opzetten van gebruikersdatabase en uitgebreide en deels generieke beheer omgeving voor customer care (PHP, PEAR, MySQL, LDAP, HTML, JavaScript, shell script, perl)
  • afhandelen van binnenkomende SMS en uitsturen van EMS logo
  • MMS web-applicatie voor het bekijken van MMS berichten verstuurd aan mobiele telefoons zonder MMS ondersteuning (PHP, PEAR, mmsdiary, JavaScript, HTML, XSLT, SMIL)
  • generieke API voor het verwerken van binnenkomende en uitsturen van uitgaande berichten (SMS, MMS, etc) (PHP, PEAR, MySQL, dia: UML class diagrams)
Rubicon
Vianen
mrt 2003 - apr 2003
Voor een klant van Rubicon heb ik een bestaande web-applicatie gedeeltelijk omgebouwd en uitgebreid met nieuwe functionaliteit betreffende o.a. authenticatie en versturen van files (PHP, PHPlib, Smarty, MySQL, JavaScript, HTML; Linux, Windows, Solaris)
Rubicon
Vianen
mrt 2003
Voor TPG Post heb ik het web gedeelte van de Persoonlijke Postzegels gebouwd, incl. de foto manipulatie (PHP, JavaScript, DHTML library, HTML; Linux, Windows)
Apidea
Amsterdam
dec 2002 - dec 2003
Voor ProRail heb ik gewerkt aan een project t.b.v. het ontsluiten van informatie betreffende stations. Mijn taak was het importeren van data (fotografie, spreadsheets en andere documenten) in MySQL database welke als SQLite database gebruikt wordt door een applicatie die vanaf CD draait. Om dit mogelijk te maken heb ik een SQLite driver voor metabase geschreven en een generieke database API voor Apidea framework. Ook heb ik patch gesubmit voor de PHP4 SQLite module welke helaas niet verwerkt is, waarschijnlijk omdat SQLite ondersteuning in PHP5 standaard is. (PHP, PEAR, metabase, MySQL, SQLite, VC++ 6, STL; Linux, Windows)
Derks.IT
Amsterdam
dec 2002 - apr 2003
Voor een klant heb ik alle functionaliteit voor een datingsite gebouwd, incl. leden registratie, authenticatie, chat, billing, handmatige matching, 128+ leden eigenschappen (PHP, PEAR, Smarty, MySQL, JavaScript, HTML; Linux, Windows)
Vodafone
UK
jul 2002 - sep 2002
Voor het CMS van de website heb ik een aantal eenvoudige wijzigen doorgevoerd (PHP, Oracle, HTML, JavaScript, WebDAV; Linux, Windows 98).
Razorfish Europe
Amsterdam
apr 2002 - mei 2002
Voor het framework van een website voor auto taxaties in verschillende landen en verschillende talen per land, heb ik user authenticatie (incl. registratie etc.) geïmplementeerd. Verder heb ik bijdragen geleverd aan allerlei sub-projectjes (PHP, MySQL, HTML, JavaScript, Visual InterDev; Windows 2000).
Rits Automatisering
Deventer
mrt 2002 - jun 2003
Voor de Rits Account website heb ik user authenticatie (incl. registratie etc.) en user administratie geïmplementeerd (PHP, MySQL, HTML, JavaScript; Linux, Windows 98/2000). Tevens heb ik een module (DLL) gemaakt die het mogelijk maakt encryptie toe te passen in één van de applicaties van Rits Account (Visual C++, OpenSSL, PHP, MySQL, SOAP; Windows 98/2000).
Apidea
Amsterdam
feb 2002 - apr 2003
Naast het CMS om woonboten in te voeren, wijzigen etc. voor de website www.woonboot.nl, heb ik ook een GUI applicatie geschreven waarmee bijv. op een laptop bij de klant foto's en gegevens van een woonboot ingevoerd kunnen worden welke later naar het CMS ge-upload kunnen worden. Onderdeel van de GUI applicatie was een versleuteling van de PHP bestanden om o.a. manipulatie te voorkomen (PHP, PHP-GTK, PEAR, ImageMagick; Linux, Windows)
EPOCera
Amsterdam
jan 2002
Voor EPOCera heb ik een applicatie ontwikkeld in Visual C++ die gebruik maakt van DOM om data(-structuren) op te slaan en tegelijkertijd XML als de basis voor een scripting taal (Visual C++, MFC, XML; Windows 98/2000).
Apidea
Amsterdam
dec 2001
Als consultant heb ik geadviseerd over de interne automatisering van een klant van Apidea, waarvoor ik ook een sessie met die klant heb bijgewoond aan de hand waarvan een kort rapport is geschreven.
Connected
Software

Rotterdam
nov 2001 - feb 2002
Voor KnowWise, een informatiesysteem voor consumenten, heb ik encryptie en HTTP proxy authenticatie geïmplementeerd (Visual Basic, ASP, MS SQL; Windows 98/2000).
Stachanov
Amsterdam
jul 2001 - aug 2001
Als freelancer heb ik een project getrokken met als doel een documenten beheer systeem via intranet/internet (web-interface) te ontwikkelen (PHP, JavaScript, ODBC, MySQL, Microsoft SQL Server; Windows 98/NT, Linux).
en ook 2 kleine deelprojecten voor een ander project (C, PHP; Windows 98/NT, Linux).
Wellance
Diemen
jan 1999 - jun 2001
In de functie van Programmer Analyst (Senior sinds januari 2001) ben ik verantwoordelijk geweest voor het frontend gedeelte voor de documenten uitwisseling van regedoc, een systeem voor het beveiligd en geregistreerd documenten uitwisselen over Internet of intranet. Dit hield in het ontwerpen en implementeren van een ISAPI voor Microsoft IIS met performance counters, registry-instellingen, het gebruik van eventlog, encryptie van communicatie en timestampen van documenten, plus een configuratie utility. Hiervoor heb ik o.a. MFC, PGP, Sybase en Oracle backend databases (Rogue Wave DBTools++, Oracle OO4O, ODBC) gebruikt (Visual C++; Windows NT/2000).
Verder heb ik me ook bezig gehouden met business security als lid van het Security Project Team en heb ik bijgedragen aan het behalen van de BS7799 certificering.
Siteways
Amsterdam
sep 1996 - dec 1998
In de functie van Junior Programmeur (sinds maart 1997) heb ik gewerkt aan:
  • bewakingssysteem voor machines, websites, database, betalingsssystemen en diversen (C, shell scripts; IRIX)
  • veiliger versie van de FTP daemon (alleen gebruikers in een bepaald bestand kunnen buiten hun home-directory) (C; IRIX)
  • porten van verscheidene Perl scripts naar PHP (PHP; Windows NT, IRIX)
  • systeem voor tegengaan van misbruik van website account/authorisatie door meerdere personen (C, NSAPI, msql, shell scripts; IRIX)
  • diverse programma's en scripts t.b.v. websites, authorisatie- en betalingsdatabases (C, PHP, msql, shell scripts; IRIX, Linux)
  • shops voor websites (assortiment, shopping basket en interface naar betaalmodule) (PHP, msql; IRIX)
  • systeem voor webserver statistics rapportage (email en HTML) (C, PHP; IRIX)
  • oplossing om over te schakelen op ISDN als de Internet verbinding geen voldoende throughput meer levert (op lokatie in de V.S. heb ik deze oplossing geinstalleerd en verbeterd) (shell script; IRIX)
  • porten van (Unix) C JPEG6a library naar VC++ t.b.v. ActiveX control (Visual C++ 5.0; Windows 95)
  • porten van C++ FraunHofer MPEG1-III audio decoder naar Java (C++, JDK 1.1; Windows 95, IRIX)
  • Adobe Premiere Plugin voor JPEG en AVL (LiveStream) (Visual C++ 5.0; Windows NT)
  • aanzet ontwerp voor een generieke shop voor Internet (Word 97; Windows NT)
In de functie van Assistent Systeembeheer ben ik verantwoordelijk geweest voor de normale taken van systeembeheer als backup, beveiliging, mail, DNS, hard- en software installeren en configureren, en kleine programmeerwerkzaamheden (Systemen: SGI, PC, Livingston, Cisco).
Vrije Universiteit
Amsterdam
sep 1993 - aug 1994
In de functie van Studentassistent voor de vakken Software Engineering en Computernetwerken bij de faculteit Wiskunde & Informatica begeleidde ik studenten met de praktica Software Engineering en Computernetwerken. Bij het eerste practicum begeleidde ik vijf groepen van ongeveer vijf personen. Men moest in team- verband een 'groot' programma schrijven, in dit geval ging het om een soort routeplanner. De verschillende stadia waren: definitie van eisen, ontwerp, implementatie (in C++), evaluatie. Tevens had ik tot taak het beoordelen van het ingeleverde werk. Bij het tweede practicum begeleidde ik groepen van één of twee personen met het ontwerpen en implementeren (in C) van (een vereenvoudiging van) de IP en UDP netwerk protocollen, en een tftp daemon en client. Hier was ik slechts verantwoordelijk voor de begeleiding, er werd getest en beoordeeld door anderen.

Opleiding

Vrije Universiteit
Amsterdam
sep 1990 - aug 1998
Studierichting Informatica met als hoofdrichting computersystemen, afgerond met bul.
Tijdens mijn studie heb ik onder meer practica gevolgd voor de vakken Bedrijfssystemen, Compilerbouw, Computernetwerken, Programmeertalen (minder bekende talen: ABC, Ada, Miranda, Prolog en Smalltalk) en Software Engineering.

Congressen, cursussen & seminars

Mediaplaza feb2008 Kennismaken met informatiebeveiliging
(ISC)² nov2007 Certified Information Systems Security Professional (CISSP) [verlenging]
MySQL jan2005 MySQL Core Certification (MCC)
Zend nov2004 Zend Certified Engineer (ZCE) [PHP]
(ISC)² sep2004 Certified Information Systems Security Professional (CISSP) [verlenging]
PHP Magazine mei2004 International PHP Conference 2004 Spring Edition
Sun sep2001 Sun Certified Programmer for Java 2 Platform (SCJP)
(ISC)² jun2001 Certified Information Systems Security Professional (CISSP)
Microsoft okt2000 Developer Days 2000
Baltimore Tech.    mrt2000 Mobile Commerce Security Seminar
InfoSupport nov1999 Mastering MFC Development Using Microsoft Visual C++ 6.0


Neven activiteiten

NGI sep 2001 - heden
Nederlands Genootschap voor Informatica (NGI), afdeling Beveiliging.
open source
projecten
aug 2001 - heden
Mijn eigen open source projecten: trojan scan, PEAR: Crypt_Xtea.
Sinds enige tijd gebruik ik weer een Unix variant (Linux, MacOS) als primair bedrijfssysteem, met als gevolg dat ik af en toe een (kleine) bijdrage lever aan verschillende Open Source projecten ( fwanalog, SnortSnarf, Metabase, NuSOAP, PEAR: PHPDoc, PHP: OpenSSL module ).
S.V. Cyclades
Amsterdam
okt 1993 - aug 1998
Actief lid van studentenvereniging Cyclades, waar ik commissielid was van o.a. de bar, sport en introductie commissies en lid van het dispuut Elysion, huidige status: POR (Post Ontvangend Reünist) (Cyclades).