×
Justin Gaffney

Justin Gaffney

Senior Software Engineer

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

Background


Work Experience

Work Experience

  • Senior Software EngineerRPMGlobal

    Oct, 2023 - Present

    Developing cloud-native licensing and security systems, and internal infrastructure tools and services

    • Building the next generation of RPMGlobal's licensing and security systems, to support the company's growing suite of SaaS solutions

    • Built a health monitoring service for RPMGlobal's legacy licence servers, used by the company's on-premise 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, 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

    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

    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

    ProxmoxDebianDockerTraefikWireguardHome Assistant
References

References

  • Available upon request