Print Me!
GitHub
Work
2022 - Present
C++ Senior Software Engineer, Agent Orientated Software (AI)
2020 - 2022
C++ Software Engineer, Agent Orientated Software (AI)
AOS creates creating trustable and explainable AI using multi-agent systems with the cognitive framework, Beliefs, Desires and Intentions (BDI). My role involves improving the AI toolchain such as improving cross-agent collaboration, forward planning, scheduling and deconflicting of agent intentionality, its execution and distributed agent communication to improve resilience in adversarial situations.
- Coordinating multiple toolchain upgrades of our in-house AI frameworks, end-to-end
- Added virtual-memory backed allocators for cache locality, reduced syscalls and memory profiling
- Co-implement protocol to distribute agents onto different routing technologies (DDS & Kafka)
- Responsible for the docs website with APIs & manuals, end-to-end for production releases
- Implement multiple discrete event simulators for verification of agent behaviours
- Documenting best practices, patterns and tutorials for designing effective multi-agent systems
- Implement real-world system specs in a multi-agent architecture to highlight deficiencies in the development methodology leading to new protocols, e.g. researching interfaces for humans to effectively contribute into the agent decision making.
- Agent Orientated Software aosgrp.com
2018 - 2020
C++ Software Engineer, Oxen (Blockchain)
Oxen is a non-for-profit, open-source company developing privacy protocols and tools. I implemented[1] a decentralized layer of servers known as the Service Node[2] network that distributes the blockchain and maintains layer access-control. They coordinate peer-to-peer to evict underperforming and malicious peers whilst generating entropy for securing blocks using checkpointing[3] and a commit-reveal scheme known as Pulse[4].
With over 1k+ servers and growing, the Service Node network provides a sybil-resistant foundation to facilitate a privacy preserving onion routing network, Lokinet, and, a privacy preserving messenger, Session.
- Rapidly learning & upskilling as their first developer in the startup to form a development methodology and hiring practices
- Implement a resilient server layer over new P2P gossip protocols: node de/registration & rewards, service metrics & voting
- Form immutable checkpoints to secure blocks using shared consensus to provide faster finalization of transfers on the network
- Create an on-chain DNS registry to map cryptogaphic keys to human readable aliases (e.g. Lokinet domains, Oxen wallets and Session aliases)
- Transition from Proof of Work to Proof of Stake live in production, deprecates miners for a commit-reveal scheme to generate entropy for minting blocks
- Ownership of release process (build/package/distribute) end to end.
- Patching of 0-days and exploits & recovering from consensus failure on a live production network
- Improved the test framework for including re-write of Monero's framework and adding integration tests using IPC over named pipes
- Oxen Website oxen.io
- [1] Git Commits github.com/oxen-io/oxen-core/pulls?q=is%3Apr+author%3Adoy-lee+is%3Aclosed
- [2] Service Nodes oxen.gitbook.io/oxen-docs/about-the-oxen-blockchain/oxen-service-nodes
- [3] Checkpointing github.com/oxen-io/oxen-improvement-proposals/blob/master/LIPS/LIP-3.md
- [4] Pulse github.com/oxen-io/oxen-improvement-proposals/blob/master/LIPS/LIP-5.md
2017 - 2017
C++ Intern Software Engineer, Wargaming Sydney (Game Dev)
Game development company most popular for developing World of Tanks. I was in the tools team assisting with the development of the editor for the asset pipeline.
- Wargaming Sydney wargaming.com
2014 - 2017
B. Computer Science, University of New South Wales
- UNSW unsw.edu.au