Besides this resumé, I invite you to take look at the rest of my website as well. It is as much part of my resumé as anything here.
Location: 53.131322, 6.56588653
After finishing my IT education in july 2004, I started working as a database engineer. Because of that, when it comes to writing software, databases and SQL are my primary specialties. Additionally, I have a lot of experience with Java, because it was the primary language at my education. I also have a lot of experience, both professional and personal, maintaining Linux systems. In my spare time, I also spend time on electronics (audio electronics mostly), 3D graphics, video editing, music, movies, games, wushu, hung ga and some other activities.
When it comes to writing software, the jobs I find most interesting, is writing exact, logical software or hacky scripts, without convoluted requirements, and without management "wanting the icon in corn flower blue". I've never written software for scientists, but I do think that's the kind of software I like to write. Also, whenever I see things like youscope or cold boot attacks, I'm also inspired and impressed; hacking technology to make it do things that were not intended is just a very nice modern form of creativity.
As for what I don't like to do, I'm getting more and more of an adversity to web programming. The list of reasons for this is too long to go into here, but suffice it to say that it is a very backward platform, in my opinion. To me, Web 2.0 is everything we were able to do in the 70s, but we need CPUs with a thousand times higher clock frequencies and multiple cores and two thousand times as much memory. Ironically, the API's, languages and tools are as primitive, or even worse, than they were in the 70s.
I don't want to do any financial programming anymore, because financial types make matters far too complex and it is simply not inspiring. Besides, this world has too much "paper shuffling" as it is. The solution is not to automate it, but to get rid of it.
Additionally, I don't like developing in Microsoft Windows. I prefer Linux. Linux is for hackers, Windows is for suits.
The beauty of today's world is that we stumble upon people like Wiebe who have the vision and skills to break down a problem and find solutions for it. Wiebe saw a data problem I had and had the open mindeness to use available sources and link them together to create my solution. I had to virtually cross a great distance to find these qualities in an individual and would not hesitate to recommend Wiebe's work to anyone. As we say here in Quebec: "Merci beaucoup mon ami". — David Joly, davidjoly.com
Augustinus College Groningen
Sicirec Group B.V.
Initially as part of a team of two, but now by myself, I design and develop the software needed to automate a large part of our administration. This means a custumor relation management system, but also an extensive database system to automate the administration of investment funds. We use Ruby on Rails and Postgresql for this.
Besides the new database software, the legacy system, using DataPerfect, also needs to be maintained. This is minor as well as major maintanance. Because of this, I have the questionable honor of being a proficient DataPerfect administrator.
Additionally, I do all the network- and system administration. Our network consists of Windows clients, a Linux server, running Debian and a Linux router, running a modified version of Coyote Linux.
Universitair Medisch Centrum Groningen
Together with a fellow-student, I wrote a program in Borland Delphi to automate the processing of data produced by mass spectrometers and gas chromatography machines used to analyze urine samples, to produce a graphical report and store the information in a database.
Although usually they don't use first year students for practicum assistance, I was offered to assist at programming practicums. They were having a shortage, so they asked those people who were in their first year with the highest grades for programming whether they were interested. I declined, but later in my education (fourth year), I decided to do it after all, and I'm happy I did. Somehow, I liked helping those students learning to code.
I have extensive experience with Linux systems. The first distribution I used was Slackware, back in 1998. Since then, I have installed and used Linux From Scratch, Coyote, Gentoo and Debian systems. Because of the years I ran (and still run) Slackware, Linux From Scratch and to some extent Gentoo, I am used to getting into the guts of the system and configure things manually. Especially in the early days, maintaining a Linux system was quite different from what it is today.
My Linux experience of course includes everything like Apache, Samba, SMTP/IMAP/POP software, Software RAID and most other frequently used server software. However, I also use Linux as desktop machine, so my experience isn't limited to server software.
In my years of working with Linux systems, I have written a great deal of scripts to automate processes, whether it's to help me automate backup processes, or support my lazy nature (because I can't be expected to do a certain action on multiple files by typing it twice).
Postgresql, SQL and PlPgsql
In my opinion, it's the database's responsibility to ensure data integrity. Some people like to use the database models, provided by Frameworks like Hibernate or Ruby on Rails (Active Record actually) for that, but in my opinion, that's very bad design, because you then have a database which accepts faulty data. Add to this the amount of trouble I had with Active Record, in that it's very unpredictable, which makes it even worse. Because I prefer to let the database ensure data integrity, especially for a financial database like we have at Sicirec, I have a lot of experience in writing triggers, views, rules, etc in SQL and PlPgsql.
Java was the primary programming language at my education, so I know that language pretty well, even though it's not my favorite (too convoluted).
Borland Delphi 7
For my graduation project, we used Borland Delphi 7, as directed by the company. It's not my favorite programming language (it's basically pascal), but we managed quite well. Because I worked on that project for 5 months, I got more than a passing familiarity with the language, and got to know it quite well.
Ruby (on Rails)
I have a lot of experience writing Ruby code. Not only because I work with Ruby on Rails, but also because I use it a lot when I need to do some data processing. Ruby is one of my favorite languages, because it's very consice and very powerful.
CVS, Subversion and Git
At the start of my education, I was not aware of version control management for source code. Yet, ever since the first assignment that involved more than one person, I had this idea that just e-mailing zip files to eachother was not the way. When a fellow class-mate told me about CVS, we immediatly used it for our project, and things started going much better. We even registered the project at Sourceforge.
I cannot imagine how I would work without version control anymore. I do know that I don't want to be part of any development team in which they don't use it. And yes, they exist. I don't know about other IT educations, but mine didn't require the use of SCM. In fact, they didn't even mention it. In my opinion, IT students should be well versed into using Subversion, Git, or other high-quality source control systems.
I've used Subversion quite extensively and have recently started working with Git.
I have a fair amount of experience with PHP, but mostly with local scripting, as opposed to server side software. Examples of the scripts that I write are found elsewhere on my site. The experience of server side PHP I do have is mostly in Drupal.
Over the course of about two years, I (partly) designed and built a complete HiFi surround system. It has tought me a thing or two about building, diagnosing and repairing audio equipment and general electronics skills like PCB design. I have a separate section on my website about it.