Engineering / Selected work

Projects.

My personal projects cover edge systems, observability, developer tools, distributed protocols and maritime software. They focus on understanding complex systems and making them more reliable.

All repositories on GitHub ↗
01 / Edge computing

Rhizo Edge

View repository ↗ - Rhizo Edge

An offline-first plant monitoring and fail-safe irrigation system.

The problem

Keeping irrigation control local when the network is unavailable.

Architecture & approach

Shared Rust domain code evaluates local rules and controls irrigation. The edge stores events in SQLite. An optional durable outbox syncs event history to PostgreSQL.

Engineering challenges

Safety checks, command reconciliation and device simulation keep control independent of the cloud. ESP32 firmware is implemented, but testing on physical hardware is still pending.

Technology stack

RustESP32MQTTSQLitePostgreSQL

Status: M0-M8 complete · M9 hardware verification pending

02 / Observability

FlightTrace

View repository ↗ - FlightTrace

A tool that explains autonomous mission failures using telemetry.

The problem

Using raw MAVLink telemetry to explain what went wrong and show the evidence.

Architecture & approach

Records telemetry locally and converts mission events to a common format. It checks YAML assertions and creates failure reports with links to the evidence.

Engineering challenges

The vehicle interface is read-only and sends no flight commands. Browser and desktop apps share a local backend. Deterministic demo runs make testing repeatable.

Technology stack

RustMAVLinkSQLiteReactTauri

Status: v0.1 documented · Local CLI, web and desktop workflows

03 / Developer tooling

CrateVista

View repository ↗ - CrateVista

An architecture and documentation explorer for Rust workspaces.

The problem

Showing how parts of a Rust workspace relate to each other without uploading source code.

Architecture & approach

Uses Cargo metadata and rustdoc JSON to build an interactive graph of crates, modules, types and traits. It runs locally or exports a self-contained static site.

Engineering challenges

Shows typed relationships between code elements. It can use a nightly Rust toolchain to extract documentation. Static exports do not include source code, and the tool supports different workspace layouts.

Technology stack

RustCargorustdoc JSONTypeScript

Status: Available from source · crates.io release pending

04 / Distributed protocols

Bart

View repository ↗ - Bart

A decentralized marketplace for exchanging goods and services.

The problem

Applying trade rules and rewards for verified services in a deterministic distributed system.

Architecture & approach

The Rust workspace has separate layers for protocol types, deterministic domain rules, redb state and a CometBFT consensus adapter. The documented design also includes a worker network and a PostgreSQL read model.

Engineering challenges

The domain code does not depend on I/O or consensus infrastructure. Automated checks verify dependency direction and determinism. Balances and rewards use integer arithmetic.

Technology stack

RustCometBFTredbPostgreSQLlibp2p

Status: Early implementation

05 / Streaming & geospatial

SeaTrace

View repository ↗ - SeaTrace

AIS vessel tracking with spatial subscriptions and live map updates.

The problem

Sending vessel events to clients based on location and adding vessel metadata.

Architecture & approach

Rust services receive AIS data and use an H3 spatial index to route events. Updates are sent over WebSocket. A separate worker builds a versioned Redis vessel catalog. A Kotlin Android app shows vessels using MapLibre and OpenSeaMap.

Engineering challenges

Clients subscribe to selected cells and receive events for those areas. Catalog versions can switch atomically or roll back. The aggregation and persistence crates are still placeholders.

Technology stack

RustAxumH3RedisWebSocketKotlin

Status: Public implementation · Aggregation and persistence layers are placeholders

06 / Simulation & systems

ShipSim159

View repository ↗ - ShipSim159

A Unity prototype for large-vessel river navigation.

The problem

Simulating cargo-vessel handling in a narrow river fairway, including delayed controls, currents and estimated depth.

Architecture & approach

Unity Rigidbody physics models point buoyancy, water resistance, gradual propulsion and rudder response. A bridge-style interface shows river radar, predicted paths and navigation marks.

Engineering challenges

The prototype models motion relative to the water, estimated water depth and vessel instruments. It includes runtime checks and Unity tests. It has not been validated for professional training or real-world navigation.

Technology stack

C#Unity 6URPRigidbody physics

Status: Engineering and gameplay prototype