PO Box 4244
Briar Hill, VIC 3088
Home Phone: +61 (0) 3 9461 4161
Mobile Phone: +61 (0) 412 477 661
Home Fax: +61 (0) 3 8677 1881
To be an expert software developer. To share my expertise by mentoring junior developers and publishing articles and books.
REA Group (Melbourne, VIC, Australia)
Dec 2012 - present
The consumer-facing web application that powers realestate.com.au is backed by provisioning, messaging and search systems that have evolved over several years. Michael leads a small team of engineers with responsibility for the long-term architectural direction of these systems, and for undertaking project work in cooperation with line-of-business teams to implement technical improvements.
REA Group (Melbourne, VIC, Australia)
Jan 2011 - Dec 2011
Michael was currently employed as a senior developer on REA's mobile team, responsible for development and maintenance of REA's iPhone and iPad applications.
Cogent Consulting (Melbourne, VIC, Australia)
April 2009 - Jan 2011
Michael is an experienced consultant, developer and team leader with expertise in many development environments and platforms. As well as cutting code, he is skilled at configuring the systems and tools that support the development process.
Michael has worked on numerous projects for Cogent's customers, including significant public Ruby on Rails and Java-based applications.
REA Group - Michael helped REA Group implement continuous delivery to streamline their software development and release processes. Starting from a chaotic and largely manual release process, Michael and a small team developed tools and recipes to use Chef to deploy REA's applications to a "virtual private cloud" in Amazon's EC2, enabling development teams to more effective deploy and test core applications.
Lonely Planet - Over a period of 18 months Michael helped Lonely Planet deliver a number of key improvements to their web site, including “Contact Us”, private messaging and their re-launched online shop. Significant technical components of this work included:
- Integration with Facebook
- Integration with Zendesk
- Migration of legacy customer support data
- Delivery of a digital fulfillment service
Majitek - Michael spent six months in 2009 working with Majitek on their connected real estate management product. Michael contributed to feature development in many parts of the Spring and Hibernate-based system, and also undertook a major effort to “skin” the UI of the application to allow Majitek to customise its look and feel for their customers.
In between customer engagements, Michael also spent some time working on Cogent's Getting Things Done® product, Runway.
Lonely Planet Publications (Footscray, VIC, Australia)
May 2008 - March 2009
Michael was engaged with Lonely Planet to join the major redevelopment of their public web site. In the course of the contract Michael worked on many components of the site, including the Drupal-based content management system and Java web applications.
Michael also acted as a technical team leader for much of the contract, being responsible for the day to day management and technical output of five developers.
Fast Search & Transfer (Melbourne, VIC, Australia)
November 2007 - January 2008
Michael was employed by FAST on a short-term contract to help with a major release of their AdMomentum product.
Tasks included fixing bugs and adding features in both the struts-based web front end and the stand-alone Java back end.
National Australia Bank (Melbourne, VIC, Australia)
January 2007 - November 2007
Michael was contracted to NAB as a senior developer in a large project team developing customer-facing J2EE systems.
CGU Insurance (Melbourne, VIC, Australia)
September 2006 - January 2007
Michael was contracted to CGU Insurance (part of IAG) to work on a new programme of work to develop a framework and end user applications that provide a modern user interface to legacy policy management systems.
The initial project used J2EE application servers and a 3270 screen scraping tool to deliver a browser-based end user application based on data managed by a legacy mainframe system.
Design and development of a J2EE application that provides a browser-based front end to a legacy 3270 insurance policy management system.
Development and configuration of an integrated continuous build environment based on Ant and Pulse that allowed new developers on the project to quickly become productive, including comprehensive unit testing, coverage reports and static analysis.
Australia Post (Melbourne, VIC, Australia)
November 2005 - August 2006
Michael's role in the Solution Architecture group at Australia Post involves performing technical quality assurance for projects developed by Post's external service providers. This includes document, design and code reviews, as well as general support and coordination of development, test and production environments.
Michael engages with external lead designers and developers and internal technical teams to provide specialist guidance, ensuring applications are designed, developed, tested, and deployed properly and in accordance with enterprise standards.
Compile a design and coding standards document for use by all Java and J2EE development teams working on Post projects.
Development of a WebLogic authentication module for OpenLDAP. This module extended the BEA-provided OpenLDAP authenticator to allow editing of user and group properties.
Sensis Pty Ltd (Melbourne, VIC, Australia)
February 2004 - October 2005
Michael was contracted to Sensis Pty Ltd to work on an enterprise-wide integrated content management system. The work involved custom J2EE application development and integration using Tibco and Sun components.
Key challenges in this project included development of components for high performance XML data manipulation, and concurrent scheduling of inter-dependent work units.
Michael was engaged on various components of the system over the life of the project, including:
New design and development of a subsystem to convert legacy data in real time. This component handles thousands of JMS messages an hour and performs updates to the central content server, maintaining order and transactional consistency.
Development of additional functionality for the core server component including a subsystem to publish content to downstream legacy applications.
Troubleshooting and resolving bugs in the end-user GUI application.
BearingPoint, Inc. (formerly KPMG Consulting) (Melbourne, VIC, Australia)
January 2002 - January 2004
Michael held the position of senior consultant in the Technology Integration Services practice of BearingPoint, Inc. He was responsible for and involved in a wide range of consulting assignments covering design and implementation of complex information technology systems.
Establish an EAI infrastructure and initial integration processes for a state government department using Tibco BusinessWorks 5.0 and Tibco Enterprise for JMS.
Design and develop enhancements to an EAI adapter between a Tibco Integration Manager application and a legacy provisioning system.
Trouble-shoot and develop enhancements to a proprietary server process that extends Tibco InConcert.
Maintain and trouble-shoot the data architecture for a large enterprise middleware application, including updates to the physical data model.
Design and develop a Java testing framework for enterprise middleware applications, including IBM MQ Series and Tibco Rendezvous, MessageBroker and Integration Manager components.
Design and develop a test log analysis toolkit in Perl to measure and report on the results of middleware interface testing.
Senior IT Specialist (Solution Architect)
IBM Global Services (Atlanta, GA, USA)
November 1999 - December 2001
Michael was employed as a Solution Architect within IBM's Center for E-Business Innovation, primarily as part of the content management/e-publishing team.
Michael's duties at IBM included: designing and developing web-based (Internet and intranet) publishing, content management and portal solutions for IBM's customers; managing small to medium development projects; providing leadership and mentoring to other members of the development team; and architecting solutions with Domino/Lotus Notes, IBM WebSphere, IBM DB2, IBM WebSphere CommerceSuite, Oracle, Open Market, Vignette and Interwoven.
In 2001, Michael planned, designed and implemented a content management system based on Interwoven TeamSite, and integrated with WebSphere CommerceSuite, for a major manufacturer of medical imaging equipment. This on-going project involved requirements analysis and macro design, micro design, implementation and deployment. Michael's role included pre-sales, technical design and lead development duties.
In 2000, Michael worked with the world's premier financial market to define requirements and project scope for web user registration and personalisation system. For the same customer, Michael contributed to the development of a prototype Java application for institutional investors to track trading events and information.
PSR Software, Inc. (Atlanta, GA, USA)
March 1998 - November 1999
Michael was employed by PSR to perform pre-sales marketing and demonstrations, post-sales implementation, project management, installation, training and support for the software products that PSR develops and distributes.
Other duties included developing Domino-based e-commerce web sites for customers and performing ongoing Notes/Domino development and maintenance tasks for internal and external customers.
JustWin Technologies: JustWin is an Australian software vendor that markets a Lotus Domino-based production support system for the apparel industry. Michael was responsible for pre-sales activities such as consulting and demonstrations, and post-sales infrastructure design, implementation and training. Implementation of the JustWin system included gathering requirements from the system's users, and working with the vendor to design and implement customisations as required.
Visual Impact: PSR markets a Domino-based web query tool for relational databases, called Visual Impact. As well as providing implementation and user support, Michael spent several months updating and enhancing the product to streamline the user interface, utilise new features provided by Domino R5, and ensure Year 2000 readiness.
Write "cookbooks" on use of the DB2 LSX to access DB2 data from Notes and Domino applications.
Update existing Notes applications to ensure Year 2000 readiness.
Software Spectrum Inc. (Melbourne, VIC, Australia)
March 1997 - March 1998
Design and implement Lotus Notes network architectures
Design, develop and implement Lotus Notes applications
Perform analysis and design phases of projects
Manage small to medium size projects
Pre-sales consultation and support for the sales organisation
Write project definitions, scopes and statements of work
Write reports and documentation
While at Software Spectrum, Michael planned for and designed an enterprise Lotus Notes email infrastructure for a large department of the Victorian State Government. This included developing standards documents and administration guides, overseeing the initial roll-out of the environment, and providing administrator and user support. As a result of the new infrastructure, the Department was able to consolidate multiple disparate email programs and systems, integrate with the rest of the Victorian Government's Notes systems and take advantage of Notes' calendaring and scheduling capabilities.
In another project, Michael contributed as assistant project manager for a project to implement Microsoft SMS for a major international chemical company. This project involved working with the customer's project team to define application requirements and installation procedures, then building and testing SMS installation scripts to support these requirements.
Systems Engineer, Senior Systems Engineer
Business Computers of Australia (Melbourne, VIC, Australia)
May 1993 - February 1997
Design and implement Lotus Notes systems
Design and implement LANs (Novell Netware, OS/2 LAN Server, SCO Unix)
Design and implement LAN and WAN communication solutions
Plan and manage upgrades of operating system & application software
Pre-sales consulting in above areas
Problem resolution and technical support
Lotus Notes, LAN and systems support
2nd level support for other engineers
Maintenance and support of internal Lotus Notes systems
- Association for Computing Machinery
- Institute of Electrical and Electronic Engineers
- IEEE Computer Society
Higher School Certificate, 1986 Banyule High School