About

Me

I am a front-end engineer who builds applications and components using JavaScript, HTML, and CSS. I love building cool things, especially using JavaScript. I have worked on small and large code bases and enjoy the unique challenges presented by both — today as a Senior Staff Frontend Engineer at Pendo.io. See my full Resume.

Running

I enjoy running and try to do so as often as possible. I prefer trail running, but mostly train on paved roads for time/convenience reasons. Below you can find data about my most recent runs:

Recent Activities

Activity Type Activity Name Distance Pace Elevation Date
Trail Run Last day of leave loop 10.5 mi 9:34 /mi 1220 ft
Road Run Daycare 7.3 mi 7:26 /mi 413 ft
Road Run End of leave 5 mi 7:37 /mi 285 ft
Road Run Recovery oven 5 mi 7:35 /mi 269 ft
Road Run Post op hop 5 mi 7:45 /mi 279 ft

Recent Stats (last 4 weeks)

  • Run: 5 activities, 32.9 mi

Run Breakdown (last 4 weeks)

  • Road Run: 5.6 mi avg, 7:35 /mi avg, current gear: Nike Pegs
  • Trail Run: 10.5 mi avg, 9:34 /mi avg, current gear: Nike Zegama v2 Blue

Last updated September 27, 2026

This site

Performance

Lighthouse scores, last measured September 27, 2026 — trend vs. previous audit (September 26, 2026)
Page Perf A11y BP SEO LCP CLS TBT
Home 98– 100– 100– 100– 1.2s– 0– 20ms–
About 100– 100– 100– 100– 0.9s– 0– 0ms–
Resume 100– 100– 100– 100– 0.9s– 0– 0ms–
Blog 100– 100– 100– 100– 0.9s– 0– 0ms–
  • Green = good, orange = needs improvement, red = poor, per Lighthouse's own thresholds.
  • The faint line in a cell traces that metric across the last few audits (newest at right); it plots raw values, not tiers, so short wobbles are normal lab noise — the ↑ ↓ – arrow is the real tier signal.
  • ↑ ↓ – show whether a score's tier improved, regressed, or held since the previous audit — activate ↑ or ↓ for the earlier value.
  • Select ⓘ next to a metric for more about it.
Performance (Perf) — Lighthouse's weighted score (0–100) combining lab metrics — weighted most heavily toward LCP, TBT and CLS. ≥ 90 good, 50–89 needs improvement, < 50 poor. Accessibility (A11y) — Weighted pass/fail automated accessibility checks (Lighthouse runs axe-core). Same 0–100 banding. A perfect score still needs manual testing to confirm — automated checks can't catch everything. Best Practices (BP) — Equally-weighted general web-quality and security checks — HTTPS, no console errors, no deprecated APIs, correct image aspect ratios, a Content Security Policy. Same 0–100 banding. SEO — Basic technical-SEO checks — page is crawlable, has a title and meta description, returns a successful status, uses descriptive link text and a valid canonical. Fundamentals only, not a full SEO audit. Same 0–100 banding. Largest Contentful Paint (LCP) — Time until the largest image or text block in the viewport renders. ≤ 2.5 s good, 2.5–4 s needs improvement, > 4 s poor. Cumulative Layout Shift (CLS) — How much visible content shifts position unexpectedly while the page loads (unitless). ≤ 0.1 good, 0.1–0.25 needs improvement, > 0.25 poor. Total Blocking Time (TBT) — Total time the main thread was blocked by long tasks during load, delaying response to input. ≤ 200 ms good, 200–600 ms needs improvement, > 600 ms poor.