Jacob Sandler

Engineering

Senior Software & Automation EngineerApplied AI & Computer Vision

I spent twelve years at Johns Hopkins APL, first building flight electronics, then writing the inspection and automation software the lab used to check them. Since 2024 I've shipped applied-ML and computer-vision tools of my own.

I work mostly in Python and own delivery end to end: requirements, architecture, deployment on Linux and AWS, documentation and support. I use AI coding agents with a spec-first discipline and review every diff.

My resume and code samples are available on request. All of these repositories are private.

Jacob Sandler

Johns Hopkins APL · 2015–2025 · rewritten independently as 2.0, 2024–present

PCB Inspector

Defect review roughly 95% faster across lab programs.

Problem

Reviewing a circuit-board defect meant pulling the automated optical inspection (AOI) image, the electrical-test result and the CAD design from three different systems. Then a person had to work out by eye which part of the board each one referred to.

What I built

A full-stack Python web application that combines all three in one place. CAD outlines are aligned and overlaid on the inspection imagery, so a reviewer sees the flagged part, its test result and its design data together.

I gathered the requirements, designed and built the app, and set up the Ubuntu and AWS hosting (Nginx, systemd, SSL). I also wrote the runbooks, trained users and supported them as adoption spread across programs.

2.0

I rewrote it as a plugin-based product: new inspection types can be added without touching the core. The rewrite improved CAD-to-image alignment and gigapixel rendering. It runs either as a hosted web service or as a packaged desktop install for offline use.

Python · NiceGUI · FastAPI · NumPy · Pillow · PySide6 · ReportLab · pytest · Ubuntu · AWS EC2 · Nginx · systemd

PCB Inspector data flow: AOI images, electrical test results and CAD data are aligned into one review view, which produces reports. AOI imagery Electrical test CAD / ODB++ Align & overlayCAD registered to image One review viewpart · result · design Reports & exports
How data flows through PCB Inspector. No lab hardware, data or screenshots appear on this site.

Independent · 2026 · applied ML

PhotoRaw Generator

Learns from my edit history and writes a first-pass edit for each new shoot.

Problem

After a big shoot, the slowest part was the first editing pass on each photo before any real decisions could start.

What I built

A desktop app that learns from pairs of my RAW files and the Lightroom settings files (XMP) I made for them. For each new RAW it predicts every global Lightroom slider and writes a sidecar file that Lightroom reads. The original pixels are never touched.

  • Validation. Validation holds out whole shoots, not random frames, so the model can't learn a session's lighting from its neighbors.
  • Confidence scores. Each slider gets its own model and its own confidence score. When confidence is low, it falls back to my typical value instead of making an unreliable adjustment.
  • Hue handling. Hue sliders are trained as sine and cosine values so predictions never average across the 0°/360° wrap.
  • Reference mode. Frozen DINOv2 image embeddings find my most similar past edit, and the model predicts the tone adjustments from there.
  • Explainable previews. A preview shows why each slider was set the way it was.

It processes hundreds of images per minute and handles multi-thousand-image shoots in a single run.

Python · PySide6 · scikit-learn · PyTorch · Transformers (DINOv2) · rawpy · ExifTool · NumPy · Pandas

Edited
Unedited
RAW, as shot Final edit

Independent · 2026 · decision dashboard

OceanTracker

15+ public marine and weather feeds turned into one go/no-go answer.

Problem

Whether it's worth taking a small boat out of the Boca Raton Inlet depends on buoys, tide, wind, swell and the coastal forecast. Each lives on a different site, and none of them gives an answer.

What I built

A mobile-first dashboard that pulls 15+ free data sources, including Open-Meteo, NOAA tides, NDBC buoys and the NWS coastal forecast. It reduces them to a few answers:

  • A tested 1–10 chop score.
  • A separate inlet-passage status, from the tide phase crossed with the wind at the jetties.
  • A modeled water-clarity estimate for snorkeling and freediving.
  • The best windows for the week ahead.

Each source is cached on its own schedule, from 10 minutes for buoys to 6 hours for tides. If one source goes down, only its panel degrades and the rest of the page keeps working. The scoring rules are unit-tested.

Python · NiceGUI · httpx · Pydantic · Plotly · pytest · Cloudflare Tunnel

OceanTracker

Independent · 2026 · dashboard

Fairway Forecast

A conditions dashboard for a golf club: a playability score, a member view and a clubhouse TV board.

Built for a country club in South Florida. The 1920×1080 clubhouse board shows a playability score, the best tee-time windows, and head and cross wind for every hole on a satellite map. Members scan the QR code for the phone view.

Fairway Forecast
Imagery: Esri World Imagery.

