Damien Whitten

Senior Developer and Leader


github.com/daemonl
0458 553 200
dw@chaos404.com

I have skills in a wide variety of technical methodologies, languages, tools and leadership techniques, bringing Agility and transforming communication everywhere I work.

Clear communication of complex ideas, both deep and wide, puts me in a great position for a combination of leadership, mentoring and hands-on coding. In successful projects, I have been all three, generally focusing on coding in the API / back end, and training newer developers and graduates to implement user interfaces in web technologies.

I have worked with and implemented a number of different Agile approaches, usually based in Kanban, taking elements from Scrum, always retaining agility in both the product and the methodology itself.

With a passion for solving problems, I am constantly looking for new solutions to real world problems in software, bringing my history of success and stability to teams I work with.

Skills

Languages

  • Go(lang)
  • JavaScript, ECMA6, Node.js
  • CSS, HTML5
  • React.js, Redux

Technologies

  • PostgreSQL, MySQL
  • Linux (Debian, CoreOS, Arch)
  • Amazon Web Services
  • Docker, Kubernetes

Methodologies

  • Agile, SCRUM, Kanban, Lean
  • Continuous Integration
  • Test Driven Development
  • Microservices, SOA

Career Overview

  • Nearmap
    Senior Developer
    Nov 2019 > Present
  • ECAL (E-Diary)
    CTO
    May 2018 > Nov 2019
  • Third Party Trade (New York)
    CTO
    Feb 2016 > Feb 2018
  • Lynx IT
    API Lead, DevOps
    Oct 2015 > Feb 2016
  • Rebase Pty Ltd
    Software Consultant
    Mar 2012 > Mar 2016
  • HealthKit Ltd
    CTO, DevOps
    Jan 2012 > Aug 2012
  • World Vision Australia
    Front End Lead
    Apr 2011 > Dec 2011
  • Urban Intelligence
    Integration & Field Programmer
    Feb 2011 > Apr 2011
  • Lightmoves
    Project Support & Programmer
    Jul 2009 > Feb 2011

Project & Work Experience

Nearmap
November 2019 - Present

Technologies

  • Kubernetes
  • AWS
  • Terraform
  • Go

Project

Nearmap provides areal imagery to customers using both an in-house map browser, and through integration with GIS software. The WMS server is a legacy application which adapts our standard map tiles API to the open WMS standard. To add native support for GDA2020, and to assist in migrating to a new map tiles service, major changes were required in the legacy WMS server.

Outcomes

Due to split focus in a relatively small team, I was lucky enough to be given full code ownership of these changes. I achieved this by wrapping the legacy service with a new Go layer as an adapter for incoming and outgoing requests, and progressively replacing functions in the legacy codebase until there was none left, with no disruption to customer flow, allowing for the future release of GDA2020 and other new workflow features.

ECAL | CTO, Senior Developer
March 2018 - November 2019

Technologies

  • Docker
  • Microservices
  • AWS ECS
  • Cloudformation
  • Go
  • Python
  • Node.js, React.js

Project

ECAL is an online calendar marketing platform. As CTO, I began a team and technology transformation from a quagmire of tech-debt into a planned and 'clean' micro-services architecture.

Outcomes

Within six months, we were able to reduce our AWS bill to a third. Bugs were reduced, but far from gone, we implemented logging with cross-service tracing, and we were able to 'survive' major customer launches without a glitch.

Third Party Trade | Lead Developer
March 2016 - Jan 2018

Technologies

  • Go
  • Kubernetes
  • React.js
  • AWS

Project

Third Party Trade is an API-First online securities brokerage. As lead developer, I built a quality, modern API, aggregating various 'industry standard' (read: legacy) systems into a single, radically simplified interface.

Outcomes

Customers of Third Party Trade are able to add financial trading functionality to their applications in a matter of weeks, using the services we have developed:

  • FIX Gateway
  • Order Management System
  • Account transaction system / balance management

Keno iOS API | API Lead / Devops
October 2015 - March 2016

Technologies

  • Node.js and GoLang
  • AWS
  • Ansible
  • Docker
  • GoCD and Travis CI

Project

I was brought on to Tabcorp’s Keno project to design and code API’s that would support new gaming platforms.

The unique requirements of the project required innovative solutions to meet emerging standards within the highly regulated gaming industry.

Examples of innovative approaches to meet project requirements included:

  • Nationwide event synchronisation without web sockets
  • Creating micro-services to support multi-jurisdictional regulatory requirements
  • Content negotiation using a modified HATEOAS standard for future-proofed backwards compatibility

