Skills
This is the closest thing to a résumé on this site, and it follows one rule: every claim below is traceable to a public repository you can read, run, and check. There are no employers, no years of experience, and no certifications here — a pseudonymous page could assert those, but you could not verify them, so they would be noise.
Domains
- Data-center electrical systems. Redundancy topologies (N, N+1, 2N), UPS autonomy arithmetic, transfer sequencing, capacity allocation across paths, and the failure timelines that connect them — modeled in dc-twin, whose model rules, reference topologies, and hand-calculated scenarios are documented in the repository.
- Energy-project economics. Battery dispatch against market prices, incremental valuation over a PV-only baseline, NPV, IRR, MIRR, payback, LCOE and LCOS, annuity debt with DSCR, corporate tax with depreciation and loss carryforward, one-at-a-time sensitivities, and seeded Monte Carlo — implemented across the PV-BESS dispatch model and Energy Investment Lab, with the portfolio-risk toolkit in the quant risk engine.
- Critical-facility operations. Maintenance workflows, MOP/SOP/EOP procedure lifecycles, work permits, commissioning evidence, separation of duties, operational constraints over redundant equipment, and audit trails — encoded and enforced in Critical Facilities Manager.
- Electrical asset data quality. Register contracts, per-row validation, and revision diffing for handover between design, commissioning, and operations — the whole subject of Electrical Asset Validator.
Engineering
- Python, typed and tested. The primary language of every backend here: strict mypy, Ruff, and coverage gates run in CI across the calculation-heavy repositories, with test suites up to a few hundred tests per project.
- Web services. FastAPI with SQLAlchemy and PostgreSQL (Alembic migrations in dc-twin, token authentication with roles in the facilities manager), versioned APIs, RFC 9457 problem-details errors, and OpenAPI documentation.
- Optimization and numerics. Mixed-integer linear programming with SciPy's HiGHS interface (the dispatch MILP), NumPy-based portfolio analytics with closed-form cross-checks (the efficient frontier is validated against the normal equations), and exact integer arithmetic where money or energy must reconcile.
- Frontends, sized to the job. React with TypeScript where the interface warrants it (the validator), dependency-free vanilla JavaScript where it does not (the dc-twin explorer, the PV-BESS results page, and a full offline PWA with a service worker), with Playwright for browser testing.
- Packaging and operations. Docker Compose stacks with health checks and hardened containers (non-root, read-only filesystems), SQLite-to-PostgreSQL configurability, and GitHub Actions CI including CodeQL, dependency audit and review, and cross-platform test matrices.
- SQL and persistence. Relational schemas for immutable run records, append-only audit tables, and workflow state machines whose transitions are enforced in one place.
Practices
The practices are documented with linked evidence on the software page and shown under pressure in the case studies: hand-calculated expectations committed apart from the engines, conventions written down, deterministic byte-identical outputs, tests that prove design claims, published limitations, and fictional data throughout.
The résumé
An anonymous list of skills is worth exactly as much as its evidence, which is why every line above points at code. If you want to evaluate the work, do not take this page's word for anything: the repositories are the résumé.