michel angelo.
On-device trace
AboutRésumé
ThreadlineFor The SiegeParcel NotifyRuntime EngineeringPerformance & ArchitectureOther ProjectsAbout & Contact

Seven connected systems. Select one to explore.

Software developer · Melbourne

I build tools people can use and understand.

I'm Michel Angelo, a Computing and Software Systems graduate from the University of Melbourne. I work on workflow automation, runtime tools and learning systems, with a particular interest in making complex behaviour visible and uncertain cases easier to handle.

My background is in public-facing operations. I care about what a tool helps someone do, what it shows them, and when it asks them to take over.

Follow the input. Examine the decision. Check the result.

Selected work

Three projects. One consistent approach.

ENGINEERING IN PRACTICE

The decisions behind the interface.

A useful tool should make the next step clearer. These are three choices you can examine in the work.

01

Show how a result was reached.

Threadline’s reusable tracer connects functions, calls and observed values to their source locations. The For The Siege adapter demonstrates this on a running app and adds verified replay of game state.

Follow the execution →
02

Keep uncertainty visible.

In Parcel Notify, “J Patel” could be two different people. The demo leaves that choice with staff and shows why it needs review. A convenient automation still needs a clear place for judgement.

Try the ambiguous case →
03

Keep changes comparable.

For The Siege combines learning agents with a changing world. Both new maps run through the same replay and rewind checks, making the game a demanding place to test behaviour.

Explore the testbed →

I build across the whole path: the data model, the behaviour, the interface, the tests and the handoff.

EVIDENCE & LIMITS

Enough detail to check the claim.

The map-pack release includes automated checks of the real game and the notification workflow. What the demo simulates is stated beside it.

76regression checks passed

Instrumentation, game behaviour, replay, rendering, loading and companion demo logic.

13original notification unit tests passed

Names, apartment normalisation, matching rules and message templates.

2new maps checked in Threadline

Direct boot, verified statement seeks, exact rewind and continuation as a branch.

The counts describe the recorded map-pack checks. Browser timing figures are labelled by build; the parcel walkthrough uses fictional data and simulated delivery.

The map

Seven systems, one runtime.

Prefer a list to a 3D map? Every section is here.

  1. Function & systems tracing

    Threadline

    A function and systems tracer with a reusable JavaScript instrumenter and recorder. For The Siege is the live integration shown here; other JS/TS source can be explored too.

    3,639 functions43,051 probe sites2 new maps
  2. For The Siege · Arcade Pass

    For The Siege

    My turn-based arena game: six champions with Q-learning brains, lanes, turrets and minions, plus an arcade scoring layer. Follow one turn through AI, combat, world and rendering, then rewind it yourself.

    6 learning champions7 loop phases~21 ms traced turn
  3. Companion project · workflow automation

    Parcel Notify

    An Excel-friendly workflow with approved recipients, explicit review of uncertain names, repeat-safe events and a local demonstration you can inspect.

    1 desk action4 demo scenarios2 message channels
  4. Instrumentation · replay · breakpoints

    Runtime Engineering

    How Threadline observes a program without changing what it does: AST probes inserted by the TypeScript compiler API, a repeatable game realm, and replays that halt at one exact statement.

    43,051 probe sites147 state roots0 divergences
  5. Rendering · memory · workers · evidence

    Performance & Architecture

    Every buffer has a budget: instanced rendering, a single line buffer, typed-array counters, worker-side indexing and latest-wins scheduling. Plus the measurements that back it up.

    0.64 ms per checkpoint19.1 ms median seek96 box budget
  6. Problems solved with code

    Other Projects

    Automation I wrote for a residential building, web work in an agency content pipeline, and the engineering inside this portfolio. Each one framed as problem, solution and outcome.

    4 projects2017 first web work1 live demo here
  7. Background · interests · contact

    About & Contact

    Computing and Software Systems at the University of Melbourne, years in public-facing entertainment and operations, and an interest in what happens beneath the interface.

    BSc UniMelb2 languagesMEL based