Jeroen Derks, M.Sc., CISSP, SCJP, ZCE, MCC

Around my 10th year I got access to a computer for the first time: the ZX Spectrum. Although it was the computer of a neighbour, my interest was aroused. After that we got a Philips P2000 at home which I programmed in BASIC. I bought my first computer when I started university, a Laser XT/3. This was also the first computer I opened up to take a look at the inside and which I upgraded to a faster CPU, a NEC V30, a larger harddisk (60Mb!) and more memory (totalling 1.6 Mb).
From that moment on things went really fast, I used to have a number of computers on which I ran OpenBSD, Linux, Windows 98/XP, Minix, IRIX and Mac OS X. These performed services such as firewall, web- and mailserver, development machine and gaming machine.

My interests foremost concern low-level programming (networking, OS), Internet, GUI/web development and computer/information/business security.
My professional experience is mostly in Internet/web development and applications derived from it.

At the moment I am currenly available as a senior software developer and security consultant on a contracting basis for projects in Amsterdam or Spain.

 


Skills / knowledge

Programming languages: BASIC, bourne shell, C, C++, JavaScript, Modula-2, Pascal, PHP, SQL, (Assembly, ASP, Java, Perl)
Protocols: IP, UDP, TCP, FTP, TFTP, HTTP, SOAP, SMTP, POP3, telnet, SSH, SSL
File formats: Atom, CSS, DTD, HTML, RSS, SMIL, WSDL, WML, XHTML, XML, XSL
Databases: LDAP, msql, MS SQL (FreeTDS), MySQL, Oracle (MFC ODBC, OO4O), Sybase (Rogue Wave DBTools++)
Operating systems: 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
Other: BS7799, CGI, DOM, DNS, GNU, iDEAL, ISAPI, ISO9001, MFC, NSAPI, OO, OpenSSL, PGP, PHP-GTK, PKI, Scrum, VB, VC++, VID, WAP, Win32, XSLT
 

Experience

Miky.nl
Den Haag
jan 2010 - feb 2010
For this website I solved some bugs and implemented new functionalities (PHP, Zend Framework, MySQL; MacOSX, Linux, Windows).
StudyTravel
Malaga
Mar 2009 - May 2009
As a PHP software developer I worked on implementing new functionalities into the website and related maintaince work (PHP, Smarty, MySQL, JavaScript; Linux, Windows).
TomTom
Amsterdam
Mar 2008 - Feb 2009
As a PHP software developer I contribue to the development team responsible for the TomTom website. Some of the projects I have done:
  • Apache module for authentication based on mod_auth_tkt (C, OpenSSL, FreeTDS; Linux)
  • Improving the application framework (PHP, Smarty, MSSQL, JavaScript; Linux, Windows)
