Linux Ops person. Does Go, Kubernetes, LANs, and runs slowly. I’ve been in devopsy roles for more than 7 years with a significant focus on close coordination with development teams. In my roles I have had to frequently and continually communicate across teams to reach success. What started as identifying and solving requirements for other teams at RMIT lead to working directly with Development teams to build new systems at Hitwise and Aconex and being one of the developers at LIFX. Over the last 3 years my software engineering skills have had rapid growth as I moved into a role that was effectively split between development and operations responsibilities.
Jan 2019 - Current, Solutions Engineer - ME Bank, Melbourne, Victoria
Operations, cloud, service mesh and kubernetes specialist
- Maintain CI platform
- Work with service teams to build required features and support
- Upgrade and improve internal helm charts
- Implement redis operators
- Deliver training on Istio, gRPC and Kubernetes
- Mentor other staff
- Develop design proposals
- Improve log processing tooling
September 2016 - Jan 2019, Cloud Engineer - LIFX, Melbourne, Victoria
Operations specialist with a focus on scaling, resilience and maintaining Go Codebase.
- On Call from the second week
- Maintained production and staging environments
- Rebuilt build infrastructure
- Lead migration from Mesos & Marathon to Google Kubernetes Engine
- Determined internal deployment processes for services on Kubernetes
- Maintained highly concurrent systems in Go
- Debugged production services to identify, triage and resolve faults
- Refactored internal services for higher resilience and performance
- Rebuilt internal services to reduce system requirements
- Reduced median internal messaging latency from 100ms to ~1ms
- Designed, Developed and implemented custom deployment tooling for mesos to improve deployment process
- Maintained high volume Nats messaging layer
- Created software design specifications
- Implemented solutions per design specifications
- Investigated and assisted in the implementation of gRPC internal APIs
- Initial investigation into gRPC client side balancing
- Interacted with external partners
July 2015 Volunteer - Packer and Vagrant Workshop with Norton Truter, Infracoders Melbourne
- Helped test plan in advance of workshop
- Helped attendees as they came across issues and discussed use of packer
October 2013 - Ongoing, Sysadmin - Servers And Networks Team of Awesome (SANTA), Pax Australia, Melbourne, Victoria
- Help attendees with questions of a wide variety
- Bump in and out (unload, setup and cable 150+ PCs 10 to 20 Servers, kilometres of network cables)
- Setup of windows game boxes and Linux & windows game servers
- Operation and implementation of infrastructure services
- Panic driven automation of game patching and deployment
- Work with comps team to run servers as they request
- Stuffed many many show bags!
- Assist other areas as asked
December 2012 - September 2016, Linux Systems Engineer - Aconex, Melbourne, Victoria
Operations team member focusing on platform migrations and remediation
- Was part of on call rotation for global support and escalation requests
- Responded to critical incidents in major production environments
- Build out infrastructure to deploy new production and QA instances on AWS
- Identify significant cost savings in deployments
- Trained new members on infrastructure and ops procedures
- Worked with development teams to build and deploy new products
- Modified and improved internal Puppet code to manage postgresql
- Maintained and improved Puppet infrastructure globally
- Investigated and implemented Packer for automated Linux image building
- Investigated and implemented Packer for automated Windows image building
- Standardised and Automated Linux build process
- Built and deployed new el7 builds
- Senior member of the team responsible for 6 data centre moves. Assisted new teams in 2 other moves
- Internal Puppet SME
- Migrated imap testing into performant Go utility
- Improved Postfix configuration in short notice and under significant pressure
- Managed, moved, monitored and assisted in the implementation of several SANs
- Internal presentation to spread best practices in Puppet
- Internal presentation discussing new QA environments
- Developed initial isolated QA environments for use by Engineering teams
- Puppet wrangling
- Develop and maintain internal scripts to automate and improve services
- Perform production releases
- Discuss and plan with other teams improvments to QA and development environments
July 2011 - December 2012, Systems Administrator - Experian Hitwise, Melbourne, Victoria
Role focused on platform improvements, escalation support and project work
- Involved in maintenance and growth of Puppet modules
- Developed in house Puppet modules to manage Jenkins build nodes
- Managed provisioning of Xen and KVM virtual machines with Cobbler and Koan
- Supported Centos, Fedora, Debian and Ubuntu hosts
- Implemented Puppet managed Linux based selenium testing infrastructure
- developed custom scripts to automated the provisioning and deployment of production systems with the AWS api
- Assisted in the development of requirements and deployment of a production Hadoop environment
- Responded to escalation requests our operation support team
July 2008 - July 2011, IT Support Specialist - RMIT University, Melbourne, Victoria
- Managed imaging back-end for multi-boot labs.
- Developed and implemented pilot method to multi cast clone a number of Apple products.
- Primary Support Staff for Linux and UNIX machines.
- Assisted in implementing initial multi boot lab at our RMIT Vietnam Campus.
- Assisted in implementing and support of consumer grade storage systems for research users.
- Leading college involvement implementation of improved Authentication and directory mounting solutions for Linux and UNIX clients.
- Leading pilot roll out of Puppet configuration management system for UNIX, Linux and OS X machines.
- Trained new staff on IT support.
- Determine requirements in a complex environment and develop non-trivial solutions.
- Assisted in the implementation and planning of a new video on demand training tool.
- Primary support for inter-uni Video conferencing Using the Access Grid system.
- Documented software installations.
- Trained and developed training systems for other IT staff on the access grid system.
- Ensured that software compliance including licensing was correct and current.
- Respond to support calls from users in various areas of the University.
- Organise the scheduled replacement of hardware with users.
- Identify and resolve faults with hardware and software installations in varying environments.
- Coordinate with external support agents to resolve hardware and software issues.
- Support Linux, OS X and Windows systems throughout the university.
- Supply consumables to users in supported lab environments.
- Arrange suitable replacements for historical equipment for specialist hardware.
- Assist in the creation of images for various areas throughout RMIT.
- Assist in the development of software and hardware requirements.
2012, High Performer of the year, Experian Hitwise
2012, Highflyer Award, Experian Hitwise GPD
2018, Kubernetes at LIFX v2, Infracoders Melbourne Meetup
A talk about the Mesos to Kubernetes Migration at LIFX
2018, Kubernetes at LIFX, REA DevOps Guild
A talk about the Mesos to Kubernetes Migration at LIFX
2018, Exploring gRPC balancing, Golang-Melbourne Meetup
A talk exploring the various types and patterns of load balancing and service discovery with gRPC
2016, Traefik, Consul, Docker and you, InfraCoders Melbourne Meetup
A Look at service discovery options with Docker and Traefik
- 2012 Graduate Certificate of Information Technology Swinburne University
- Running: Slowly
- Cycling: Not as slowly
- Public Speaking: Infrequently
Please contact me