Curriculum Vitae

(Best viewed with Internet Explorer 5 or higher)

Overview

I am an experienced Sun certified Java Consultant who specialises in J2EE application development, particularly in financial environments. Although I prefer integrating into a team, I have also worked on short term, self-starter projects where time and budget constraints require the ability to hit the ground running. Projects involving XML, XSLT, or Web Services are of particular interest. I obtained UK Security Clearance in March 2003.

I have had UK Security Clearance since March 2003.


Personal Details
Name   Angus John MacCuish
Nationality   British
Date of Birth   5th April, 1969

Professional Qualifications
Certification   Grade   Year
TeckCheck Java 2 Programming Exam (NEW)   98%   2004
Sun Certified Enterprise Architect (I)   91%   2002
Sun Certified Java Developer (Java 2)   97%   2002
Sun Certified Web Component Developer   94%   2002
Sun Certified Java Programmer (Java 2)   93%   2001
Sun Certified Java Programmer (Java 1.0.2)   84%   1997

Employment History
Feb 2004-Aug 2004   Standard Life (UK Life and Pensions Division)   J2EE / XML Developer
I am currently working for Standard Life Assurance in central Edinburgh.
The UK Life and Pensions group is currently upgrading to the latest ORIGO XML message standard, in particular the Bonds/Pensions Contract Enquiry product. This involves:
  • Message validation with XML Schemas
  • Digital signature verification and trusted third parties
  • Integration with back office mainframe systems via MQ using XML
During the first month of this contract I was also responsible for migrating a number of large J2EE projects from Visual Age to WSAD / CVS, in preparation for moving to Websphere 5. This is the fourth ORIGO project I have worked on and this area of E-Commerce is of particular interest to me (as is ACORD, XBRL, ebXML, etc). Skills: J2EE on Websphere / WSAD, including: servlets/JSPs, EJBs, JMS (with MQ Series), XML/XPath/XSLT/XLink, ORIGO Standards, SSL/PKI, JUnit, Ant, mentoring new Java recruits.
 
Jan 2003   South Lanarkshire Council   J2EE / Oracle 9iAS Portal Consultant
This was a short term consultancy role where I advised on J2EE best practices, prototyped/demonstrated Oracle Java portlets and mentored staff on OC4J, Oracle PDK and JDeveloper. Skills: Oracle 9iAS/10g, OC4J, Oracle PDK and JDeveloper.
 
Apr 2003-Dec 2003   SPIS, Glasgow   Security Cleared J2EE/ XML / XSLT Developer
A 3 month contract (extended to 9 months) working on an internal HR application for the Scottish Police forces (converting a PHP application to J2EE). During this time I have worked on both the EJB and Web tiers, however I spent most of the time working on the transformation of XML data using server-side XSLT. Skills: XML/XML Schema/XPath/XSLT/XMLSpy IDE, XHTML/Javascript/CSS, security, servlets, EJB, PHP/MySQL, Oracle, JUnit, CVS, Ant, IntelliJ.
 
Feb 2003-Mar 2003   Connecti, Glasgow   Java / J2EE Developer
A 6 week contract building a Struts web application for Toyota's European dealerships portal. This involved EJB development using JBoss, Struts in a Tomcat web container, unit testing with JUnit and third party integration using Web Services. The work was done using Extreme Programming and also involved working closely with web designers in order to convert their HTML into JSPs with Struts custom tags. Skills: Servlets/JSP/Struts, EJB, JavaMail, JBoss / Tomcat, XML, XSLT, Oracle, JUnit, Ant.
 
Jul 2002-Jan 2003   BUPA, Central London   Java / J2EE Developer
A 6 month contract where I assumed responsibility for Java development work at BUPA’s head office. This involved working closely with Broadvision on BUPA’s Web Personalisation projects, using the Broadvision Enterprise Portal version 7. My duties also included maintenance and further development of the BUPA XML B2B quotation portal and other Web Services. Skills: all aspects of Broadvision v7, including Jakarta Struts, custom tag libraries, servlets/JSPs, XML/XSLT and content management. Like Abbey National (see below), one of the main aspects of my role was mentoring and facilitating technology transfer from the Broadvision consultants to BUPA employees.
 
