About me

photoHaving commenced working in the industry in 1983, I have accumulated technical experience on a diverse range of platforms.

My roles have covered the full life-cycle of software development. I have successfully led and contributed to teams that have delivered applications to corporate, small to medium business, NGOs and government organisations in Australia and the United Kingdom.

Read on to learn more about my professional background and what others have had to say about my work.

Head of Engineering, Clover.com.au (2019 - )

In September 2019 I took over the role of Head of Engineering.

Watch this space for further details.

Senior Software Engineer, Clover.com.au (2019)

I joined Clover.com.au in June 2019.

During my first few months the bulk of my work was focussed on re-engineering the main Ruby on Rails application to support multiple advisors.

Senior Software Developer, Birdsnest (2018 - 2019)

In January 2018 I joined Birdsnest, an online retailer based in Cooma, NSW. Whilst I visited “the nest” most months until my departure in June 2019, I was based remotely at my home on the NSW Central Coast.

My work included:

  • documenting policies for development of custom applications
  • analysing support for business processes by a specific E-Commerce platform compared with the current custom software
  • modelling generic elements of the emerging architecture using Structurizr
  • documenting non-functional requirements for the future architecture
  • researching products offered by various E-Commerce vendors
  • co-presenting a paper to the board with recommendations for future technology choices
  • presenting papers to external advisors
  • guiding a new team member with using Cucumber & Capybara to automate end-to-end testing
  • liaising with external partners
  • mentoring colleagues in skills such as TDD with Ruby
  • introducing a training and mentoring framework
  • fixing various bugs in server-side Ruby code
  • changing elements of Rails applications to support business needs
  • guiding implementation of imgix and section.io to improve site speed
  • instrumenting Ruby code as part of identifying contributing factors to sub-optimal site speed
  • improving the capacity of staging environments to facilitate more effective QA
  • assisting new team members set up their local development environments
  • introducing and facilitating fortnightly team retrospectives
  • reviewing many GitHub Pull Requests and mentoring colleagues to improve their confidence in reviewing PRs
  • planning, guiding and contributing to an upgrade of the customer-facing web application to newer versions of Ruby and Rails
  • ensuring that automated tests for the main web application are run on a continuous integration server
  • initiating and overseeing work to secure the main administrative web application with unique logins using Auth0
  • initiating and overseeing work to update the main administrative web application, based on Rails 2.3, to Rails LTS to ensure implementation of security patches
  • initiating development team review processes

Contributor, Australian Ruby Community (2006 - )

Since late 2006 I have been a keen participant in the Australian Ruby community.

Most recently, I was delighted to present a talk entitled What were they thinking? at RubyConf Australia 2019.

One of the highlights of my career was leading the organisation of RubyConf Australia 2013, the inaugural Ruby conference in Australia, which was held in Melbourne in February 2013. This conference has since been held yearly, attracting speakers from all over the globe.

I also:

Developer, The Conversation (2015 - 2017)

In June 2015 I joined the technology team at The Conversation on a contract basis to contribute to the development of the web applications that support their sites in Australia, Africa, Canada, France, Indonesia, the United Kingdom and the United States as well as a Global Perspectives edition.

My work included:

  • facilitating process improvements to the development team’s workflow
  • facilitating effective communication among distributed members of the development team
  • mentoring colleagues and reviewing code
  • contributing to the customization of The Conversation’s Apple News channel
  • enabling fact check articles to utilize Google’s ClaimReview schema
  • contributing to various technical upgrades
  • contributing to the launch of The Conversation in Indonesia
  • facilitating more flexible pitches to editors from prospective authors
  • reviving and curating the Building the Conversation development blog
  • contributing to the development of a custom Analytics Rails application to provide enhanced metrics information to institutional users
  • maintenance and enhancement of the Data Warehouse, a Sinatra application which is an integral part of the suite of applications which form The Conversation’s web platform
  • improvement of the reliability of the test suite of the main application
  • development of a set of rake tasks to help manage translations in the codebase, subsequently extracted to the i18n-hygiene gem
  • contributing to the internationalisation and localisation of the main Rails application to support the launch of The Conversation France
  • collaborating with the Community Manager to facilitate improved management of comments
  • fixing various problems reported by customers and editorial staff

Director, Cockatoo Software Pty Ltd (2007 - 2018)

