Bio
Work experience
Engineering lead for REDBOOK (aircraft appraisal), AERO (asset management), and JumpseatSMS (safety management), aviation finance SaaS used by 8 of the 10 largest investment banks by AUM. Lead an 8-person product team (6 developers, PM, designer); grew revenue 4x and users 3x over five years. Forward-deployed scope: primary technical advisor to banks, airlines, and lessors — technical discovery with CTOs and engineering leads, solution architecture, pre-sales demos, pilots, onboarding, renewals, and deal support; decide when customer-specific work becomes a product-wide capability. Applied AI delivery: designed and shipped Aerolytics, a Python/FastAPI agent on Amazon Bedrock and PostgreSQL/pgvector combining RAG, text-to-SQL, and valuation tools over 5.76M aircraft records (~60K added weekly); rolled out from ~50 internal users to ~150 paying companies with per-tool authorization, multi-tenant access controls, metering/billing per tool call, execution traces, inference telemetry, and a 25-case Ragas evaluation harness in CI. Built an AI risk-scoring service for JumpseatSMS on Bedrock (Flask, structured JSON outputs, cross-field validation, rules-based fallback) and Bedrock Converse pipelines that turn PDF/Word/Excel lease and specification documents into structured records with versioning and checksum-based regeneration. Platform and operations: own the SDLC end to end (standards, code review, CI/CD, ops); GitHub Actions deployments to ECS via AWS OIDC; administer 100 GB+ PostgreSQL databases; built a PostgREST/plpython3 API serving inflation-adjusted valuations for 45,000+ aircraft; OCR pipeline (Tesseract) that eliminated 2,700+ hours of manual data entry. Led team adoption of Claude Code with pair-programming on live tickets and an MCP server for the team's self-hosted OpenProject.
Built an SVM model in R predicting aircraft dry-lease terms; 92% of leases predicted within a 12-month margin. Maintained Pentaho ETL scripts and PostgreSQL across three environments; wrote staging-to-production/test data synchronization procedures.
Trained a Gaussian mixture model for voice-signature identification and speaker diarization of recorded conversations.
Co-developed the flight stack (C++) for an autonomous single-copter with onboard computer vision, the smallest of its kind at the time. Built a 95%+ accurate sensor-fusion displacement model (Python/scikit-learn) that reduced sensor redundancy; real-time 3D trajectory plotting with OpenGL via vispy; wireless pipelines streaming four 720p video feeds under 10 ms latency. Generated and curated 100K+ image and 10M+ row text datasets for self-driving AI training.
Projects
Multi-step RAG + text-to-SQL agent on Amazon Bedrock answering fleet, valuation, and lease-rate questions over 5.76M aircraft records for ~150 paying companies.
Owned the agent and tool-execution system end to end at mba Aviation. Custom orchestration loop bounded to six tool-calling iterations with dependent tool calls, error feedback for model-driven recovery, and preserved provider-native tool-call sequences. Metadata-aware RAG over schema docs, aviation nomenclature, and SQL examples in PostgreSQL/pgvector (Cohere embeddings, in-memory cosine retrieval); separate RAG-grounded SQL generation via a forced tool schema; application-level SQL validation, read-only DB path, statement timeouts, and row limits. Provider-neutral chat/embedding interfaces behind a Bedrock Converse adapter with adaptive retries and 503 fallback. Execution traces, token/latency/SQL telemetry in PostgreSQL, 25-case Ragas harness in CI, and an internal frontend for golden-set curation and prompt refinement. Deployed to ECS via GitHub Actions with AWS OIDC. Scaled from ~50 internal users to ~150 paying companies with per-tool authorization, multi-tenant access control, and metered billing.
87-tool open-source MCP server (Python/FastMCP) connecting AI coding agents to OpenProject work packages, Git/PR activity, and reporting.
Built and published an MCP server exposing 87 tools, 4 workflow prompts, and 3 resource templates over OpenProject API v3, originally for the team's self-hosted instance so coding agents can read and update work packages from development workflows. Security model for agent actions: read-only mode, admin-gated membership changes, configurable tool-group restrictions, destructive-action confirmation, bearer auth with constant-time comparison, credential redaction. Async httpx HTTP/2 client with pooling, bounded retries with jitter and Retry-After handling, credential-scoped TTL cache that collapses concurrent misses, optimistic concurrency via lockVersion, and form preflight validation with actionable errors. Offline pytest/respx/Hypothesis test suite; CI with Ruff, strict Pyright, Python 3.12–3.14; tag-triggered OIDC Trusted Publishing to PyPI and the MCP Registry.
AI-assisted aviation safety risk-scoring service on Amazon Bedrock integrating incident data and free-text narratives into a production Django SMS product.
Built a Python/Flask service on Amazon Bedrock that scores safety risk from relational incident data and unstructured narratives. Structured JSON output handling, cross-field consistency validation, inference diagnostics and telemetry, a configurable rules-based scoring path, and backward-compatible REST APIs into the existing Django product. Packaged with Docker/Gunicorn and deployed to ECR/ECS through GitHub Actions. Replaced an earlier ANN-based topic-modeling system I had built.