Experience

ResApp Health

Software Engineer • October 2020 — Current

I was scouted for ResApp in late 2020. I was hired as the sole Android developer adopting a set of partially implemented Android apps, getting those apps to market, taking ownership of those codebases, and implementing new features and improvements as required. The primary challenges in this role have been the regulatory requirements of developing a medical device, the impact this has on testing/process, and the fast paced project schedules which often stem from hard regulatory deadlines. The apps themselves also presented a number of interesting technical challenges such as:

  • The need for a highly controlled audio recording pipeline that could satisfy the sensitive nature of the diagnosis ML algorithms;
  • The need for there to be multiple variations of a single app with differing functionality for different distribution methods (e.g. a Telehealth version, an in-clinic use version, and others); and
  • The need to run continuous/regular background data processing on audio as it is recorded over a long period of time (8 hours)

ResApp is a small team, startup environment where we each pick up additional responsibilities as needed. Alongside the app development I have also overhauled a large part of the CI pipeline and infrastructure for the Android apps, taking a non-ideal project structure (base library and consuming apps spread amongst multiple repositories) and merging it into a multi-module Android project. I also wrote a number of gradle plugins to automate our regulatory requirements for the bundling of repeatable sources/build artefacts and other process pain points.

Unify Solutions

Android Software Engineer • March 2020 — October 2020

I was hired by Unify into a new engineering department that the company was putting together, with an initial focus on work they were doing with Mastercard. The work, and general company focus, is in the identity and access management space around emerging standards in decentralized identity systems. While there I have also assisted other lines of the business by developing rapid proof of concept prototypes for new client pitches and JVM backend software for the Mastercard project.

Expedia Group

Software Development Engineer II • Aug, 2015 — Feb 2020

At Expedia, I spent most of my time within a medium sized team focused on creating and maintaining a mobile app for hotel partners. During this tenure I evolved from developer with a hobbyist knowledge of Android into a tech leader within the team and the Android client, where I:

  • Oversaw migration of the client from web-based to native;
  • Established best practices and patterns within the code using the latest available Android tech;
  • Established a pipeline for simple releases and tracking; and
  • Represented the team at global speaking/engagement opportunities within the company and with its partners.

Initially I joined with a focus on backend work, supporting the app clients with an API that connected us to the wider Expedia domain. Over the course of my time at Expedia, I developed skills in the Android space to the point that it became my primary role. During this time, the app has undergone a major mission shift from displaying our partner website in webviews, to focusing on native features suited to the mobile form factor that complemented the existing website. This transition is something that I played a large part in as key developer of the new native features.

During this transition, and whilst continuously delivering value to our shipped app, I championed the adoption of Kotlin for our Android client and backend services, becoming an evangelist for the language and assisting in it’s adoption by other teams and projects within Expedia. I also helped drive the adoption of Google’s Android Architecture Components to ensure that we were building our app onto a solid foundation of best practices and to ease development by mitigating many of the common pitfalls of Android development.

Lightmare Studios

Software Engineer • Jun, 2011 — Aug, 2015

During my degree I was hired by Lightmare as a work experience student. The advantage of working in the field during my studies allowed me to grow and improve my skills a great deal in a short time. I worked for Lightmare as a full stack developer taking on a number of projects such as websites, backend APIs, chat servers, and game updater/launchers. Most of these were built upon the AWS tech stack. As a developer in a small team, I was given the freedom to work autonomously and make many important decisions regarding the direction and features of the company’s technologies whilst ensuring positive outcomes for the business and our playerbase.

Many of the deliverables I was required to implement at Lightmare had tight deadlines and as I was a student at the time it was often my first time working on those specific problems. This helped me to hone my ability to research and learn from large quantities of information in very short time frames.

From 2014, I guided the company through the adoption of a number of technologies and development methodologies. It was during this period that I took on the role of Scrum Master, where I trained and assisted the development team through the adoption of Scrum and Extreme Programming practices. I drove a number of initiatives around improving code quality, and implementing better DevOps processes.

WorleyParsons

IT Internship • 2010 — 2011

I interned at WorleyParsons during my time as a univesity student, working as part of a small team within their IT support office, providing support services to the building and in partner offices.

Skills

Adaptable development skills

I am highly proficient in JVM languages, mainly Kotlin and Java with some Scala. I frequently use scripting languages such as Python, and I have foundational experience with the C derivatives: C, C++, and C#

I often spend time working on personal pet projects, sometimes engaging in the open source space. While I have my preferences, I am always open to new languages, domains, and ideas. I am capable of picking up new languages, tools, and domain concepts quickly. For this reason, I am an effective “scout”, able to rapidly move ahead, prototype, learn, refine, and report.

Android native app development

I have strong knowledge and experience with the Android platform and the Android Architecture Components. Along with being passionate about good mobile user experiences and material design.

API / Backend development

I have a background in backend services, developing various REST APIs, dealing with segments of AWS infrastructure and other PaaS vendors. I have some basic knowledge around GraphQL and a keen interest in it’s potential as a future API standard

Pilot

In my spare time, I have a keen interest in aviation and enjoy flying. I currently hold a recreational pilots license and am pursuing private. This interest in aviation lead me to apply out of uni to the highly competitive Royal Australian Air Force pilot process. I came close to achieving this goal but was ultimately disqualified due to latent long-sightedness.

Education

University of Queensland

Bachelor of Information Technology, Software Design • 2010 — 2013

I graduated with a Bachelors Degree in Information Technology from the University of Queensland, majoring in Software Design. Throughout this degree, I worked in a number of different capacities in both small and large teams undertaking semester and year long projects. These projects varied from desktop applications to mobile and web applications. Through my studies, I learned the importance of properly managing my time, and applying myself to the highest standard both in individual and team projects. Aside from the courses required in my degree, I undertook elective courses in the areas of Information Security, Coding and Cryptography, Artificial Intelligence, as well as Advanced Algorithms and Data Structures.

Recognition

Horizon Award

Expedia Group • 2018

The Horizon Award is an internal award and equity grant that is used to recognize high performance and long term potential.

Associations

Australian Air Force Cadets

Cadet • 2005 — 2009

During my time in the cadets, I learned invaluable leadership skills and had my time management, judgement, public speaking, confidence and self-discipline put to test. The skills that I learnt during this time have helped me not only in cadets, but also in my work and in my personal life, where I have become much more confident and outspoken.

Australian Air Force Cadets

IT Officer • 2012 — 2013

In 2012 I returned as a volunteer to 218 Squadron AAFC. Where I took on the role of Squadron Webmaster and Information Technology Officer. I was tasked with creating a new Squadron website as well as providing advice and expertise in the areas of online policy and technology updates such as a transition to cloud based document storage and more efficient logging of squadron technological assets.