Software Engineer
I build tools that reduce cognitive overhead and improve developer workflows. My focus is practical engineering — systems that solve real friction in everyday development environments.
A Chrome extension that adds contextual visual identifiers to Azure DevOps tabs.
Problem:
Azure DevOps tabs are visually identical, making heavy multitasking costly and error-prone.
Solution:
Dynamic tab icons that distinguish Boards, Repos, Pipelines, Pull Requests, Work Items, and more —
reducing context-switch friction for engineers working across multiple ADO areas.
Technical Notes:
• DOM inspection and mutation handling for dynamic page changes
• Optimized event listeners to minimize performance impact
• Clean separation between tab detection logic and icon rendering
A Chrome extension that enables fast cross-navigation between player pages on Baseball Reference, FanGraphs, and Baseball Savant.
Problem:
Player analysis often requires jumping between multiple statistical platforms,
each using different internal identifiers and URL structures. Manual searching
slows down workflow and introduces friction.
Solution:
A lightweight extension popup that detects the current player page and provides
direct navigation links to the corresponding player profile on other major
baseball analytics sites — in both directions.
Data & Architecture:
• Cross-site player identity mapping
• URL generation driven by normalized metadata
• Primary registry data sourced from Chadwick Bureau
• Supplementary FanGraphs ID resolution via SmartFantasyBaseball
• Python-based data wrangling pipelines to transform raw datasets into extension-ready lookup tables
• Continuous updates to accommodate new rookies and roster changes
Technical Emphasis:
• Metadata normalization across heterogeneous sources
• Deterministic ID resolution for accurate cross-platform linking
• Minimal runtime overhead (precomputed mapping tables)