Skip to content
Seattle, USA


  • Strong Perl programming skills, principal language

  • JavaScript, jQuery, Backbone, Underscore and D3

  • Linux power-user, mostly Ubuntu and Debian

  • SQL primarily with PostgreSQL, Oracle and SQLite

  • Web development expertise using the languages above with HTML and CSS

  • Version control with git (github: bowman) and others

  • Interest in various programming paradigms: imperative, object-oriented, functional, logical and relational

  • Haskell, used for Project Euler

  • Clojure and ClojureScript

  • Rusty C and C++ programming skills

  • Experience with Java, Bash, Ruby, Python, Lisp, Scheme, Erlang and numerous other languages

  • Excellent oral and written communication skills

  • Strong learner, able to master new languages and APIs very quickly


Sixteen years commercial Internet development experience with various employers in contract and permanent roles. Every employer sought to re-employ me for further work of the same high standard.


2014-02 - Seattle, USA

Working as an SDE on the internal A/B testing platform I was part of the team supporting evaluation and decision making systems for most of Amazon retail. We also provide safe, staged roll-out of new features. Responsibilities and accomplishments include:

  • Migrating the UI from a legacy platform to modern JS
  • Developing and supporting large scale service
  • Operations support for Big Data™ processing systems
  • A number of efficiency gains, both in user responsiveness and broadly used services
  • Requirements gathering, system design, code reviews, mentoring, and the like

Strategic Data

2002-02 - 2014-02 Melbourne, Australia

Strategic Data provides diverse data services, ranging from online surveys to data warehousing, often leveraging open source tools. My role has developed as the company has grown and encompasses: building and maintaining the architecture of core products, planning future development, reviewing code and mentoring, interviewing potential hires and hands-on programming. Major on-going projects which I initially developed and continued to oversee include:

MDS Validator

A meta-data driven validation system used by various Commonwealth agencies to verify file submissions' basic formatting, check relational integrity, apply customized business rules and provide clear feedback and timely reporting. The modular architecture allows custom plug-ins and rules when required and has successfully evolved over time. Initially batch processed, it was then deployed as a Windows executable with public key cryptographic file submission and now is integrated with an online work-flow for discussing and annotating issues.


Implemented and continue to develop an online survey framework. Interesting aspects include: the use of prototype inheritance to provide light-weight customization and extension, a YAML-based DSL for non-technical staff to describe complicated survey flows and validation, dynamic web-server configuration and a streaming data export system to transform data into a number of target formats.

AMHOCN - Australian Mental Health Outcomes and Classification Network

In addition to utilizing the MDS Validator, the AMHOCN project has a PostgreSQL data warehouse for statistics, analysis and reporting.

Sportal UK

1999-03 - 1999-09 London, United Kingdom

Contracted to work with an Accenture team to build a robust, integrated portal architecture with a full suite of Internet services from email to e-commerce. Perl development for a number of applications including InterShop enhancements and CGI scripts. Building session and user management systems based on Netscape Directory Server LDAP for a multi-site, multi-domain architecture. This involved C programming, Tcl scripting and HTTP authentication trickiness.

Yellow Pages

1997-04 - 1998-04 Melbourne, Australia

Internet development role on a flexible in-house team using Perl, C++ and C. The role also required some HTML, JavaScript and Java development. Some responsibilities and projects were:

  • Using C/C++ to give every directory advertiser a homepage
  • Directory search interface; refinement and results
  • Created novel tools to solve development problems:
    • HTML to C/C++ converter
    • Intranet tools for staff
  • Using Java for stress testing applications
  • Interactive pay-phone application used on phones across Australia
  • Provided interface to dynamic street directory
  • E-commerce services creation and maintenance
  • Web-server and systems administration on Unix
  • Contracted in 8/1998 to extend the homepage application

Next Digital (formerly Web Design Group)

2001-01 - 2001-09 Melbourne, Australia

Consulting to refactoring and improving back-end Content Management System in PHP/MySQL/JavaScript.

Torrington Interactive

2000-06 - 2000-08 London, United Kingdom

Enhancing a Perl/SQL Server employment site (MS IIS) with personalization, security, dynamically generated graphics, search features and bug-fixes.


2000-05 - 2000-05 London, United Kingdom

Perl CGI for an e-commerce subscription service, user database, authentication and basic content management.

Emap Online

1999-12 - 2000-01 London, United Kingdom

Developing in Perl with a MySQL database and Apache on Solaris to extend functionality and improve performance for their sites. The system created uses request caching, offline content generation, conditional compilation and database tuning to return results faster.

News International

2004-04 - 2004-04 London, United Kingdom

Using Perl to automate content preparation for WAP and SMS subscription services.

Oasis Communications

2000-02 - 2000-02 London, United Kingdom

Adding features to existing Perl code as part of a training materials system using MySQL and Apache.

Open Software Associates

1998-12 - 1999-01 Melbourne, Australia

Working on a base class development team and supervising the product testing. Cross-platform GUI and event driven programming. Top score on C++ interview quiz.

WSA Communications

1998-04 - 1998-04 Melbourne, Australia

Contracted to develop a secure e-commerce proxy for Telstra's Kahootz online product. Perl and C on HPUX server delving into the arcana of HTTP, SSL and Web clients.


Bachelor of Computing (Computer Science) Honours, Monash University Clayton Campus.

Completed Bachelor of Computing (Computer Science) Honours in 1998 and received first class honours.

Dux of Honours 1998 (Top Student), receiving the Open Software Associates award. The honours years involved extensive course work and a long-term research thesis.

  • Honours years Bachelor of Computing (Computer Science) Honours H1 (Dux) 91.6 1997 - 1998
    • Research Thesis using C++ /Evolving Virtual Worlds/ H1
    • Advanced C++ Idioms (Lect: Damian Conway) 99
    • Cryptography and Security 92
    • Computer Graphics and Artificial-Life 95
    • Machine Learning 86
    • Natural Language Processing 91
    • Neural Networks 88
    • Communication and Research Skills 90
  • Third Year Bachelor of Science/Law H1 (Dux) 81.7 1996 - 1996
    • Computer Graphics 91 High Distinction
    • Software Engineering II 89 High Distinction
    • Extended Individual Project 80 Distinction
    • Artificial Intelligence 91 High Distinction
    • Image Processing 95 High Distinction
    • Multimedia & the WWW. 86 High Distinction
    • Data Communications 85 High Distinction
    • Multimedia 50 Pass
    • Property Law 68 Credit
  • Second Year Bachelor of Science/Law H1 (Dux) 79.1 1995 - 1995
    • Computer Architecture 92 High Distinction
    • Science of Programming 76 Distinction
    • Software Engineering I 85 High Distinction
    • Operating Systems 89 High Distinction
    • Foundations of Computing 92 High Distinction
    • Discrete Mathematics II 75 Distinction
    • Contract Law 61 Pass
    • Torts 64 Pass
  • First Year Bachelor of Science/Law H1 (Dux) 83.3 1994 - 1994
    • Computer Science I 89 High Distinction
    • Mathematics (Advanced) I 85 High Distinction
    • Chemistry I 90 High Distinction
    • Computer Science II 92 HighDistinction
    • Mathematics (Advanced) II 80 Distinction
    • Chemistry II 82 Distinction
    • Legal Process 65 Credit
  • Haileybury College, Keysborough Campus 1988 to 1993 High School VCE 157.4/164 (Academic Honours) 83.3 1988 - 1993
    • Chemistry 40/40
    • Mathematics Change & Approximation Ext. 37/40
    • Mathematics Reasoning & Data 38/40
    • English 34/40
    • Physics 39/40

Online Courses