Software Engineer1996 - PRESENTDivergent Labs, Inc.
- Built a tool for tracking lifecycle carbon emissions in food products, to be used by food producers to quantify what-if analyses of different ingredients, packaging, and shipping.
- Built a web front end for a broadcasting workflow management system, providing the same fluid experience as the existing Windows client, supporting 800 customizable entry forms, drag-n-drop graphical scheduling, and custom reports.
- Built a complete inventory and eCommerce system for a jeweler, supporting item tracking for one-off items as well as repeats, photos, and site management features.
- Added features to civnet.co, a civic engagement web system.
- Build an interactive kiosk using motion sensors to allow hands-free interaction in an immersive museum-like environment. Ultimately, the tool was used to demo an experimental advertising technique.
- Conceived of and developed slideword.com, a crossword-like game. This was written in Silverlight back when that was considered stable, then in 2020, rewritten in Blazor (WebAssmebly).
- Designed and developed NotifyPlex.com, a many-to-many messaging utility for use cases such as government transparency. This was developed using "serverless" computing on Amazon Web Services (Lambda, API Gateway, PostgreSQL and other AWS resources).
Software Consultant2019 - 2020Kaplan/Purdue University
- Added and modified CMS templates and solved longstanding quality issues in the codebase for a set of marketing web sites using CrownPeak CMS.
- Built a system for developer productivity that allows for local development and debugging (a missing feature of CrownPeak), and optimized page loads.
Senior Software Engineer2017 - 2019Amrock
Technologies: C#, Angular, SQL Server, Azure
- Developed an Azure-based document storage solution with OCR and type conversion.
- Built an error correction tool to compare details of insurance policies to public data sources, to find mistakes like misspelled names, property identification, and missing deeds.
- Created an analysis tool for fine-tuning the correction algorithms with visual trends and statistics.