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


My professional experience is mostly in Internet/web development and applications derived from it with special attention towards security.
Since July 2001 I've been working as a freelancer. I will be available from December 18, 2017.

Skills / knowledge

Programming languages: BASIC, bourne shell, C, C++, JavaScript, Modula-2, Pascal, PHP, Python, SQL, (Assembly, ASP, Java, Perl)
Protocols: IP, UDP, TCP, FTP, TFTP, HTTP, SOAP, SMTP, POP3, telnet, SSH, SSL
Databases: LDAP, msql, MS SQL (FreeTDS), MySQL, Oracle (MFC ODBC, OO4O), Percona, Sybase (Rogue Wave DBTools++)
Operating systems: Unix (*BSD, Irix, Linux, Mac OS X, Minix, Solaris), MS-DOS, Windows 2/3.11/9x/ME/NT/2000/XP/etc, (ComOS, IOS)
Hardware: Cisco, Force10, Livingston Portmaster, NetApp, PC, SGI (Indigo, Indy, O2, Challenge S/XL, Origin 200); Sun 3/4/Netra
Other: BS7799, CGI, CVS, DOM, DNS, ExtJS, Gearman, Git, GNU, iDEAL, ISAPI, ISO9001, jQuery, Laravel, LinkedIn API, Magento, MFC, NSAPI, OO, OpenSSL, Perforce, PGP, PHP-GTK, PHPUnit, Pingdom API, PKI, Prototype, Scrum, Selenium, Subversion (SVN), Symfony2, VB, VC++, VID, VMware, WAP, Win32, XSLT, Zend Framework, ZFS

Alicante, Spain
Aug 2017 - now
For different customers doing PHP projects, where my choice of framework currently is Laravel.
Alicante, Spain
Jul 2012 - Jul 2017
Lead Developer
I worked on the following projects:
  • Authentication and authorisation API using the latest encryption standards
  • Queue library for executing tasks including Python modules, external scripts and repeating tasks
  • Different tools and modules for management of VMware environments
  • Drivers to control advanced netwerk equipment like switches and routers (Cisco / Force10 / Arista)
  • Management of network attached storage (NAS) equipment and datastores (volumes) (NetApp / Nexenta / Oracle / Solaris / ZFS)
  • Add new functionality to an API written in Django REST Framework with an accompanying user interface built with ExtJS
(PHP, Python, MySQL, Percona, ExtJS, Django; Linux, Mac OS X, Windows).
CliQ Digital
Jul 2012 - Jun 2013
Lead Developer
(PHP, MySQL, Symfony2, Gearman, PHPUnit, Selenium; Linux, Mac OS X).
Apr 2011 - Jul 2012
Currently we are working on the development of a commercial and publicly available Magento extension that provides integration with PHPlist and another idea (Hackmonitor) which will be completely developed as Magento extensions (PHP, MySQL, Magento, Zend Framework; Linux, Mac OS X).
May 2012 - Aug 2012
For accepting a license agreement for a specific product I have created a Magento extension. (PHP, MySQL, jQuery, Magento; Linux).
Mar 2012 - Apr 2012
For a client (media/digital agency) I resolved most of the most eye-catching issues in a not yet fully finished Magento website (mainly bugs in parts developed by a third party, integration of extensions and a newsletter API). (PHP, MySQL, jQuery, Magento; Linux).
Jan 2011 - Mar 2012
For a French client (fashion retail) I translated the graphical/HTML design into a working, dynamic HTML/JS/CSS version which I then in cooperation with an offshored team translated into a Magento template. Different to this website was the extensive use of dynamic elements on the homepage. (PHP, MySQL, jQuery, Magento; Linux).
Dec 2011 - Mar 2012
For a client in the online retail (equestrian sports) I resolved most of the most eye-catching issues in a not yet fully developed Magento website (such as export from MS SQL, import with automatic creation of attribute values, layered navigation using checkboxes, bugs in payment method extension, simple integration with Exact). (PHP, MySQL, jQuery, Magento; Linux).
Dec 2011 - Feb 2012
For a client in the automotive industry I have made a web application (partially nearshore) with which employees could make a selection from a number of template images using a visual editor which will be used to create a PDF which is then sent via email. (PHP, MySQL, jQuery, CodeIgniter; Linux).
Sep 2011 - Oct 2011
For the Tele2 website I did a couple of smaller projects such as:
  • iDEAL implementation for payments (iDEAL = the Dutch standard for online payments by the major banks)
  • a uptime page for servers using the Pingdom API
  • modifications for enabling a new product line on the website
  • management tool for affiliate HTML snippets on the website
  • research preparing use of the Icecat database
