Phone: +61 457 092 803
I am a software engineer with many years experience in both small and large teams producing software and systems in a variety of industries. My experience covers processing engines (ETL), encryption, security, micro-services & API design, large scale hosting devops and general consulting.
I am an Australian citizen, a native English speaker, and am also fluent in Thai. I am available for full-time, part-time, contract and remote positions.
Publicly available source code repositories:
References available on request
Senior Software Developer, Seer Security
July 2018 – Present, Melbourne
A small security business with a flagship product used by a number of government organisations. They use a loose, Agile scrum methodology.
I initially was working solely on a content extraction and processing engine written in Go. As client requirements changed I was moved to a Python based APIs and infrastructure.
- Developed a distributed and configurable content extraction engine (Go)
- Maintained extensive tests and CI integration using machine learned datasets (Gitlab, Docker, AWS)
- Maintained API back-end (Python, Django, Postgresql)
- Came up to speed on existing code base very quickly
Senior Software Engineer, Freestyle Technology
June 2017 – July 2018, Melbourne
An IoT technology company providing hardware and software solutions to service providers and municipalities across SE Asia and Australasia. Their solution involves “smart” devices and real time control. They use an Agile scrum methodology.
As a member of the data team I developed a custom ETL and rules processing pipeline to cope with data from large deployments of devices, and the APIs required to consume this data by the rest of the system.
- Developed distributed network stream processing engines handling 1000s of messages per second (Go)
- Designed and implemented numerous based API micro-services (Python, Awk, Shell)
- Designed, implemented and administered Postgresql services and PL/pgSQL functions
- Designed and managed time series data systems (InfluxDB, TimescaleDB)
- Administered several Docker based deployments, both internal and external (Docker, AWS)
- Maintained excellent test coverage and CI services (PL/pgSQL, Jenkins, Groovy)
Senior Software Engineer, KLData/ARKpX
March 2015 – December 2016, Melbourne & remote
A small team developing a cross-platform, encrypted storage solution much like ‘Dropbox’ but using client-side, PKI encryption. Products in use by multiple government organisations. They used an Agile scrum methodology.
I was instrumental in the transition from a Java based product to a platform independent solution, developing the core encryption and business logic library used by multiple front-ends.
- Developed custom ASN.1 schemas for CMS (RFC 5952) communications (ASN.1)
- Created extensive cross-browser test suite and maintained CI (Node, Bamboo CI, Selenium)
- Maintained UI elements across all modern browsers (AngularJS)
Software Engineer, Ayuda Hosting
February 2010 – February 2015, Melbourne & remote
A traditional, “bare-metal” hosting and development business with a small team based in the Melbourne CBD.
As part of a small team I was involved in all areas of network design and installation, project planning and cost estimation. I worked for one year in the Melbourne office and then remotely from interstate and overseas.
- Managed large, redundant networks, firewalls and VMs (Xen, Keepalived, IPTables, IPSec, PF)
- Developed and improved control panel and billing software (PHP, SQL, Shell)
- Developed in-house CMS software with a custom ORM and plugin system
- Implemented large configuration systems (CFEngine, Puppet)
- Administrated highly available and redundant server clusters (Apache, Nagios, Postfix)
- Brought many large projects to deployment
Principle, User Space
April 2006 – Present, Melbourne, Asia & remote
Melbourne based hosting and development services to Australian and SE Asian clients.
Managed my own consulting, development and hosting business.
- Built a loyal customer base of over 20 clients
- Developed custom hosting control panels (Go, AngularJS, Ruby on Rails, Shell)
- Maintained 30+ Linux and BSD virtual machines including highly available databases and load balanced servers (BSD, Ansible, HAProxy, Postgresql)
- Administered free DNS service, custom dynamic DNS and OpenNIC services (PowerDNS, TinyDNS, Python)
- Developed and maintained custom support and monitoring software for clients (Python, Shell)
- Built custom REST API for a number of SaaS clients (Go, Sinatra)
- Built custom e-commerce integrations for international clients (Magento, Spree, Ruby, SQL, PHP, XML)
Web developer, Sensory Networks
February 2005 – April 2006, Sydney
October 2002 – February 2005, Outback Australia
Deployment of BSD VPNs, LDAP and email systems.
Programmer/DBA, National Telecoms Group
January 2001 – October 2002, Sydney
Developed large CRM used by 300+ seat call centers (VB, SalesLogix)
Programmer, DefineIT/Macquarine Health
2000 – 2001, Sydney
Maintained embedded C/C++ code for monitoring units.
2001 Bachelor of Computer Science and Software Engineering, The University of Sydney
1994 Bachelor of Applied Science and Computer Technology, Swinburne University (deferred)