Experience
2023 — Now
2023 — Now
New York, New York, United States
2019 — Now
2019 — Now
NYC
Rewrote and expanded SpecWizard feature which creates complete 3-part CSI construction product specifications based on user inputs that can be freely generated and downloaded as PDF and other formats. Node/Vue2 (originally written in Perl).
Rewritten features:
• rendering of interactive specification forms specified with custom HTML-like syntax
• maintains compatibility with ~1000 existing SpecWizards
• parses and applies conditional validation rules using a new BNF grammar and evaluator written for the nearley parsing toolkit
New features:
• alert user mid-edit when conditional validation is violated and direct them to the relevant fields for remedy
• persist SpecWizard state as private projects
• earmark certain projects as templates, making them publicly available to all users as starting points
• inline dynamic debugging tools for SpecWizard authors
• automated test suite, made possible by more modular design
• updated look and feel
2005 — Now
2005 — Now
NYC
2022 — 2025
2022 — 2025
Built client-facing Vue 3 UI to manage video content including video, clip and collections viewing and editing. Customized sidebase/nuxt-auth library to support domain-based multi-tenancy. Dark mode support.
Enabled easy code reuse across projects by setting up monorepo, pulling out multiple shared libraries from original web app repo and hosting old and new apps. Controlled semantic versioning with changesets library, including hand-rolled Bitbucket pipelines to enforce, update and publish semantic versions to npm, minimizing developer effort. Configured global and app-specific linting monorepo-wide. Set up CI pipelines to lint and verify Vue production builds.
Upgraded Yarn iOS apps (full and messenger tray UI) to work with current Swift and iOS versions, making it possible to publish new versions to the app store. Updated look and feel of iOS apps with new designs and branding.
Feature work for yarn.co, including authorization bugfixes, meta tag and sharing fixes in Vue 2.
Video processing pipeline improvements, invoking Google cloud functions from existing Rails code.
Evaluated react-admin as possible internal admin UI.
2020 — 2022
2020 — 2022
Wrote Advertising Insights UI in React for at-a-glance understanding of ad campaign demographics, including responsive Highcharts charting taking advantage of both large screen trader and standard desktops.
Helped implement React context-based form solution to replace widespread usage of deprecated ReduxForm library.
Designed and implemented comprehensive react-testing-library test suite enabling Ad Campaign Wizard feature rewrite, prioritizing completeness and maintainability. Improved test suite performance. Identified and proposed fixes for inaccurate test speed measurements. Analyzed test run heap profiles using flame graphs to identify slow portions of tests and optimized generically, halving overall test suite run time. Invoked userEvent and fireEvent libraries as appropriate.
Wrote UI surfacing ad campaign spending blockers, empowering users to find instances where their campaigns were not executing and allowing them to make the necessary adjustments to get back on track.
Contributed to internal component library used across multiple apps and based on design system. Modular software design where UI component function and accessibility are separated from styling, based on React Spectrum.
One of the many contributors to Solimar project, a rewrite of the entire ad trading UI with significant look and feel and productivity updates.
Education
Ohio Wesleyan University
B.A.
1994 — 1998
Universidad de Salamanca
Spanish Language and Literature
1996 — 1998