In addition to this new API providing extend functionality and improved reliability, it had to remain backwards-compatible with the existing website.

A key part of my role at Tabcorp is to design, build and maintain the development and production environments, across multiple platforms.

Regulatory constraints necessitated the use of different platforms for different aspects of the project, using both AWS and various Private Regulated Networks.

I was responsible for building a continuous delivery pipeline, designing and delivering Git workflows, as well as implementing automated testing.

Outcomes

  • Full Continuous delivery system using GoCD and Docker
  • A series of micro-service APIs handling live draw information, placing bets and retrieving results for Keno gameplay
  • Docker as a deployment tool in the wider Tab Digital team, and provided guidance for a gradual roll-out across various tab projects.
  • Regulatory approval for new ‘baseline’ gaming components.

Energy Portals | Tech Team Lead
October 2014 – October 2015

Technologies

  • Grunt, Bower, NPM
  • CoffeeScript, LessCSS
  • Aura project
  • Vanilla Javascript

Project

Smart Matter (formerly Greenbox) are an ‘Internet of Things’ energy and resource management company who build intelligence gathering hardware and software which can be installed in homes and businesses to manage and optimise energy usage. Smart Matter specialise in Solar Systems, and provide end-user web portals for energy retailers.

I was contracted by Smart Matter to build all front-end components of customer portals, working with styling and designs from agencies, and building APIs to import data from Smart Matter hardware and databases.

Outside of developing software, I was contracted to formalise the team’s Agile process, and implemented a ScrumBan-like approach with rotating scrum masters, daily stand-ups, and fortnightly iterations. Most importantly, this process had a positive impact on our customer relationships and improved developer morale.

Some of the Portals I have developed include:

  • AGL Home Solar, AGL Onsite Installer provisioning app
  • ‘Flow’ community Water & Energy billing and management portal
  • Generic Solar and Energy Usage portals.

Outcomes

All portals are in active use by tens of thousands of end clients each day

Based on the success of this work, Smart Matter have been contracted to develop customised energy management portals and applications for several other large customers.

GU-API | Back End Dev
October 2014 – Present

Technologies

  • Google ProtoBuff
  • GoLang
  • ZeroMQ
  • Debian 7 & 8

Project

Working with the AGL web team, the API also enabled external agencies to implement portals inside existing web frameworks. Some of the challenges addressed through development of this API included: Hard coded dependencies between back and front end systems PHP scalability issues

Outcomes

Basic scaffolding between components to allow independent innovation Defined boundaries, allowing end to end tests of discrete components. Introduced Behaviour Driven Development Implemented Git (Gitolite) and Continuous Integration (Docker) servers

ReferralNet Claims 2 | Java Dev
December 2014

Technologies

  • Java6 and Java8
  • C#.NET DLL

Project

update their Medicare and medical billing software. Global Health approached me to assist with challenges including:

  • Consolidation of multiple existing systems
  • An unmanageable Delphi code base
  • Updating an out-of-date Medicare client adaptor

Outcomes

An ‘ideal’ API structure for Medicare Client Adaptor calls, build into a discrete application implementing the API which could handle all Medicare integration, and pass all Medicare Notice of Integration testing

A translation adaptor for the existing legacy applications so that no code changes would be required

Plan for future development to transition to the new API structure.

SchKit CRM/ERP | Back End Development
2013 - Present

Technologies

  • GoLang
  • PostgreSQL
  • Javascript
  • LessCSS and Bootstrap
  • Grunt, Bower, NPM
  • require.js, jQuery
  • Debian 8
  • Ansible
  • Docker

Project

SchKit is a scalable and customisable data platform I developed within my own business to support the needs of multiple clients. Currently, SchKit is deployed as the base for several medium enterprise customers CRM/ERP and project tracking platforms.

SchKit supports:

  • An Iterative and agile approach to data design
  • Parallel synchronised data structures
  • Immediate response to changing requirements
  • Stable product for routine use

Claiming.com.au | Back End Dev
2013 - Present

Technologies

  • GoLang
  • Java6
  • MySQL
  • Debian 8, Ansible, Nginx

Project

I was approached by Cutting Edge software to redevelop their Medical Practice Management software using modern technologies and techniques.

This project required integration with the technically outdated and under supported Medicare Australia Client Adaptor.

