I am an independent software developer, working at a variety of clients around New Zealand, mostly in the Wellington area. I have more than 20 years of experience in the IT industry, spanning work on IBM mainframes and midrange systems, through to PCs, UNIX and internet platforms. I combine a strong understanding of computer science and software technology with a broad range of practical experience.
As a consultant, I'm able to understand client requirements in terms of business goals. I implement effective and timely solutions, but with an emphasis on quality. If I have a technology bias, it is towards open standards.
As a developer, I'm an excellent team leader and mentor for other programmers. I provide technical leadership in projects from inception through to post-production, so that I am responsible for architecture, implementation and acceptance. To create software that is useful I get involved with business people to understand their goals, working with them rather than merely for them.
To achieve quality in software, I advocate quality and agile IT practices. At several organizations I have implemented version control practices and automation across the build, test and deployment phases of the development lifecycle. I actively follow news, blogs, podcasts and conferences looking for better ways to develop software.
Currently my main area is enterprise development in Java, Groovy and Oracle, utilising a wide range of open source libraries and technologies.
I am also active in several software development communities. Since 2007 I have been an organizer of the Wellington Java User Group.
My most recent engagement has been a 7 year contracting job at Red Energy, a Melbourne-based Australian Energy Retailer. I worked as the team lead for the Applications Development team, and later as Manager - Applications Development. The team included five other developers and a business analyst.
We have developed a number of database, reporting, integration and web applications, using a combination of Java and Oracle technologies.
The largest of these applications is a market database and energy reconciliation system that supports many aspects of analysis and reporting for the business. Today it contains nearly 300 tables, with billions of rows of data.
Some of the challenges we've been dealing with are:
The technologies I've been using lately include:
- Java Frameworks: Spring, Lucene, iText
- Web: Tapestry, GWT, jQuery, Tomcat, Grails
- Data Access: Hibernate, iBATIS, JDBC (inc Spring JdbcTemplate), Groovy SQL
- Build: Ant, Ivy, TeamCity, Gradle
- Testing: JUnit, DbUnit, Mockito, Concordion
|2000-present||Freelance programming and consulting — Skeptical Humorist
|1997-1999||IBM USA/Ameritech (Chicago) — DirectTalk/Genesys
|1995-1997||IBM New Zealand -- IBM CallPath/DirectTalk
|1993-1995||IBM New Zealand -- Systems Consultant for Customer Service
|1992-1993||Twin Technology (New Zealand)
|1991||IBM New Zealand
|1990-1991||Victoria University of Wellington
|1987-1990||IBM New Zealand
|1985-1992||Victoria University of Wellington
|1980-1984||Aotea College, New Zealand|