Python · NiceGUI · Folium · Plotly · Open-Meteo · KML course data · pytest

Independent · 2026 · video automation

Speed-ramp & reel pipeline

From a raw 240 fps clip to a finished vertical edit, plus a Premiere timeline I can adjust.

Cutting short vertical edits by hand is slow, so I built a workflow in which an AI agent drives Python and FFmpeg to produce them:

  • It finds the moment that should be in slow motion: the second pull to the catch, a jerk lockout, a box-jump landing.
  • It ramps smoothly into and out of that moment and adds punch-in zoom, motion blur and impact effects.
  • It renders a 1080×1920, 60 fps MP4, along with a Premiere project for any final changes.

A second mode trims a whole shoot into its best two-second selects and cuts a reel to the song's beat.

Python · FFmpeg · Claude Code · Premiere Pro project generation · Canon Log 3 / HLG color

More tools

RawCUT

PySide6 · 2025–2026

A desktop photo culler for big RAW folders. Thumbnails load in parallel so the interface never freezes, and it has full-screen zoom and pan and an EXIF panel. It moves or exports picks in bulk with their sidecar files, and can send them straight to PhotoRaw Generator. Packaged for Windows and macOS with PyInstaller.

ImageFocus

OpenCV · 2025

Automates a manual crop-and-focus-stack workflow. It scores sharpness region by region (Sobel, Laplacian or Tenengrad) and assembles the best-focused composite. It sizes processing chunks automatically for long sequences and can output a map showing which frame each pixel came from.

OCR benchmarking

DocTR · Tesseract · EasyOCR

OCR pipelines with automated benchmarking that compared three engines on real production documents, so the choice of engine was based on measured results. I've also trained LLMs and LoRA adapters for OCR and image-processing tasks.

CT & imaging tools

Python · OpenCV

Autofocus, focus stacking, multi-focal imaging and CT image reconstruction. In 2018 I used CT scanning and custom reconstruction to reverse-engineer a secure processor.

This website

How this site is built

Python build

The pages are generated from a few YAML files and Jinja templates. There's no front-end framework: plain HTML, one stylesheet and one small script.

Image pipeline

Every photo is converted to sRGB and exported as AVIF, WebP and JPEG at up to four widths, with a tiny blurred placeholder. All metadata, including GPS, is removed; only the camera settings shown in the viewer are kept.

Experience

2024 – present

Independent Software & AI Engineer

Applied-ML and computer-vision applications, built and shipped end to end (above).

2015 – 2025

Lead Automation Developer / Senior Manufacturing Engineer

Johns Hopkins University Applied Physics Laboratory · Laurel, MD, then remote from Florida

  • Architected and deployed PCB Inspector. Defect review got about 95% faster, and the tool was adopted across programs.
  • Built OCR, autofocus, focus-stacking, multi-focal imaging and CT reconstruction tools in Python and OpenCV.
  • Was the main technical contact for engineers, government sponsors and vendors, translating requirements into tools that could be supported long term.
  • Onboarded remote users, wrote READMEs and runbooks, and trained a customer's staff on new equipment at U.S. Air Force bases.
  • Was the lab's subject-matter expert on its Nordson/CyberOptics SQ3000 AOI system, programming hundreds of unique board designs a year, including boards with no CAD data.
  • Audited outside manufacturers for the FlexCSR program and reported findings to government and Navy stakeholders.

2013 – 2015

Electronics Assembly Technician

Johns Hopkins APL

Built and reworked high-reliability space-flight and defense electronics to IPC J-STD-001.

Recognition

  • APL Noble Award, 2018: "A True Black Box." Reverse-engineered a secure processor with CT scanning and custom image reconstruction.
  • Special Achievement Award, 2021: carried out a high-risk rework on eight flight assemblies that had been considered impossible to repair.

Education & training

  • B.S., Computer Information Systems, Stevenson University
  • IPC J-STD-001E · Digital Radiography & CT · MyCronic Advanced Programming · Takaya Flying Probe

Toolkit

Languages & frameworks
Python, FastAPI, NiceGUI, PySide6/PyQt, REST APIs, SQL, SQLite, Git
ML & computer vision
PyTorch, scikit-learn, OpenCV, NumPy, Pandas, Polars, OCR (DocTR, Tesseract, EasyOCR), model evaluation, feature engineering, regression modeling, LLM and LoRA training, image registration, focus stacking
Infrastructure
Linux/Ubuntu, AWS EC2, Nginx, systemd, SSL/TLS, Cloudflare tunnels
AI-assisted development
Claude Code, Codex, spec-driven delivery, context engineering, automated test, debug and documentation loops