×
Justin Gaffney

Justin Gaffney

Senior Software Engineer

Brisbane, Queensland, AU, 4000
English, C#, Rust, TypeScript, SQL

Background


About

About

Strategic senior software engineer who designs and delivers cloud-native, scalable systems that improve reliability and accelerate time-to-market. Experienced in modernising monoliths into event-driven microservices, building developer platforms and shared libraries, and automating infrastructure with Pulumi and C#. Passionate about observability, resilient architectures, and removing friction to boost team productivity.

Work Experience

Work Experience

  • Senior Software EngineerAlii

    Aug, 2025 - Present

    Modernising the main product from a monolithic architecture to a cloud-native, event-driven, microservice architecture

    • Built reusable platform services (notifications, email, auditing, licensing) that eliminate duplication and speed feature delivery across teams.

    • Designed and implemented an OpenID Connect identity service that federates customer identity providers for multi-tenant SSO and secures API access.

    • Standardised observability, deployment, and configuration via shared libraries and patterns to reduce operational overhead and simplify maintenance.

    • Owned company-wide GitHub Actions CI/CD pipelines, automating multi-region deployments, rollout strategies, and stakeholder notifications.

    • Co-designed multi-region Azure infrastructure with automated failover and actionable observability to improve resilience and operational confidence.

    • Implemented a centralised monitoring service to continuously assess service and infrastructure health, aggregate telemetry, and send alert notifications when anomalies are detected.

    • Authored Pulumi IaC libraries (C#/Pulumi) that encapsulate and abstract Azure resources (Entra ID, Managed Identities, App Services, Function Apps, Private Link), eliminating repetitive configuration and accelerating service onboarding.

    • Refactored monolithic features into domain-aligned, independently deployable microservices to increase release velocity and limit blast radius.

  • Senior Software EngineerRPMGlobal

    Oct, 2023 - Jul, 20251 year 9 months

    Working in the platform team to develop cloud-native licensing and security systems, and internal infrastructure tools and services

    • Architected and implemented a scalable Azure platform to support RPMGlobal's SaaS portfolio, leveraging Azure AD B2C, Functions, Service Bus, Redis, and Azure SQL to improve scalability and security.

    • Built an IAM web application (Blazor) and core authentication/authorisation services to centralise user management and streamline secure onboarding.

    • Implemented centralised audit logging, service discovery, and usage ingestion pipelines to increase operational visibility and enable consumption-based licensing.

    • Designed and delivered RPMGlobal's next-generation licensing system, integrating usage metrics to enable flexible, consumption-based billing.

    • Delivered shared libraries and Pulumi IaC modules (C#) to enable product teams to securely integrate with platform services and author maintainable infrastructure.

    • Developed a health monitoring service for legacy license servers that automatically detects issues and notifies support teams, improving reliability for desktop and on-premise products.

  • Software EngineerRPMGlobal

    Dec, 2015 - Oct, 20237 years 10 months

    Developed and maintained the financial budget modelling solution XERAS Enterprise

    • Led migration of XERAS Enterprise from an on-prem, single-tenant desktop and monolithic SOAP-services architecture to a cloud-native, multi-tenant platform with a stateless web client and event-driven microservices to enable SaaS delivery and subscription licensing.

    • Optimised the calculation engine and data access layers, significantly reducing processing times for large models.

    • Delivered key features including Plan vs Actuals, model import/export, multi-environment synchronisation, and an optimised cell-graph traversal algorithm to accelerate recalculation.

    • Executed a large-scale refactor to cut technical debt and improve maintainability and reliability ahead of a major release.

    • Ported core projects to .NET Standard to enable cross-platform UI development and smoother modernization.

    • Led a cross-platform desktop UI redesign to support transition to a Blazor web client and modern user experience.

Skills

Skills

  • .NET

    ASP.NET Core

    Entity Framework

    Blazor

    SignalR

    WPF

    Maui (previously known as Xamarin)

  • Databases

    SQL Server

    PostgreSQL

    MySQL

    MariaDB

    Azure Cosmos DB

    MongoDB

    Cassandra

  • Web

    React

    Blazor

    TypeScript

    Webpack

    Jest

    Material-UI

    Bootstrap

    Tailwind CSS

    WebSockets

    RESTful APIs

    gRPC

    Node.js

    OpenAPI

    WebAssembly

    Next.js

    Gatsby

  • Azure

    Azure App Service

    Azure Container Apps

    Azure Functions

    Azure Blob Storage

    Azure Table Storage

    Azure Service Bus

    Azure Event Hub

    Azure SQL

    Azure Cosmos DB

    Azure SignalR Service

    Azure Key Vault

    Azure Cache for Redis

    Application Insights

    Managed Identities

    Azure AD B2C

  • DevOps

    Azure DevOps

    GitHub Actions

    Containers

    Proxmox

    Kubernetes

    OpenTelemetry

    Monitoring

    Infrastructure as Code

    Pulumi

Education

Education

  • Computer Science, Bachelor of Information Technology, Queensland University of Technology

    Jan, 2013 - Jan, 2016

Interests

Interests

  • Self-hosting

    GitOpsProxmoxDebianContainersKubernetesHome Assistant
References

References

  • Available upon request