Michael Rowe's Curriculum Vitae
Phone: +61 (0) 412 477 661
Email: mrowe@mojain.com
Blog: mikerowecode.com
LinkedIn: linkedin.com/in/michaelrowe/
GitHub: https://github.com/mrowe
Overview
I am an experienced professional software developer, architect and manager familiar with working in fast-paced agile environments. I have a strong focus on people–coaching, mentoring, and creating the conditions that allow them to be their most effective.
Employment History
Programme Architect, Resilience
SEEK (Melbourne, VIC, Australia)
Dec 2023 -
Provided technical and architectural guidance to the Technical Resilience programme, allowing SEEK to better understand and improve its risk position. Worked with engineering teams to protect critical systems and data assets, and configured AWS Resilience Hub to provide daily assessments of SEEK’s platform resilience.
Group Director, Engineering
Art Processors (Melbourne, VIC, Australia)
Mar 2021 - Sept 2023
As Group Director, Engineering I support a team of software engineers and managers who are delivering Art Processors’ core experience management platform product. In collaboration with the Chief Technology Officer and other engineering Group Directors, I lead the development and implementation of strategy for the entire engineering team, anticipating complex issues, challenges and opportunities, and ensuring integration with the wider organisational strategy.
Key achievements:
- Grew the engineering team from 12 to over 30 engineers, including planning for needs, identifying skill gaps, and driving front line recruiting
- Coached and developed several senior engineers into people lead roles
- Delivered major client projects on time and on budget
- Successfully launched the first version of our re-imagined core product
- Established strategies and ways of working to support the organisation’s three-fold growth over the last two years
- Participated in the Senior Leadership Team to manage the day to day operation of the business
Technical Team Lead
Art Processors (Melbourne, VIC, Australia)
Jan 2020 - Mar 2021
Principal Software Engineer - Reliability Engineering
Suncorp Group (Melbourne, VIC, Australia)
Feb 2019 - Jan 2020
The purpose of this role is to design, implement and manage a Reliability Engineering function for Suncorp’s Digital Technology business unit. I work with delivery teams across Suncorp’s banking and insurance brands to foster and promote an “SRE mindset” towards operating reliable customer facing applications.
The role also involves hands on development and implementation of systems and dashboards to measure and present key aspects of application performance and reliability to teams and business stakeholders.
Responsibilities:
- Review, identify and create proposals for technology improvements that enhance system reliability, resilience or measurement.
- Define, collect and measure system performance metrics that objectively define system reliability.
- Work closely with delivery teams to deliver enhancements that help scale systems and improve reliability to meet agreed reliability targets.
- Work closely with delivery teams to transition towards low or no touch change management practices in order to increase velocity.
- Consult with teams on reliability and resilience issues.
- Proactively provide technical leadership in Software Engineering, DevOps and Architecture issues.
- Attract, coach, and manage a distributed team.
Technologies:
- Java, Spring Boot, Python
- Splunk, ELK (Elasticsearch, Logstash, Kibana), Grafana, Prometheus
- AWS, Kubernetes, OpenShift
Delivery Manager
REA Group (Melbourne, VIC, Australia)
Jan 2018 - Oct 2018
In this role I had delivery and technical accountability for the technology teams in the Leads & Branding tribe. The team is building the next generation of digital marketing and advertising tools for REA’s customers. To aid with the pace and focus of this new set of products, the team is set up as a “startup”–expected to deploy often and learn quickly–but with the support and backing of an ASX100 enterprise.
I was responsible for building a productive and effective engineering team to support the product and business goals of the Tribe. Each squad is comprised of an Engineering Lead and 5-6 developers, plus a product manager and UX designer.
Responsibilities:
- Leadership of a team of ~20 technologists to motivate, develop careers, inspire best work, and support the day-to-day success of this team.
- Drive the productive and successful delivery of software products, ensuring the engineering team are aligned to organisational and business unit goals in delivering high-quality and cost-effective solutions.
- Provide clear technical strategy and make key architectural decisions to ensure successful design and implementation of software and infrastructure that align with business unit and REA Group goals.
- Manage the operational budget, optimising and evolving spend to maximise return on investment.
- Foster an environment of learning, openness and honesty.
Key achievements:
- Grew the team from 12 to 20 software developers over six months while managing the staggered roll-off of external contractors to minimise disruption to the teams.
- Coached and developed three senior engineers into new team lead roles.
- Set up structures and processes to support the new managers, including setting KPIs and development plans for all team members.
- Worked with senior stakeholders to establish a culture of collaboration between engineering, product, and design teams.
Architecture Manager
REA Group (Melbourne, VIC, Australia)
Feb 2017 - Dec 2017
In this role I led a team of developers, tech leads and architects who are responsible for providing architectural leadership, consulting and support to product delivery teams in REA Group globally.
Responsibilities:
- Leading the overall technical architecture strategy for REA Group in collaboration with other senior technical leaders.
- Using team resources, expertise and current industry insights to shape the vision, goals, and measures of success for the Architecture function within REA Group.
- Acting as an evangelist for the role of Architecture within REA Group, building support for the function and its team members among internal Lines of Business.
- Working with other functional leaders to understand current issues and strategic opportunities as well as managing their expectations.
- Working with the relevant architecture and tech lead forums to ensure consistent and strategic architectural models are in place.
- Building the architectural capability of delivery teams across REA Group by identifying, developing, and mentoring architectural talent in all teams globally.
- Coaching, mentoring and supervising the Global Architecture team to ensure they have the skills, knowledge and support to perform in their role whilst recognising their potential.
Key achievements:
- Redefined the engagement model for the Group Architecture team, in consultation with stakeholders across the business including Tech Leads, Engineering Managers, Product Managers and the Chief Engineer.
- Implemented planning and governance processes to improve the effectiveness of the team’s engagements with line of business teams.
- Drove the establishment of a “global architecture forum” comprised of technical leaders from across REA’s global businesses.
- Led the Tech Lead Guild, the internal “community of practice” and focus of profressional development for REA’s technical leadership.
Throughout my time at REA I have also initiated, driven and been responsible for a number of additional responsibilities not specific to my role including:
- Editing and curating the public REA engineering blog (http://rea.tech/).
- Coordinating and curating REA’s public contributions to open source tools and libraries (http://realestate-com-au.github.io).
- Mentoring and coaching grads and junior developers.
- Facilitating a cross-disciplinary group focussed on REA’s tech community outreach programmes.
- Promoting and supporting the community of internal “guilds” of practice.
- Contributing to the IT Grad Programme steering committee.
Senior Tech Lead
REA Group (Melbourne, VIC, Australia)
Jan 2016 - Jan 2017
Responsibilities:
- Leading the overall technical direction for REA in collaboration with other senior technical leaders.
- Providing technical direction to my team.
- Working with stakeholders to design high quality solutions that meet the needs of our users.
- Leading the implementation of architecturally complex projects of global significance.
- Maintaining existing products, including bug fixes and “Business As Usual” feature enhancements.
- Contributing to the REA knowledge base through blog posts, brown-bags sessions and coaching less experienced members of the team.
Tech Lead
REA Group (Melbourne, VIC, Australia)
Dec 2012 - Dec 2015
The consumer-facing web application that powers realestate.com.au is backed by provisioning, messaging and search systems that have evolved over several years. I lead 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.
In addition to product delivery projects, I managed and maintained some key internal infrastructure products including Atlassian Bamboo and GitHub Enterprise, including vendor relationships and contract negotiation.
Responsibilities:
- Contributing to the overall technical direction for REA in collaboration with other senior technical leaders.
- Providing technical direction to my teams.
- Working with stakeholders to design high quality solutions that meet the needs of our users.
- Leading engineering teams in the implementation of major products.
- Maintaining existing products, including bug fixes and “Business As Usual” feature enhancements.
- Supporting production systems.
Senior Developer
REA Group (Melbourne, VIC, Australia)
Jan 2011 - Dec 2011
I was employed as a senior developer on REA’s mobile team, responsible for development and maintenance of REA’s iPhone and iPad applications.
Consultant
Cogent Consulting (Melbourne, VIC, Australia)
April 2009 - Jan 2011
I am an experienced consultant, developer and team leader with expertise in many development environments and platforms. As well as cutting code, I am skilled at configuring the systems and tools that support the development process.
I’ve worked on numerous projects for Cogent’s customers, including significant public Ruby on Rails and Java-based applications.
Projects:
- REA Group - I helped REA Group implement continuous delivery to streamline their software development and release processes. Starting from a chaotic and largely manual release process, I was part of 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 I 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 - I spent six months in 2009 working with Majitek on their connected real estate management product. I 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, I also spent some time working on Cogent’s Getting Things Done® product, Runway.
Senior Developer
Lonely Planet Publications (Footscray, VIC, Australia)
May 2008 - March 2009
I was engaged with Lonely Planet to join the major redevelopment of their public web site. In the course of the contract I worked on many components of the site, including the Drupal-based content management system and Java web applications.
I 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.
Senior Developer
Fast Search & Transfer (Melbourne, VIC, Australia)
November 2007 - January 2008
I 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.
Senior Developer
National Australia Bank (Melbourne, VIC, Australia)
January 2007 - November 2007
I was contracted to NAB as a senior developer in a large project team developing customer-facing J2EE systems.
Senior Developer
CGU Insurance (Melbourne, VIC, Australia)
September 2006 - January 2007
I 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.
Projects:
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.
Technical Analyst
Australia Post (Melbourne, VIC, Australia)
November 2005 - August 2006
My role in the Solution Architecture group at Australia Post involved performing technical quality assurance for projects developed by Post’s external service providers. This included document, design and code reviews, as well as general support and coordination of development, test and production environments.
I engaged 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.
Projects:
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.
Senior Developer
Sensis Pty Ltd (Melbourne, VIC, Australia)
February 2004 - October 2005
I 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.
I was engaged on various components of the system over the life of the project, including:
Projects:
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.
Senior Consultant
BearingPoint, Inc. (formerly KPMG Consulting) (Melbourne, VIC, Australia)
January 2002 - January 2004
I held the position of senior consultant in the Technology Integration Services practice of BearingPoint, Inc. I was responsible for and involved in a wide range of consulting assignments covering design and implementation of complex information technology systems.
Projects:
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
I was employed as a Solution Architect within IBM’s Center for E-Business Innovation, primarily as part of the content management/e-publishing team.
My 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.
Projects:
In 2001, I 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. My role included pre-sales, technical design and lead development duties.
In 2000, I 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, I contributed to the development of a prototype Java application for institutional investors to track trading events and information.
Implementation of a Domino-based content management system for a major Spanish-language television network. This included development of complex Notes forms and views, Java agents, JavaScript libraries and HTML. In 2000 IBM filed a patent application for my design of a system to allow end-user control of site navigation via the Notes application.
Consultant
PSR Software, Inc. (Atlanta, GA, USA)
March 1998 - November 1999
I 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.
Projects:
JustWin Technologies: JustWin is an Australian software vendor that markets a Lotus Domino-based production support system for the apparel industry. I 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, I 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.
Senior Consultant
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
Projects:
While at Software Spectrum, I 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, I 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
Professional Memberships
- Association for Computing Machinery
- Institute of Electrical and Electronic Engineers
- IEEE Computer Society
Education
Higher School Certificate, 1986 Banyule High School