×
Justin Gaffney

Justin Gaffney

Senior Software Engineer

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

Background


Work Experience

Work Experience

  • Senior Software EngineerRPMGlobal

    Oct, 2023 - Present

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

    • Building RPMGlobal's Azure-based cloud platform, to support the company's growing suite of SaaS solutions

    • IAM web application, built using Blazor

    • Authentication and authorisation services

    • Audit logging services

    • Service discovery functionality

    • Application usage metric ingestion and aggregation services

    • RPMGlobal's next generation licensing system, integrating application usage metrics for consumption-based licensing

    • Common libraries to allow the product teams to easily and securely integrate with Azure services and RPMGlobal's cloud platform

    • Common IaC libraries, based on Pulumi and written in C#, to allow product teams to easily write their own IaC and keep it up to date with their evolving architecture

    • Built a health monitoring service for RPMGlobal's legacy licence servers, used by the company's desktop and on-premise client/server products, that monitors the health and uptime of the servers and automatically notifies the support team of any issues or status changes

    • Utilising many Azure services, including Azure AD B2C, managed identities, Azure Functions, Azure SQL, Azure Blob and Table Storage, Azure Service Bus, Azure Redis, and Azure SignalR Service

  • Software EngineerRPMGlobal

    Dec, 2015 - Oct, 20237 years 10 months

    Developed and maintained the financial budget modeling solution XERAS Enterprise

    • Migrated the product from an on-premise, single-tenant, stateful, desktop client/monolithic SOAP service architecture to a cloud-native, multi-tenant, stateless, web client/RESTful and event-driven microservice architecture, as part of RPMGlobal's roadmap towards subscription-based licensing and modern SaaS architectures for its suite of products

    • Many substantial performance improvements across the entire codebase, especially the calculation engine and the data access layer

    • Implemented many significant features, including; Plan vs Actuals, model import/export, multi-environment model logic/data synchronisation, improved algorithm for traversing a model's cell reference graph for efficient recalculation

    • Significant refactoring of the codebase during the development of a new major version, to reduce technical debt and improve maintainability and reliability

    • Eased the transition from .NET Framework to .NET Core by migrating all relevant C# projects to .NET Standard

    • Heavily contributed to implementing the complete redesign of the desktop application's user interface, with a focus on cross-platform compatibility to support the eventual migration to a Blazor web client

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

    Swagger

    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

    Docker

    Proxmox

    Traefik

    Infrastructure as Code

    Pulumi

Education

Education

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

    Jan, 2013 - Jan, 2016

Interests

Interests

  • Self-hosting

    GitOpsProxmoxDebianDockerKubernetesTraefikWireguardHome Assistant
References

References

  • Available upon request