Senior Software Developer June 2018 - Present
- Developed a number of small machine learning and analytics security-based tools built on the Spark framework.
- Developed an application for correlating customer devices with external vulnerabilities
- Introduced the ability for building multiple Scala libraries from source using Git submodules and a custom SBT plugin
- Built a small in-house service for synchronising Git repositories from Bitbucket to Gitlab to facilitate a migration from Teamcity
Team Lead January 2017 - April 2018
Senior Software Developer June 2014 - December 2016
- Led a small team focussed on improving the customer experience around the web-facing aspects of Ambiata. This included being involved at all stages of the product lifecycle; from the initial technical architecture, user design, through to front and back end implementation.
- Replaced a Gulp script with a general-purpose Haskell build tool for building the various web projects at Ambiata. This included supporting an in-house type-safe template language Projector, as well as compiling Sass and Purescript components.
- Developed a number of services written in Haskell for storing metadata about the configuration and state of the Ambiata data pipeline.
- Involved in the development of a number of Haskell tools and libraries for AWS-based service deployment and discovery.
- A core developer on Ivory, a Hadoop-based application written in Scala optimised for storing large data to allow for efficient generation of machine-learning features.
Senior Software Developer Jan 2012 - June 2014
- Senior Developer on Stash, involved with all stages of the development cycle. From feature planning, to implementation and support.
- Ran a Git Pro Bootcamp class for new Atlassian_ employees.
- Converted a large number of SVN repositories to Git.
Introduced FP into various of Stash:
Heavy contributor to Stash developer community:
Software Engineer Level 4 Mar 2010 - Dec 2011
Software Engineer Level 3 Jul 2007 - Feb 2010
Extended open-source COBOL to Java library to enhance complex legacy systems
Migrated teams from Clearcase to Git/Ivy to support development in multiple continents
- Creator of https://github.com/charleso/git-cc/
- Developed internal model-driven tools, transforming UML to Java and Flex artefacts
The Learning Edge
Software Developer Nov 2003 - Mar 2007
- Worked closely with peers on a small development team
- Analysed, designed and developed features based on requirements
- Maintained versions of products, including regular bug fixing
- Consulted with customers onsite and implemented tailored solutions
- Co-organiser of ScalaSyd Meetup
Bachelor of Computing, University of Tasmania, Nov 2003, 87%, GPA 6.67
Deans Roll of Excellence, 2001, 2002, 2003
References provided upon request.