Dec 2000-Jun 2002   Abbey National, Glasgow   Technical Specialist
A 6 month contract (extended to 18 months) as a member of the Java/Internet Development Support Group, which provides technical support and shared infrastructure software to Abbey National’s E-Commerce development teams. During my time there I was given overall responsibility for XML B2B messaging (designed and implemented the ANFIS XML B2B router) and wrote portal software to give third parties access to Abbey National Pension quotes systems (via XML over SSL). Part of this work involved evaluating JAXM and SOAP). Also jointly responsible for the Websphere / Apache servers, source code configuration management (PVCS / Dimensions) and Visual Age for Java training/support. In addition to Java I developed C/C++ Windows software for the Dimensions CM server. A valuable skill I learned during this time is a very detailed knowledge of the HTTP protocol, which was used on numerous occasions to fix/optimise Java servlet code. The most satisfying aspect of this job was my work involving the Java Security/Cryptography API, used to create digital signatures for pension quotes, which is now incorporated into a number of Abbey National portals.I also worked at Scottish Provident near the end of this contract, to provide a skills transfer to new Java trainees when the two companies merged. Skills: Java (including JSP, servlets, XML (JAXP, JAXM, SOAP), XSLT processors (including automatic Java code generation from XML), dynamic PDF generation, JNI, JCE/JCA, interfacing to IBM CICS/DB2), Websphere Application Server / Visual Age for Java, CityWire news feeds, PVCS, Dimensions, C/C++, Windows NT/2000.
 
Aug 2000-Dec 2000   JP Morgan, Glasgow   Java / J2EE Developer
Part of a team developing a large financial reconciliation system, using J2EE and 100% XML based. XML documents from any number of feeds enter the system asynchronously and are queued for processing in a multi-threaded reconciliation processor. The entire system was component based, with each component running in Weblogic and configured by XML languages. The components communicated using JMS, ultimately publishing exceptions to an external workflow system for operators to deal with. Initially I worked on the gateway to the workflow system, and the Servlet/JSP user interface (also using XSLT). I then worked on a component in the heart of the reconciliation processor, which received individual document comparisons and made decisions as to whether the reconciliation is complete. The test/production environment was Unix (HPUX) and Sybase, with the development done on Windows NT / ClearCase.
 
Apr 2000-Jul 2000   Andersen Consulting, London   Java / J2EE Developer
I initially joined an internal Andersen project using the Blue Martini E-Commerce system with Weblogic, Oracle and XML. This role also involved mentoring junior staff new to Java and E-Commerce. After the project ended I transferred to the Andersen team working with Sony on the Playstation 2 web site, which involved extending the Dynamo Commerce Server from ATG. I mainly worked on the order processing system, writing JHTML templates, Java Beans and Dynamo servlets (using Visual Age for Java) to process the shopping cart and communicate with the financial system (SAP) and the fulfilment centre(s). During this time I consolidated my knowledge of EJBs and Application servers, and gained expertise in extending ‘out-of-the-box’ E-Commerce systems to meet clients’ unique requirements.
 
Feb 2000-Mar 2000   Systems & Networks, Glasgow   Java/Javascript Developer
A 2 month contract which involved the webification of a Lotus Notes/Domino product for the construction industry. This demanded both server and client side development: the former required Java Agents which accessed the Domino databases and external servers (using FTP Beans). On the client side, Javascript was used to gather user input from dialog boxes and communicate with Domino applets. 'Pass-thru' DHTML was also written to improve usability.
 
Jul 1999-Jan 2000   Scottish Provident, Edinburgh   Java Developer
A 7 month contract, maintaining and developing a large Internet E-Commerce system which provides insurance quotations. The initial 3 months of this contract involved creating an online computer based training course for Independent Financial Advisors, providing interactive courses and tests for emerging insurance markets. The site uses HTML, JavaScript and Cookies on the client side, with Java servlets on the server side for accessing/updating the users records (test scores, course progress and time keeping) held in an Oracle database. Lots of use was made of JavaScript1.1's image rollover capabilities, and Audio/Video streaming using the Real Producer, Real Server and Real Player software from Real Networks. For the remainder of the contract I was more involved in maintaining the insurance quote system, which used Java servlets, JDBC and more recently, XML. The experimental XML quotes system provided a portal to the legacy quotes engines, parsing XML messages conforming to the Origo DTD via IBM’s XML parser.Skills gained: Java Servlets / JSP, XML, Visual Age for Java, Apache Web Server configuration with SSL, interactive web technology, plug-ins, cookies, audio/video streaming.
 
May 1999-Jun 1999   Tanning Technology Europe, Surrey   Java Developer
Java / Swing GUI development (1 month contract), working at Tanning's European Office in Chertsey, Surrey. Brought in to develop a traditional front end interface for a new BSkyB airtime booking system, in order to compare it with the servlet / DHTML version which was being designed by the existing team. The system was to be as user-friendly as possible which meant using the new Java 1.2 drag and drop functionality, with online help, browser-style book-marking and user-preferences. This contract also gave me my first commercial taste of CORBA (Visibroker), which the front-end used to communicate with the back-end services.
 
