Nathan Rashleigh


Development

  • Node.js
  • JavaScript / TypeScript
  • Rust
  • C#

Operations

  • Kubernetes
  • Monitoring
  • Cloud Infrastructure
  • CI/CD Pipelines

Leadership

  • Developer Mentorship & Growth
  • Project Management
  • Stakeholder Liaison

About

Melbourne based back-end and infrastructure specialist, team leader and indie game dev with a wealth of experience kicking goals for startups and setting a relaxed and collaborative team atmosphere.

I have over 12 years professional experience creating everything from geospatial data pipelines with Rust for LiDAR scanners mounted on autonymous drones to highly available infrastructure monitoring deployed within the NBN and real-time websocket game servers for 1,000s of concurrent players.

Employment

Forage - Engineering Manager

2022 - 2023

Forage provides virtualised work experiences from global enterprise customers that prepares job seekers for the workplace.

Team Leadership

  • Promoted pair and mob programming to share knowledge and reduce time spent in code review.
  • Mentored, supervised and created growth plans for junior developers.
  • Leader of the Operations Guild, giving demonstrations and running workshops for the development team on infrastructure topics.
  • Orchestrated projects with members of Product and Design teams located in a variety of timezones

    Infrastructure

  • Overhauled the primary MongoDB database with migrations, schemas and disaster mitigation.
  • Improved GitHub Actions build pipelines by implementing comprehensive integration testing and creating representative test environments for developers to experiment in.
  • Identified and sanitised historical data that was collected and stored in violation of GDPR.
  • Remediated SOC2 compliance issues using Drata.

    Developer Tooling

  • Consolidated important and frequently queried user metrics from across data stores into simple and extensible TypeScript API to increase developer productivity.
  • Converted legacy JavaScript services to TypeScript

    Synthesis Technologies - Senior Software Engineer

    2020 - 2021

    Synthesis Technologies is an Australian company specialising in geospatial processing, research, 3d scene visualistion and environmental change detection.

    Project Management

    • First employee and principal engineer, lead the development of a suite of PointCloud visualisation and change detection software through four successful government tenders of increasing scope, growing the team size to 11.
    • Performed demonstrations of the software in the field with real time data to high ranking members of the ADF.
    • Stakeholder liason including deployment planning, requirement gathering, documentation and tenders.

    Software and Infrastructure

    • High throughput data processing pipelines in Rust for geospatial data gathered from LiDAR scanners mounted on autonymous drones.
    • Provisioned Azure Kubernetes Service clusters, PostgreSQL databases and file storage
    • Created Node.js webservers with TypeScript to serve and catalogue content
    • Developed a Three.js based PointCloud visualisation of environmental changes with a Vue.js front end.

    EasyGo Gaming - Senior Software Engineer

    2017 - 2018

    EasyGo Gaming is the creator of Stake.com and Primedice.com, cryptocurrency webapps. My primary responsibilities in this role were:

    • Node.js websocket game servers with 1,000s of concurrent players
    • PostgreSQL database management
    • Operational duties, including converting a CloudFormation setup to a Kubernetes cluster running in AWS
    • Created and maintained Ethereum, Bitcoin, Litecoin payment processors

    Savvi - Senior Software Engineer

    2015 - 2017

    Savvi is a vendor of networking software, users include NBNCo and Telstra Global.

    Root Cause Ticket (RCT)

    Fault detection system that combined error reports and network layouts of the NBNCo copper network and mapped them into a graph database (JanusGraph / Titan).
    This service then analysed the structure of the network to identify the probable cause of network disruptions and notified repairs teams in an attempt to reduce public spending.

    • Groovy JanusGraph bindings and graph traversal system
    • Apache Kafka Pub/Sub event system

    Network Operation Centre (NOC) Dashboard

    Dashboard for use in the NBN's Network Operations Centre, filtering and prioritising which incidents the operations team should focus on.
    In this project incidents were collated from a legacy system and parsed with Rust for display with a modern React.js and GraphQL single page application.

    • C API Access Library
    • Rust Message Parser/Converter
    • Node.js API + GraphQL
    • React + Redux Client

    Gateway (SNPM)

    Node.js gateway powering Savvi's data visualisation platform. This platform generated reports regarding the health and performance of network devices within the NBN backbone.

    • Node.js API Server
    • Splunk Data Store
    • PhantomJS Report Generation

    EDGE

    Telstra's EDGE network visualisation platform.

    • KDB+ Database
    • Node.js API
    • React.js / WebGL Client

    Merge Gaming / Codeworx - Software Engineer

    2011 - 2015

    Brisbane based gaming company focusing on online poker and sportsbooks.

    Fantasy Sports

    A fantasy sports web-app designed for browsers and mobiles with a responsive layout and realtime scoring feed using websockets.

    • AngularJS Client
    • Vagrant VM server bundle
    • Websocket connections
    • Integration and unit tested with Karma
    • Customised Semantic UI framework

    Webclient

    Created a mobile poker web-app with a three man team. I was responsible for all releases and deployments.

    • Node.js Webserver
    • Websocket Connections
    • Coffeescript
    • Browserify
    • Evented XML parser for legacy system feed
    • HTML5 including Audio, appcache and a custom MVC framework

    Projects

    Kaiju - Audio Visualisation System

    Kaiju is a collection of 2D and 3D audio visualizations that uses your system audio or microphone to drive interactive effects in real time.

    • Unity 3D
    • WASAPI audio loopback
    • Available on Steam

    SpaceRace - 3D Zero-G Racing

    SpaceRace is a futuristic 3D Zero-G racing game where players compete to set the best time on visually striking tracks. Inspired by precision movement games such as Surf, SpaceRace features a global leaderboard of lap times around both famous racetracks reimagined and novel circuits.

    • Unity 3D
    • .NET Core and Entity Framework Backend
    • Available on Steam

    MNML.GG - PVP Strategy Game

    MNML (Minimal) is a turn-based strategy game for the web and mobile, featured at PAX Australia in 2019.

    • Rust HTTP / Websocket Server
    • Rust Core Game Library
    • TypeScript React/Redux Client
    • CBOR Messaging over Websockets
    • Stripe Integration
    • PostgreSQL

    Education

    Queensland University of Technology

    Bachelor of Games and Interactive Entertainment

    Graduated 2010

    I was part of the inaugral cohort of this course which supplemented QUT's existing computer science structure with units specialised for the games industry, such as design and audio production.

    Key Units:

    • Object Oriented Programming
    • Programming Abstraction
    • Scientific Programming
    • Agile Software Development
    • Mathematics for Computer Graphics
    • Systems Architecture
    • Networks
    • Problem Solving and Programming
    • Database Systems
    • Fundamentals of Games Design
    • Advanced Games Design