ViewPropulsion Systems Engineer · GT Propulsive LandersAug 2026 – Present
A kilonewton of hybrid fire...
The main engine for Monarch, a reusable hybrid lander. Nitrous oxide oxidiser burns against a cast paraffin grain at 40 barA chamber pressure, holding an average O/F of 7.1 across a 40 second burn. A short pre-combustion chamber addresses the partial combustion that liquefying fuels are prone to.
ViewParaffin cast into an ABS gyroid lattice at 10 percent infill. The lattice carries structural load the wax cannot, which keeps the grain intact under pressure and acceleration, and the open cell fraction is low enough that regression rate tracks a solid cast grain. It also makes the part straightforward to produce in house.
Paraffin · ABS gyroid · 10% infill
ViewA showerhead face that meters nitrous oxide into the chamber, with a dense orifice pattern and a central swirl element. Spray distribution sets how evenly the grain regresses, and a three centimetre pre-combustion volume sits behind it to anchor a stable flame before the flow reaches the fuel.
CEA · CFD · Hot-fire data
ViewThe main combustion chamber runs roughly 23 centimetres and is sized around a 40 barA operating pressure and a 40 second burn. The mixture is held slightly fuel rich at an average O/F of 7.1, which trades a little specific impulse for cooler wall temperatures and more margin on the ablative surfaces.
Chamber sizing · O/F sweeps · Thermal
ViewThrust is set by the oxidiser flow rate, so the feed system and its instrumentation are part of the engine. Chamber pressure, feed conditions and valve position are logged through every hot fire and compared with the predicted regression and O/F history, which is what a landing burn needs before it can be throttled.
Instrumentation · Data reduction · Hot fire
ViewOwner · Project Lead · Lead DeveloperOct 2024 – Present
The AI assistant of the future...
A desktop assistant that answers by consensus. Each question is put to a panel of more than 20 models, whose replies are weighted, fact-checked and reconciled into one response. It tracks the user's gaze, reads the screen and camera, and integrates with mail, calendar, Canvas, Spotify and CAD.
View
View
View
ViewA calibration and inference pipeline built on MIT’s eye-tracking research that maps a webcam feed to a point on the display. Three guided poses establish the baseline, after which gaze serves as both a pointer and a context signal, allowing the assistant to resolve references to whatever the user is currently viewing.
Python · OpenCV · MIT gaze model
ViewCaptures the active display, isolates the region under the user’s gaze and converts it into structured context for the panel, whether that is a figure, a table, a plot or a page of coursework. The camera feed extends the same capability to the physical workspace, with a live link to Meta glasses planned.
Python · Computer vision · OCR
ViewThe layer that reduces twenty replies to one. Responses are weighted, contradictions are surfaced and resolved, claims are verified with sources and outliers are rejected. Model health, latency and rate-limit state are tracked continuously so that a degraded provider is removed from the vote automatically.
Java · Python · 25+ APIs
ViewA triage layer that assesses each request before committing resources to it. Simple queries are routed to a fast lightweight model while complex ones escalate to the full panel, keeping latency and cost proportional to the difficulty of the question.
Python · MATLAB · Java
ViewOwner · Project Lead · Lead DeveloperNov 2024 – Jul 2026
The whole market in one app...
A desktop workstation for quantitative finance research. Market data, filings, statistics, options analytics and backtests draw on one cached data layer, and an AI analyst reads the technical, fundamental and risk models together and reports where they disagree. A date-aware mode holds every tool to a chosen date.
View
View
ViewAn autonomous search agent that works a topic rather than returning links. It navigates deep into sites, collects filings, reports and news, and cross-references what it finds until the fragments form one research picture. SEC filings can be queried directly, so an answer comes from the document instead of a summary of it.
Python · Web scraping · LLM agents
ViewReads company financials the way an analyst would: statements, earnings, margins, cash flow and returns on capital, broken out by business division where the reporting allows it. Discounted cash flows and bull, base and bear cases are built automatically, and live sentiment marks where price and fundamentals have separated.
Python · DCF modelling · Sentiment analysis
ViewThe statistical core of the platform. It computes return distributions, variance, percentiles and correlation, then extends into higher moments, conditional probability, volatility and the options Greeks. Portfolio risk comes back as beta, Sharpe, drawdown and value at risk. A strategy has to clear a backtest, a walk-forward test and a Monte Carlo run before it is used.
Python · NumPy · Monte Carlo
ViewSweeps thousands of securities across hundreds of technical, fundamental and quantitative criteria at once. Filters run on price and volume, on volatility and momentum, on gaps, and on expected movement weighted by how likely it is. A described market condition returns its matching names in seconds.
Python · SQLite · Parquet
ViewWork that is under way and not yet written up here. Each will be added once there is something to show beyond a description.
Propulsion Systems Engineer · GT Propulsive LandersAug 2026 – Present
Flame stability at high Mach...
The main engine for Monarch, a reusable hybrid lander. Nitrous oxide oxidiser burns against a cast paraffin grain at 40 barA chamber pressure, holding an average O/F of 7.1 across a 40 second burn. A short pre-combustion chamber addresses the partial combustion that liquefying fuels are prone to.
ViewParaffin cast into an ABS gyroid lattice at 10 percent infill. The lattice carries structural load the wax cannot, which keeps the grain intact under pressure and acceleration, and the open cell fraction is low enough that regression rate tracks a solid cast grain. It also makes the part straightforward to produce in house.
Paraffin · ABS gyroid · 10% infill
ViewA showerhead face that meters nitrous oxide into the chamber, with a dense orifice pattern and a central swirl element. Spray distribution sets how evenly the grain regresses, and a three centimetre pre-combustion volume sits behind it to anchor a stable flame before the flow reaches the fuel.
CEA · CFD · Hot-fire data
ViewThe main combustion chamber runs roughly 23 centimetres and is sized around a 40 barA operating pressure and a 40 second burn. The mixture is held slightly fuel rich at an average O/F of 7.1, which trades a little specific impulse for cooler wall temperatures and more margin on the ablative surfaces.
Chamber sizing · O/F sweeps · Thermal
ViewThrust is set by the oxidiser flow rate, so the feed system and its instrumentation are part of the engine. Chamber pressure, feed conditions and valve position are logged through every hot fire and compared with the predicted regression and O/F history, which is what a landing burn needs before it can be throttled.
Instrumentation · Data reduction · Hot fire
View