Diego Moriarty

OBJECTIVE To solve challenging problems using Java by joining new or already existing projects.


1993-1997  Coleraine, Northern Ireland
University of Ulster at Coleraine
BSc(Hons) Degree in Computer Science with DIS (Diploma in Industrial Studies).
My final year project was a secure virtual network to provide electronic payments; involving digital signatures, public key encryption, etc.. written in Java. The project is currently online: http://moriartys.com/cryptonet


March 08 - July 09 Aachen, Germany
Software Developer, programming full time in Java 5 & 6, Eclipse, SVN, Trac, TestNG, Structure101. This project required advanced Java, including dynamic class loading, simultaneous class loaders, cryptography, cross-version serialization, optimized garbage collection, heavy use of co-operating and competing threads with an emphasis on design, deadlock-free guarantees, correct exception handling, response time (real time) and performance.
I added customer-specific (banking) functionality to a transaction server while working on the new version, which required an internal re-write into a new architecture, offering greater flexibility and more than twice the transactions per second.
See http://www.riskshield.com for more.

August 07 - November 07 Basel, Switzerland and telecommuting
Software Developer, Java 1.5, XML, XSLT, Xerces, JAXP.
I was responsible for re-implementing XML data imports from a number of online music providers to a common format, also implementing new ones and improving the existing code for better maintainability.
See http://packetvideo.com for more.

September 06-March 07 Bath, England
Praxis H.I.S.
Software Developer, programming full time in Java 1.5, Eclipse RCP (Rich Client Platform) and plugins, SWT, XML, XSLT, JNI, JDBC and MSAccess.
I was responsible for stabilizing and recoding most parts of the first version of a desktop-based Content Management System, prior to wide spread release. I improved the reliability and long term maintainability of the application, implemented new functionality and simplified the user experience.
See http://esafetycase.com for more.