BSM
Amsterdam
Sep 2007
Static code analysis of a HTML subscription form written in PHP for a major bank (PHP, MySQL; Linux, MacOSX, Windows).
Telfort
Amsterdam
Jan 2007 - Jul 2007
Again I was part of the development team and responsible for multiple projects. (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
marktplaats.nl
Amsterdam
Aug 2006 - Dec 2006
For a number of months I was part of the development team and responsible for multiple projects regarding the website and the maintenance part. (PHP, PEAR, Smarty, MySQL, JavaScript, HTML; Linux, Windows)
Derks.IT
Amsterdam
Mar 2006 - Sep 2008
In cooperation with Holland Online we are working on some ideas, including a community website, shops and simple pay-per-view websites. For the community website I also implemented payments using iDEAL and used my own application framework. (PHP, PEAR, MySQL, JavaScript, SourceGuardian; Linux, Windows)
ProvenModels
Amsterdam
Jan 2006 - Feb 2006
I helped this client by fixing a list of bugs in already existing code. (PHP, MySQL, JavaScript; Linux, Windows)
Ber-Art
Breda
Feb 2005 - heden
Support for Trojan Scan and security support.
Telfort
Amsterdam
Nov 2004 - Dec 2005
During this period I built an application framework to be used as the basis for new applications. I re-implemented the registration/authentication parts of the website using this framework, which also included some functional changes. (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
Xinox
Delft
Dec 2004
To allow registered downloads of their JCreator product I built a download registration form, license administration and mailing list (the mailing list is based on the open source application PHPList which has been linked to the downloader data). (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
Demon
Amsterdam
Sep 2004
ISP Demon had performance problems with a PHP/MySQL application used for Customer Care. After analysis of the problems, the MySQL configuration was adjusted, memory expanded and provisons were taken to archive out of date data. (PHP, PEAR, MySQL; Linux, FreeBSD)
Derks.IT
Amsterdam
May 2004 - Aug 2004
For an online ad company I created a library which removes double records from the customer database (incl. a similar application and an extension to the process of adding new customers that using this library whether the to be added customer does not already exist). Also I fixed already changed, but not yet working order forms. (PHP, PEAR, PHPlib, Smarty, MySQL, JavaScript, HTML; Linux)
Neverseen
Almere
Dec 2003 - Feb 2004
Over a period of several months I created the website of Pacorini Vlissingen, including a simple CMS for the maintenance of the news articles. (PHP, PEAR, MySQL, Javascript; Linux, Windows)
Telfort
Amsterdam
Jun 2003 - Apr 2004
During a nine-month period I have been involved actively and pro-actively in the development of various web-applications and APIs. Pro-active in advising on the to be used technology and methods (among others PEAR DB_DataObject and applying methods such as automatically generated documentation using phpDoc/phpDocumentor, automated testing using PEAR PHPUnit, etc). I also contributed to the security-awareness (e.g.: the security audit (crystal box) on my code did not reveal any critical security problems, some quotes from the report: "defensive way of programming", "the only correct way to deal with this [input validation]", "very good, almost perfect input validation").
Larger projects for which I was responsible:
  • authentication and registration on the website, incl. setting up the user database and extensive and partly generiek administration environment for customer care (PHP, PEAR, MySQL, LDAP, HTML, JavaScript, shell script, perl)
  • dispathing of incoming SMS messages and sending out an EMS logo
  • MMS web-application that allows customers to view MMS messages sent to mobile phones without MMS support (PHP, PEAR, mmsdiary, JavaScript, HTML, XSLT, SMIL)
  • generic API for processing incoming and sending out outgoing messages (SMS, MMS, etc) (PHP, PEAR, MySQL, dia: UML class diagrams)
Rubicon
Vianen
Mar 2003 - Apr 2003
For a customer of Rubicon I partly re-build an existing web-application and added new functionality to it regarding among others authentication and uploading files (PHP, PHPlib, Smarty, MySQL, JavaScript, HTML; Linux, Windows, Solaris)
Rubicon
Vianen
Mar 2003
For TPG Post I wrote the web functionality for Persoonlijke Postzegels, incl. the manipulation of uploaded photographs (PHP, JavaScript, DHTML library, HTML; Linux, Windows)
Apidea
Amsterdam
Dec 2002 - Dec 2003
This project concerned unlocking information of railway stations for ProRail. It was my job to handle importing data (photography, spreadsheets and other documents) into a MySQL database which was to be used as a SQLite database by an application run from CD. To make this possibly I wrote a SQLite driver for metabase and a generic database API for the Apidea framework. I also patched the PHP4 SQLite module to handle NULL values properly. (PHP, PEAR, metabase, MySQL, SQLite, VC++ 6, STL; Linux, Windows)
Derks.IT
Amsterdam
Dec 2002 - Apr 2003
I build a complete dating site with all required functionality, incl. member registration, authentication, chat, billing, manual matching, 128+ member qualities (PHP, PEAR, Smarty, MySQL, JavaScript, HTML; Linux, Windows)
Vodafone
UK
Jul 2002 - Sep 2002
I made some small changes to their CMS (PHP, Oracle, HTML, JavaScript, WebDAV; Linux, Windows 98).
Razorfish Europe
Amsterdam
Apr 2002 - May 2002
For the framework of a website for car valuations in different countries and multiple languages per country, I implemented foremost user authentication (incl. registration etc.) (PHP, MySQL, HTML, JavaScript, Visual InterDev; Windows 2000).
Rits Automatisering
Deventer
Mar 2002 - now
For the Rits Account website I implemented user authentication (incl. registration, etc.) and user administration (PHP, MySQL, HTML, JavaScript; Linux, Windows 98). Also, I am working on a module that will enable encryption in one of the applications of Rits Account (Visual C++, OpenSSL, PHP, MySQL, SOAP; Linux, Windows 98/2000).
Apidea
Amsterdam
Feb 2002 - Apr 2003
Besides the website CMS to enter, modify, remove houseboats for the website www.woonboot.nl, I also wrote a GUI application which could be used e.g. on a laptop to enter new houseboat pictures and data on location at the client and which could be uploaded to the website CMS later. Part of the GUI application was the encryption of the PHP files to prevent unwanted maniplutaion among others (PHP, PHP-GTK, PEAR, ImageMagick; Linux, Windows)
EPOCera
Amsterdam
Jan 2002
For EPOCera I developed a software package in Visual C++ that uses the DOM to store data(-structures), and at the same time XML as the basis of a scripting language (Visual C++, MFC, XML; Windows 98/2000).
Apidea
Amsterdam
Dec 2001
As a consultant I advised on the internal IT organization of a customer of Apidea, for which I also joined in on a session with that customer. A short report was written about the session.
Connected
Software

Rotterdam
Nov 2001 - Feb 2002
For KnowWise, an information system for consumers, I implemented encryption and HTTP proxy authentication (Visual Basic, ASP, MS SQL; Windows 98/2000).
Stachanov
Amsterdam
Jul 2001 - Aug 2001
As a contractor I was the main programmer in a project for building a document management system via intranet/internet (web-interface) (PHP, JavaScript, ODBC, MySQL, Microsoft SQL Server; Windows 98/NT, Linux).
I also did two small subprojects for another project (C, PHP; Windows 98/NT, Linux).
Wellance
Diemen
Jan 1999 - Jun 2001
As a Programmer Analyst (Senior since January 2001) I have been responsible for the design and development of the frontend part for the regedoc system, which is a system for sending and receiving documents registered and secured over the Internet or intranet. This encompassed the design and implementation of an ISAPI for Microsoft IIS, using performance counters, registry settings, the eventlog, encrypted communication and timestamping of documents, and an additional configuration utility. To do this I used MFC, PGP, Sybase and Oracle backend database (Rogue Wave DBTools++, Oracle OO4O, ODBC).
Furthermore, I also dealt with business security as a member of the Security Project Team and helped getting the BS7799 certification.
Siteways
Amsterdam
Sep 1996 - Dec 1998
As a Junior Programmer I worked on:
  • guardian system for machines, websites, database, payment systems et cetera (C, shell scripts; IRIX)
  • more secure version of the FTP daemon (only users in a certain file can go outside their home directory) (C; IRIX)
  • porting of diverse Perl scripts to PHP (PHP; Windows NT, IRIX)
  • system for preventing abuse of website account/authorisation by multiple persons (C, NSAPI, msql, shell scripts; IRIX)
  • diverse programs and scripts for websites, authorisation- and payment databases (C, PHP, msql, shell scripts; IRIX, Linux)
  • shops for websites (products, shopping basket and interface to paymeny module) (PHP, msql; IRIX)
  • system for webserver statistics reports (email and HTML) (C, PHP; IRIX)
  • solution to switch to ISDN when the regular (i.e. leased line) Internet connection does not provide enough bandwidth (on location in the U.S. I installed and improved this solution) (shell script; IRIX)
  • porting of (Unix) C JPEG6a library to VC++ for an ActiveX control (Visual C++ 5.0; Windows 95)
  • porting of the C++ FraunHofer MPEG1-III audio decoder to Java (C++, JDK 1.1; Windows 95, IRIX)
  • Adobe Premiere Plugin for JPEG and AVL (LiveStream) (Visual C++ 5.0; Windows NT)
  • initial design for a generic shop for the Internet (Word 97; Windows NT)
As an Assistent Systems Administrator I have been responsible for the usual tasks of system administration such as backup, security, mail, DNS, hard- and software installation and configuration, and small programming tasks (Systems: SGI, PC, Livingston, Cisco).
Vrije Universiteit
Amsterdam
Sep 1993 - Aug 1994
As a Student Assistant for the courses Software Engineering and Computer Networks with the faculty of Mathematics & Computer Science I coached students with their pratical work for these courses. During the first course I coached five groups of about five persons. They had to implement a 'large' program as a team effort. In this case the program to implement was a route planner. The distinguished stages were: requirements specification, design, implementation (in C++) and evaluation. I also was responsible for judging the submitted results. During the second course I coached groups of one or two persons with the design and implementation (in C) of (a simplification) of the IP and UDP network protocols, and an tftp daemon and client. I was only responsible for coaching the groups.

Education

Vrije Universiteit
Amsterdam
Sep 1990 - Aug 1998
Information Sciences majoring in Computer Science, finished successfully with an M.Sc.
During my studies I did practical work for the courses Operating Systems, Compiler Construction, Computer Networks, Programming Languages (lesser known languages: ABC, Ada, Miranda, Prolog and Smalltalk) and Software Engineering.

Congresses, courses & seminars

Mediaplaza Feb2008 Introduction to Information Security
(ISC)² Nov2007 Certified Information Systems Security Professional (CISSP) [continuation]
MySQL Jan2005 MySQL Core Certification (MCC)
Zend Nov2004 Zend Certified Engineer (ZCE) [PHP]
(ISC)² Sep2004 Certified Information Systems Security Professional (CISSP) [continuation]
PHP Magazine May2004 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 Oct2000 Developer Days 2000
Baltimore Tech.    Mar2000 Mobile Commerce Security Seminar
InfoSupport Nov1999 Mastering MFC Development Using Microsoft Visual C++ 6.0


Activities

NGI Sep 2001 - now
Dutch Society for Information Science (NGI, Dutch), Security department.
open source
projects
Aug 2001 - now
My own open source projects: trojan scan, PEAR: Crypt_Xtea.
Since some time I am using once more a Unix variant (Linux) as my primairy OS. As a result of that I once in a while contribute to different Open Source projects ( fwanalog, SnortSnarf, Metabase, NuSOAP, PEAR: PHPDoc ).
S.V. Cyclades
Amsterdam
Oct 1993 - Aug 1998
Active members of students club Cyclades, in which I was a committee member of among others: the bar, sports en introduction committees and member of the fraternity Elysion, current status: POR (Mail receiving old-member) (Cyclades, Dutch).