After founding Cockatoo Software in November 2007 I undertook assignments including:

  • project management and development of RMACheck, a Ruby on Rails application that provides an IT industry wide service providing IT suppliers, distributors, resellers and customers with the capability to determine the hardware replacement services an IT vendor offers to a specific street address in any country
  • contributing to Blake eLearning’s ongoing development of ABC Reading Eggs, Reading Eggspress and Mathseeds using tools such as Ruby on Rails, CoffeeScript and Ember.js
  • implementation of content management systems for Wine Country Villas and Golf Central Coast via customisation of RefineryCMS
  • project management, maintenance and enhancement of the Myhealthworks web portal, a Rails web application
  • development and maintenance of the Leading OHS web application using Rails 3 and jQuery
  • maintenance and enhancement of an internal Ruby on Rails and Flex application for Bosch Rexroth Pty Ltd
  • maintenance of a Ruby on Rails application that supports the operation of a shutters manufacturing company based on the NSW Central Coast
  • management of a project to deliver a timesheet web application using Ruby on Rails
  • advice about selection of technology to implement a website for Wyong Golf Club
  • provision of Ruby on Rails mentoring
  • development of a specialised content management web application with integrated social networking features for Plus2 using Ruby on Rails

Web Developer, Blake eLearning (2014 - 2015)

From March 2014 until June 2015 I worked for Blake eLearning as a permanent member of their staff, allowing me to focus fully on contributing to the development team responsible for Reading Eggs, Reading Eggspress, Mathseeds and WordFlyers.

Building upon the earlier contributions I made whilst consulting to Blake, I:

  • reconfigured CI projects to take advantage of new Buildkite agent metadata and parallelism features
  • automated updating of repositories dependent on a common internal RubyGem
  • facilitated remote pairing via tmux and ngrok
  • contributed to the migration of a MongoDB database to PostgreSQL
  • improved the stability of several continuous integration builds
  • established a process for dealing with non-deterministic tests
  • supported the team’s use of continuous integration tools
  • developed solutions to complex problems that were adversely affecting customers
  • refactored code to improve readability
  • overhauled test suites to run within acceptable time frames
  • improved audit trail to facilitate easier customer support
  • assisted with resolution of numerous customer service tickets
  • developed features using Ember.js and Blake’s HTML5 framework to replace legacy features that relied on Flash
  • facilitated the consolidation of tools used to track project activities

Senior Consultant, Cirrus Technologies Pty Ltd (2000 - 2007)

During more than seven years with Cirrus Technologies I contributed to teams developing software using Java’s standard (Java SE) and enterprise (Java EE) editions for many clients. I also provided services as an instructor.

For example, I:

  • played a leading role in developing a Health Insurance Comparison web application;
  • contributed to the development, support and enhancement of a Station Turnout System used by fire brigade personnel;
  • analysed, designed, developed and enhanced parts of a Sales Contact web application for a major insurance company;
  • managed several web application projects for a NSW government department as well as well as developing much of the software and mentoring development staff;
  • developed components of several Java EE sub-systems that contributed to replacing COBOL applications for a medium-sized insurance company;
  • delivered many public Java SE, Java EE and WebSphere courses on behalf of a major global technology corporation.

In my spare time from 2000 onwards I explored many Java technologies, especially open source frameworks. In 2004 I began to take an increasing interest in the Ruby programming language and the Ruby on Rails web application framework.

Senior Consultant, Advanced Software Engineering Pty Ltd (1997 - 1999)

Amongst a variety of assignments during my time with ASE, major clients included Qantas and Woolworths. I assisted a Qantas software infrastructure team as they migrated from CSP to VisualAge Generator. In particular, I taught members of the team the fundamentals of the Smalltalk programming language. For Woolworths, I managed a team of ASE consultants as we developed a Bank Reconciliation system using COBOL/CICS/DB2 and demonstrated the value of Micro Focus software tools. Within ASE I managed the improvement of business procedures as part of the implementation of a Quality Management System. I also provided pre-sales support for Object-Oriented development tools such as VisualAge for Java, Toplink for Java and Simply Objects.

Earlier Positions (1983 - 1997)