Forming a partnership between my own company (Rebase) and Cutting Edge, we crafted a business model that developed a public API to address the various limitations with the Medicare Client Adaptor.

Claiming.com.au’s API makes medical billing integration easy for developers and businesses. The API:

  • Removes requirements for developers to use Java6, 32 bit (or any other dependencies)
  • Allows for parallel key usage
  • Provides documentation of validation rules
  • Correctly processes validation rules
  • Has a consistent structure across all claim and report types
  • Supports asynchronous, idempotent report fetching (with call-back URLs and ‘changed since’ queries)
  • Provides primary keys to track each claim.

The API has been used to submit over 350,000 Medicare claims since 2013.

NLX | Lighting Control Application
2012 – Present

Technologies

  • Node.JS
  • Dynalite DyNet
  • Hardware
  • iOS Web App
  • JavaScript, CSS, HTML

Project

NLX is a hardware and software project that adds rich functionality, and an easy to use interface to the Philips ‘Dynalite’ lighting control system.

The system is installed in the State Library of Victoria, and the National Library of Australia, ACT

As the predominant energy management and building control interface in Australia, the NLX system and interface has been used in a variety of applications; from controlling lighting levels in art galleries, to switching for home entertainment and HVAC systems.

NLX:

  • Links Dynalite RS485 network to a modern web application through web-sockets.
  • Allows complex back end logic to control lighting and automation systems, without breaking the distributed intelligence advantages for daily use

Salesforce>Medicare Link | Salesforce API Integration
April - July 2015

Technologies

  • GoLang
  • Salesforce / SFQL

Project

Dimple Care are the largest provider of podiatry services to Australian aged care facilities. Manually processing and submitting over 60,000 Medicare and Dept of Veterans Affairs claims per year by extracting reports from their Salesforce CRM, Dimple Care needed an automated and less error prone process.

The solution was to create glue code and a linking application to connect the Salesforce API and the Claiming.com.au Medicare billing API to automatically extract and batch process all billable sessions recorded in Salesforce, and post back the results/status to the database.

Outcomes

Dimple Care’s Salesforce CRM, directly resulting in the company saving 1.5 FTE, and has enabled them to substantially grow their business, without the need to make any further investment in back office processes

Commtrack ERP | Full Stack Dev
v1 2009, v2 2014

Technologies

  • Symfony2 (PHP5)
  • MySQL
  • Pronto Accounting ODBC Drivers
  • VisualBasic for Applications (VBA)
  • Microsoft IIS and LDAP servers
  • mDaemon Email Server

Project

Lightmoves are a specialist lighting design, control and installation company, specialising in complex ‘Dynalite’ products. The company was looking for a software solution to track customer quotes, proposals and projects by consolidating various computer based and off system processes.

The solution was a fully customised, hosted CRM and ERP application, based on open-source libraries and languages.

HealthKit Practice Management Software
January - October 2012

Technologies

  • Symfony2 (PHP5)
  • MySQL
  • Web
  • Debian, Apache2

Project

SpecialistLink is an Australian based cloud provider of Health Practice management software, automating and streamlining the entire Healthcare value chain. SpecialistLink’s ‘HealthKit’ application provides diary management, secure patient record storage, online payments processing, and health-fund claim processing.

Leading a small team, my role was to transform and rebuild SpecialistLink’s existing application into a global offering that could meet the needs of practitioners around the world.

Outcomes

Introduced the Scrum-Agile project management methodology, combined with Jira and Greenhopper software. The new project management methodology increased productivity on the project by highlighting bottlenecks in the work-flow.

Developed a secure software platform that processed Medicare claims, provided complete medical practice management functionalities and was readily scalable and adaptable to be launched in any global market

This involved the design of a flexible data model which allowed users of the system to customise the application to work with their regionalised requirements

World Vision Australia Website
April - December 2011

Technologies

  • C#, .NET
  • SiteFinity CMS
  • HTML, Javascript, CSS

Project

World Vision's digital team pride itself on being a cost effective marketing channel for the charity, measuring its success on donation rates and child sponsorships through the website. Part of the in house web development team, I was responsible for all front-end JavaScript and assisting with .NET API development and integration.

Outcomes

Web Standards Development:

Responding to a lack of clearly defined development standards in the team, I worked with management to design a ‘best practices’ framework that covered design, development, testing, deployment and content management.

Redeveloped a number of web sites, including:

  • Child Sponsorship search tool
  • New home page
  • Rebrand
  • Letter Translator tool