September 03-March 06 Berlin, Germany
Product+Concept GmbH
Software developer, programming full time in Java (J2EE) 1.4 and 1.5, XML, XSL, Tamino (Software AG's XML database), Together, Eclipse, Castor, JAXB and Adabas.
I was responsible for the design and implementation of new business processes in Java (backend team), including data import/export, accounting, etc... as well as maintaining and improving the already existing platform. See http://www.productandconcept.com for more.

August 00-December 00 Stuttgart, Germany
Danet Internet Solutions
Software developer, programming full time in Java, XML and XSLT (including custom extensions), Servlets using Apache/Tomcat and Java WebServer, implementing HTTP1.1 protocol specs, some Oracle 8 and MySql configuration, etc...
I was responsible for the research, design and implementation of an interface between two incompatible Content Management Systems, so that they exchange live information when prompted by web user requests.

February 00-August 00 San Francisco, California
M-Code Software Corp.
Senior Java Engineer, Java 1.2, XML, cryptography using SSL and JCE, Swing, source control, etc.. . I joined this startup at the initial ramp-up stage to bring the already existing (demo-quality) Java portion of the system to industry strength. I was also responsible for the design and implementation of the security framework (PKI, certificates, firewalls and routers, etc..).
The system is a multi-tiered usage-tracking platform (API based) for software developing companies to shift their billing method from "per license" to "per use".

May 99-October 99 Antwerp, Belgium
Agfa Gevaert NV.
Software developer, programming full time in Java, including JNI (with C under both Solaris and Windows), internationalization, real time image processing, using the DICOM (Digital Imaging and Communications in Medicine) protocol and smartcard technology.
I was the sole developer for version 2 of the application, which is used in the radiology department of a hospital to manage patient information and their related x-ray images. More info at http://medical.agfa.com/en/showtext.t3l?file=workflow.html

April 98-February 99  London, England
Webdevelopment Limited.
Analyst developer, programming in Java, JDBC, XML, etc.. also SQL (including Oracle optimizations, some PL/SQL and ConText cartridge).
I was part of the team developing the Java client and server parts, connecting to the back end (Oracle) through JDBC.
The product, Mediasurface, is a content management system for web sites with hundreds or thousands of pages. See http://mediasurface.com for more information.

September 97-March 98  San Francisco, California
Sapient Corp.
Software developer, improving an already existing home banking web application. A 24/7 operation involving 15+ servers and 20+ people.
I was at the front end programming in  C and  Perl under Unix, heavily involved with CGI, HTTP, Cookies, SSL, certificates, security/encryption, etc. The back end was C++ and Oracle.

September 95-August 96  Galway, Ireland
Digital Equipment Corp.
Programming in C under Unix, I joined a team developing a product ordering system accessible through the WWW.
After that project was over and during the last four months of the contract, I took over new projects writing in Java, both applets and stand-alone applications, mostly web/comms related.
As secondary tasks I also programmed in C under VMS and installed/configured networked PCs running Windows 3.11, Windows NT and many different software packages.
For my performance during this year I was awarded a D.I.S with commendation (top 12% of the class).

May 92-March 93 Madrid, Spain
First National Management
I worked in the marketing department and performed a wide range of tasks, including installing and configuring PCs (hardware and software), customized programming (DB-IV) of shared databases on the network and supervising a team of agents.


April 02-March 03 Amsterdam, The Netherlands & Dublin, Ireland
Studied Dutch, French and Irish Sign Language.

February 01-May 02 Klagenfurt, Austria & Berlin, Germany
Studied German language at university of Klagenfurt and later in Berlin. A mix of intensive and non-intensive courses for 460+ hours. Starting from zero I have now a "Mittelstufe II" (ZMP 75%) level, meaning I am fluent but still make some errors.

June 01 Klagenfurt, Austria
I sat the Beta exam 311-080 "Sun Certified Web Component Developer for J2EE Platform" (Servlets, JSP, JavaBeans, etc..). Only 250 people took part (by invitation only) in this "beta" exam, our feedback was used in preparing the final version of the exam.

November 99 Amsterdam, The Netherlands
Prepared and passed the exam (86%) to become a "Sun Certified Java 2 Programmer"

October 99. Contributing author of "Sun Certification Programmer for Java 2 Study Guide (Exam 310-025)" published by Syngress Media on March 2000. ISBN: 0072123729. I wrote chapter 9, "Java Threads", including concurrency, deadlock, synchronization, signaling, scheduling, etc..

January 99 London, England
Prepared and passed the exam (94%) to become a "Sun Certified Java 1.1 Developer".

November 97 San Francisco, California
Prepared and passed the exam (86%) to become a "Sun Certified Java 1.1 Programmer".

May 91-January 92 Vigo, Spain
Instituto National de Empleo
Assistant Electronic Technician course. Duration: 720 hours.
From electrical engineering to design and assembly of printed circuits. Heavy use of oscilloscopes, multimeters, function generators, etc..

March-August 91 Vigo, Spain
Academia Samicro
Repairing and Maintenance of Computers course. Duration: 120 hours.

July-September 90 Vigo, Spain
Academia Disket
Open Access course. Duration 100 hours.
It was a popular package in the eighties, with database, word-processor,  spreadsheet etc..

July-September 90 Vigo, Spain
Academia Disket
Assembler (8086) course. Duration: 100 hours.
Using MASM, macros, I/O, etc..

English and Spanish (bilingual), German (fluent with some errors), Dutch (beginner), French (beginner) and Irish Sign Language (intermediate).

I enjoy playing pool, chess, cycling on a sunny day, reading, socializing, going on holidays with friends, visiting other countries and learning about different cultures. Lately I have done some bungy-jumping and paragliding.

Since I was twelve I taught myself some languages like Forth, Assembler (Z80, 680xx), DB-IV, Salt and more recently JavaScript and Perl. Other languages I learned at college are C, C++, Pascal, Prolog, Ada, Excel and Lisp. My first contact with computers communications was while working for First National in Madrid (1992), the next summer I programmed in Salt my own BBS. I'm on the internet since 1993.