(PHP, MySQL, Zend Framework, jQuery, Pingdom API; Linux, Mac OS X, Windows).
Lost Boys
Jul 2011 - Jul 2011
The Magento project that I would work on was cancelled after a couple of days after which I made myself useful for more than a week as frontend developer for and NS Hispeed (PHP, MySQL, Zend Framework, jQuery, HTML5, CSS3; Linux, Mac OS X, Windows).
Oct 2010 - Aug 2011
The new internal website for internal vacancies, Smartjobs, was developed using TomatoCMS / Zend Framework cooperating with the product owner, an interaction designer, design agency Luyfel, IT Infrastructure and the hosting provider (PHP, MySQL, TomatoCMS, Zend Framework, LinkedIn API, Selenium; Linux, Windows; Scrum).
Bruno Klassiek
Jul 2010 - Aug 2010
For this specialised classical CD and DVD store setup a webshop for selling tickets to classical concerts based on Magento with custom bugfixes and customisations (PHP, MySQL, Magento; MacOSX, Linux, Windows).
Malaga / Amsterdam
Apr 2010 - Dec 2010
As a PHP software developer I again worked on implementing new functionalities into the website and related maintaince work (PHP, Smarty, MySQL, JavaScript; Linux, Windows).
Ibarra y Sanjuan
Mar 2010 - Jun 2010
For this customer I setup a B2B webshop based on Magento with custom bugfixes and customisations (PHP, MySQL, Magento; MacOSX, Linux, Windows).
Den Haag
Jan 2010 - Feb 2010
For this website I solved some bugs and implemented new functionalities (PHP, Zend Framework, MySQL; MacOSX, Linux, Windows).
Malaga / Amsterdam
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).
Mar 2008 - Feb 2009
As a PHP software developer I contribue to the development team responsible for the TomTom website (PHP, Smarty, MSSQL, JavaScript; Linux, Windows; Scrum). 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)
Sep 2007
Static code analysis of a HTML subscription form written in PHP for a major bank (PHP, MySQL; Linux, MacOSX, Windows).
Jan 2007 - Jul 2007
Again I was part of the development team and responsible for multiple projects. (PHP, PEAR, MySQL, JavaScript, HTML; Linux, Windows)
Robert Vlug
Jul 2006
I put in my observations for the chapter about security in the book "Een eigen webwinkel voor Dummies (My own webstore for Dummies)"
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)
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)
Jan 2006 - Feb 2006
I helped this client by fixing a list of bugs in already existing code. (PHP, MySQL, JavaScript; Linux, Windows)
Feb 2005 - Nov 2007
Support for Trojan Scan and security support.
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
Jul 2002 - Sep 2002
I made some small changes to their CMS (PHP, Oracle, HTML, JavaScript, WebDAV; Linux, Windows 98).
Razorfish Europe
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
Mar 2002 - Dec 2003
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).
Feb 2002 - Apr 2003
Besides the website CMS to enter, modify, remove houseboats for the website, 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)
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).
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.

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).
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).
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.
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
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.


Vrije Universiteit
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

Scrum Institute Dec2016 Scrum Master Accredited Certification
Magento Sep2012 Magento Developer's Paradise 2012
Startup Weekend Jul2012 Startup Weekend Amsterdam 2012
Magento Jun2011 Magento Developer's Paradise 2011
Magento Oct2010 Magento Developer's Paradise 2010
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


Open source
Aug 2001 - now
My own open source projects: Magento: EmailImages also on Github: EmailImages (see also my website dedicated to Magento: Magentron), PEAR: Crypt_Xtea, Rebuild Thunderbird's popstate, Trojan scan.
Contributions to different Open Source projects: Ecomdev_PHPUnit, fwanalog, SnortSnarf, Metabase, modman, NuSOAP, PEAR: PHPDoc, PHP: OpenSSL module.
Home Owners

Aug 2006 - Dec 2011
For more than four years I have been the treasurer of my Home Owners Association.
NGI 2001 - 2009
Dutch Society for Information Science (NGI, Dutch), Security department.
S.V. Cyclades
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).


Dutch native
English fluent
Spanish advanced
German moderate