Software Developer at i-Optics
The Hague Area, Netherlands
Software Developer at i-Optics
The Hague Area, Netherlands
Experienced C++/Java software engineer, with knowledge of the entire product life cycle, from requirements to design, development, testing, deployment and maintenance.
I also have research experience and I am at my best when I work somewhere in between research and production, taking concepts from researchers and applying them in prototypes or production-quality software. I am capable of quickly developing proof-of-concept code that only requires polishing before it is ready for real-world use, helping to reduce time to market.
I have a broad range of experience, though I would primarily call myself a C++ or Java developer. I have developed for web applications, embedded devices, drivers and desktop applications, using many different languages, libraries and tools. I am capable of quickly switching between diverse projects and get bored if I don't. Learning is the reason I do things, when a project gets to the state where it repeats itself, I like to move on.
Some things I have experience with: C++, Java, JavaScript, PHP, Intel assembler, Matlab, SQL, XML, CSS, OpenGL, Python, etc, etc.
C/C++, Java, Win32, Networks, Security, Compilers, Graphics
(Medical Devices industry)
February 2009 — Present (10 months)
Developing a prototype, and later production-quality version, for a medical imaging device and application based on existing research proof-of-concept in Matlab. Also contributing to the further development of the underlying algorithms.
Also do firmware and tool development for one of our other devices.
(Public Company; Consumer Electronics industry)
December 2007 — January 2009 (1 year 2 months)
Software Developer on the TomTom HOME team, which develops the application TomTom customers use to manage their TomTom devices and which allows them to share content they have created with other TomTom users.
I was the only developer who developed on all of HOME's components: the user interface, device abstraction layer and server. Filled in for people as scrum master and technical lead. Also maintained, or helped to maintain, the build system, installers and translations.
(Educational Institution; Research industry)
April 2008 — September 2008 (6 months)
Part-time developer (mostly in C++ and Java) on the Trishul project; a continuation of my M.Sc. thesis. The project involved modifying a Java VM to support control flow security, whereby data entering the system is tagged to indicate its origin. These tags are preserved as data is copied through the system, and can be used for policy decisions, e.g. to refuse to let data from a sensitive file be forwarded to network connections.
(Privately Held; Internet industry)
September 2006 — December 2007 (1 year 4 months)
C++/Java software developer on enterprise content management systems.
Designed and implemented a document workflow system that allows documents - or versions of documents - to be subjected to a workflow involving publisher, editors, etc. before they are allowed to be published on a website.
Also developed other components, such as a schema validator for document metadata.
(Educational Institution; Computer & Network Security industry)
December 2005 — December 2006 (1 year 1 month)
Research assistant on RFID security. Implemented part of a networking stack for RFID protocols on embedded devices and wrote proof-of-concept exploit code for RFID systems.
(Privately Held; 51-200 employees; Computer Software industry)
1999 — 2003 (4 years )
C++ software engineer. Developed a DBMS and a network request broker, the web interface and many other tools and server components.
(Privately Held; 11-50 employees; Computer Software industry)
1999 — 1999 (less than a year)
Developed components for Delphi applications and web sites.
MSc (cum laude) , Computer Science , 2003 — 2008
Graduated with a 9/10 GPA; awarded a 9.5 for my final thesis on security in Java virtual machines. Focused on security, computer systems and distributed systems.
Computer Engineering 1999 — 2000
Computer Science 1997 — 1999