Sep 1998-Feb 1999   Tanning Technology Europe, Copenhagen   Java Developer
A 6 month contract (3 months + 3 months extension), working for a US consultancy based at Maersk Shipping in Copenhagen, part of the A P Møller group. Worked on the first release of a massive software project, developing a Freight booking system for Maersk Line's container fleet. During this time I worked on the front-end development (80+ individual screens), which used a Java/Swing MVC architecture interfacing with a legacy mainframe system and a large Oracle database. The development platform was Windows NT, using first Visual Cafe, then JBuilder 2/3. This phase of the project was delivered on time despite many technical difficulties and tight deadlines, giving me invaluable experience in large-scale global software development/testing, and a head-start in Java swing GUI development, which was relatively new at the time.
 
Feb 1998-Aug 1998   Scottish Telecom, Glasgow   Java / Web Developer
A 7 month contract (3 months + 4 months extension), maintenance and further development of a large in-house CRM application. The application was 2-tier, with a 'fat-client' digitally signed Java Applet directly accessing an Oracle database using JDBC. During the final 3 months of this contract I was seconded into the web development team to develop Perl scripts for the intranet web sites. The main skills I gained during this contract were SQL and JDBC, security, and development/deployment of production systems in a Windows environment, in particular the JBuilder IDE and Configuration Management.
 
Aug 1997-Oct 1997   MDIS, Hemel Hempstead   Java Developer
A 2 month contract (1 month + 1 month extension) which involved developing JavaBeans for an ambitious Internet project. This involved emulating PRO IV client software in Java (1.0.2), thus making it platform-independent and available via the Internet. Many of the components created are now available in the Java Swing packages, however back in 1997 these luxuries did not exist and building them from scratch gave me a great insight into the fundamentals of GUI design. The latter part of this work took place in Irvine, near LA.
 
Jul 1994-Jul 1997   Aerospace Engineering Dept, University of Glasgow   Senior Technical Programmer
A 3 year contract working as a Unix System Administrator/Programmer for a JISC NTI (New Technology Initiative) project, which aimed to exploit spare workstation CPU cycles on idle machines for distributed/parallel processing, particularly Hypersonic Aerodynamics computations which normally run on large supercomputers (e.g. Cray T3D). The project chose to use the LSF load balancing system from Platform Computing, which involved collaboration with this Toronto-based company. Day to day duties included Unix system admin, testing and upgrading of LSF, user support and training.

Skills
Java
J2EE: Servlets / JSP (with Struts and custom tag libraries), EJB, JDBC, JMS (with MQ Series), JNDI (with LDAP), RMI and JavaMail using the following application servers: Websphere, Weblogic, Oracle AS (OC4J), Broadvision, JBoss / Tomcat, ATG Dynamo, Blue Martini
XML: DOM/SAX parsing using JAXP/Xerces; DTD validation and XML schemas; B2B XML messaging using the Origo standard, XML-RPC and SOAP; XPath/XSLT/XLink; PDF generation using Apache-FOP; XML for application configuration.
IDEs: WSAD, Visual Age for Java, JDeveloper, JBuilder, Forte, Visual Cafe, Visual J++, XMLSpy
Other development tools: Ant, JUnit, CVS, Visual Source Safe, PVCS, Toad
J2SE: GUI development with AWT/Swing; JNI; Java Security / Cryptography (including JCE)
Object Oriented Programming / Design
UML: Rational Rose (since 1998 after attending a week long course from Rational), Together J, Argo
OOP: Design Patterns, including J2EE Design Patterns
Familiar with CORBA and IIOP.
General
SQL with the following RDBMS: Oracle, DB2, Sybase,MySQL
JavaScript CSS HTML DHTML (hand-coded and using DreamWeaver or FrontPage)
HTTP / HTTPS protocols using the Apache Web Server
C/C++ (in both Windows and Unix environments)
Unix Shell scripting
Perl / PHP Programming with MySQL database
Kernel-level Unix skills: Solaris, Linux, HPUX, AIX, IRIX
Microsoft: Windows 95/98/NT/2000/XP

Education
1992-1993   University of Edinburgh, Scotland   MSc Computer Science
1987-1991   University of Edinburgh, Scotland   BSc Physics (First Class Honours)
1981-1987   Oban High School, Scotland

Interests
Sport, reading, cinema and travel.

Referees
Available on request.