Software engineer · AI products & systems

Zacharia Hammad

I build
AI software.

At Visionary Solutions, I work on computer vision, knowledge graphs, and voice agents. Outside work, I’m building an AI-agent runtime in Rust.

Based in the DC area

My first coding project

Dragon curve

Dragon curve at 1 iterationsA folding fractal made from 2 connected line segments.
1 / 12

2 line segments

The dragon curve was the first project I ever coded. Watch it take shape, or move the slider to explore each fold.

AI products

Computer vision, voice agents, and knowledge graphs.

Runtime systems

Execution, state, and what happens when things fail.

Computer architecture

From instruction sets to timing and area tradeoffs.

01 / Selected work

What I’m working on.

I studied computer engineering at Drexel. My work spans ML pipelines and product interfaces; my personal projects explore runtimes and processor design.

Independent project / In development

RepoToire

A runtime for AI coding agents.

An agent can propose a change. Deciding what may execute, what counts as success, and when to stop needs a clearer contract.

  • Rust
  • Quint
  • Code intelligence
  • Runtime prototype
Inside the runtime

I’m building a Rust runtime around an instruction set for coding agents. Codebase context informs a Goal Program; a compiler turns that program into an executable. Approval is tied to that exact image before the runtime admits it.

One compiled repair sequence

LOAD → TEST → IMPL → VERIFY → BNZ → HALT

These are instructions. Each one runs through the five stages shown here. TEST runs a repository check; VERIFY dispatches an agent to verify the work. BNZ can return to IMPL within a fixed retry limit.

Conformance tests replay Quint traces against the Rust runtime and compare the execution stage, instruction, and Machine state.

Ask me about RepoToire
FROM GOAL TO EXECUTIONRUST

Your goal + current codebase context

  1. Goal ProgramTargets, constraints, success criteria
  2. Compiler → executableValidated instructions and repository checks
  3. Human approvalBound to this executable’s exact image hash
AGENT PROCESSING UNITFOLLOW AN INSTRUCTION ↓
01 / 05 · FETCH

Read the next instruction.

The runtime reads the program counter and latches an instruction from the approved executable. Later stages check that they are still using the same image.

Input: approved executable + program counter

Each instruction passes through these five stages. This diagram explains the design; it is not a live execution trace.

At Visionary Solutions

Software Engineer Aug 2025 — Present

Selected work, with project names and details generalized. Diagrams use illustrative examples.

02

COMPUTER VISION

Computer Vision

From training the model to following an object through video.

Owned a computer-vision product from data sourcing and labeling through YOLO training, ONNX export, inference integration, and the user-facing application.

Engineering notes

Developed model training and evaluation workflows, with experiment tracking and release tooling.

Connected video inference and object tracking to an application that lets users inspect results.

Improved streaming reliability, including backpressure, failure handling, and clean shutdown.

FROM VIDEO TO DETECTIONSSIMPLIFIED EXAMPLE

Make the extracted image and its source available to the application.

Results / application
Follow a frame through the pipeline.

Developing the model

  1. Label
  2. Train
  3. Evaluate
  4. Export ONNX

Reviewed datasets. YOLO training. Experiments tracked in MLflow.

03

AI MEMORY & RETRIEVAL

AI Memory

Conversation memory you can trace back to its source.

Built graph-based infrastructure that connects information across conversations and makes useful context available to AI applications.

Engineering notes

Developed Python pipelines that turn conversation text into structured information while retaining its source.

Built evaluation tooling for retrieval quality, identity matching, and access boundaries.

FROM CONVERSATION TO CONTEXTSIMPLIFIED EXAMPLE

Retrieve relevant context for a later request, subject to access and consent checks.

Context retrieval / source references
Follow a statement into memory.
04

AI PRODUCT ENGINEERING

Voice Agents

From a spoken request to a useful action.

Built voice-agent integrations that connect conversations to application tools, with caller context and access checks around each action.

Engineering notes

Integrated Vapi and OpenAI Realtime with TypeScript tools for search, scheduling, and other application actions.

Worked on reliable event delivery and keeping context consistent across services.

FROM A QUESTION TO AN ANSWERSIMPLIFIED EXAMPLE

The tool returns a result so the assistant can answer using information from the application.

Tool result / conversation continues
Follow a request through a voice agent.

Senior design & hackathons

Team wins.

A senior design championship and two hackathon track wins: projects my teammates and I built together.

1st place / Drexel Senior Design Championship

POTHOLES

Real-time road hazard detection with computer vision and geotagged reports.

Team announcement by Drexel University School of Engineering.

Drexel’s official announcement

02 / Architecture & experiments

Computer architecture.

I love designing pipelines and thinking through how they behave. At Drexel, I worked on instruction execution, pipelining, and ASIC timing and area.

Drexel / ASIC design I & II

Five circuits, different libraries.

My project partner and I used Tcl scripts and Synopsys tools to synthesize and implement five benchmark circuits. We ran them across technology libraries, including SkyWater and ASAP7, and compared timing and area.

Getting the ASAP7 flow to complete took weeks. Much of the work was finding the right commands, adapting the scripts, and reading the reports to understand what changed between runs.

  • Tcl
  • Design Compiler
  • IC Compiler
  • Fusion Compiler
Ask me about the project
RTL → CHIP LAYOUTILLUSTRATED FLOW

One connected layout

Cells and interconnect come together in the chip layout. Timing analysis and physical verification check the result.

Three metal layers shown. Actual stacks vary.
Benchmark circuits
5 completed
Libraries included
SkyWater / ASAP7
Compared across runs
Timing & area

Architecture projects

Simulators, interpreters, and architecture experiments.

Agent Processing Unit

I’m building RepoToire’s Agent Processing Unit in Rust. It applies an instruction cycle to agent work: fetch an approved instruction, dispatch it, check the result, and retire its effects into machine state.

  • Rust
  • Runtime systems
  • Instruction sets
RepoToire / APU microarchitectureILLUSTRATED
Publish the checked outcome

Only RETIRE publishes architectural effects to registers, flags, status, and history. It can advance the PC, retry within a bound, or stop in a trap.

Illustrated software runtime · one instruction shown · CHECK can wait for workers

RISC-V architecture

Computer-architecture coursework in C simulation, exploring instruction execution, pipelining, and branch prediction.

  • C
  • RISC-V
  • Coursework
Five-stage RISC-V datapathILLUSTRATED
Put the loaded value in x5

The writeback selector chooses memory data for a load and updates the destination register. Register x0 stays zero.

Coursework C model · conceptual data flow, not a cycle-accurate execution trace

LC-3 virtual machine

A 16-bit educational architecture implemented in C, with memory-mapped I/O and trap routines. A way to learn what an instruction actually asks the machine to do.

  • C
  • Virtual machines
  • ISA
LC-3 instruction & I/O loopILLUSTRATED
Make the machine visible

The C handler calls putchar and flushes stdout. Other paths support keyboard input and memory-mapped I/O.

16-bit C virtual machine · example program state

CHIP-8 emulator

An interpreter for the classic virtual machine, built with Python and pygame. Instruction decoding, display state, and a hex-keypad interface.

  • Python
  • Emulation
  • pygame
CHIP-8 opcode → pixelsILLUSTRATED
XOR each row into the display

Each set sprite bit flips a display pixel. This empty-screen example draws a zero and leaves the collision flag VF clear.

Python + pygame · an example sprite on a 64 × 32 display

More on GitHub

03 / About me

Outside work.

On the mat

Brazilian jiu-jitsu.

On the road

Travel & Polaroids.