In my early years as a professional programmer I used technologies such as PL/I, COBOL, IMS, CICS and DB2 on IBM mainframes. Having started in the IT industry as a trainee programmer for TNT, I moved on to work at IBM Australia where I gained project management experience. During 1988 and 1989, an overseas working holiday included the chance for me to work as a contractor at Lombard North Central in Redhill, UK. Continuing contracting on my return to Sydney, I provided services to major corporations including IBM, Woolworths and Westpac.

From about 1992 onwards I began exploring Object-Orientation and Internet technologies in my spare time. From an OO programming perspective, I began with Smalltalk and later moved on to Java.


I hold a Bachelor of Science from Sydney University and am a member of the Australian Computer Society and the Association for Computing Machinery.

How I can help you

I invite you to explore my background, which may suggest how I can assist you.

If you would like to know more about what I can do for you or would like to talk with one of my referees, please contact me.


Keith was immensely helpful as soon as he joined Clover. We had a big Rails migration project that had been stalled for quite some time, but with his experience the project was quickly unstuck, and progress made on this business critical migration. He also helped mature our remote working practices, with better routines and better communication. I enjoyed the time I worked with Keith and hope I can work with him again in the future.

Alan Harper, Head of Engineering, Clover.com.au

Keith is a conscientious developer with a professional and methodical approach to building software. His clear communication style makes remote collaboration a breeze, and his friendly approach is sure to fit in with any team.

James Healy, Technical Director, The Conversation

Keith was such a delight to work with — experienced, thoughtful and enthusiastic, not to mention an all-round good guy. As a remote team member, he put extra effort into communication and collaboration, and that made working with Keith productive and enjoyable. His passion for Ruby along with his commitment to the Ruby community means you're guaranteed to always learn something from his approach and enthusiasm for technology.

Travis Winters, Former colleague at The Conversation

I worked with Keith for a couple of years at Blake Education. He is a very proficient and professional developer, as well as a great bloke to have around the workplace. Keith could always be relied on to get the job done and had a keen interest in improving how we (the developers) could improve our processes and code.

Tim McGilchrist, Former colleague at Blake eLearning

From the moment I met Keith, it was very clear that he cared deeply about the people around him and the broader community. I was not at all surprised to find him very active in the conversations that led us to start a new non-profit organisation to further the Ruby community in Australia. We could not have chosen a better person to be our founding president, and it was my privilege to work alongside him. As if that was not enough, Keith also organised Rails Camp 9 and the inaugural RubyConf AU. Few people can say they have done as much as Keith to help the Ruby community in Australia.

Sebastian von Conrad, Development Manager, Envato

Keith Pitty and his company Cockatoo Software have worked closely with Healthworks over recent years to develop and upgrade one of our critical web platforms. He is an experienced and gifted programmer and he worked closely with us to scope, develop and trouble shoot as required. I wouldn't hesitate to recommend him.

Ken Buckley, CEO & Founder, Healthworks

Keith delivers well tested software with a commitment to quality. He is open to new ideas, easy to work with and involved with the professional community.

Martin Stannard, Lead Web Developer, Blake eLearning

Keith's methodical ways, backed with 20+ years of experience in the software industry are a winning combination. Listen and act on his advice and you'll be ahead of the game.

Matt Allen, Director & Software Developer, Dev Logic Pty Ltd

Keith, Map 10 is working well. Thanks for all your work in getting it up and live. There'll be some happy kiddies out there in Reading Eggs land.

Katy Pike, Publisher, Blake eLearning

I have worked alongside Keith on a number of projects. I'm impressed with his ability to address complex customer requirements on one hand, whilst attending to a mass of technical detail on the other. I continue to recommend Keith's services.

Alan Green, Former Colleague at Cirrus Technologies Pty. Ltd.

Keith's wealth of programming experience combines with keen attention to detail, a mind always open to new ideas, and an unwillingness to compromise on quality.

Charles Miller, Former Colleague at Cirrus Technologies Pty. Ltd.

As one of Keith's peers at Advanced Software Engineering, I could always count on Keith's professional integrity, and his ability to be able to get the required results for our customers, in either a pre-sales role, a consulting assignment, or in delivery of teaching materials. Keith was always a pleasure to work with, and I found him to be very knowledgeable across his many areas of expertise.

Chris Fuller, Former Colleague at Advanced Software Engineering Pty. Ltd.