Skip to main content
BM

Skills

Choose skills to show only the work that used them.

Showing all 14 highlights

Also worked with: Next.js, Tailwind CSS, Material UI, Chart.js, TanStack Query, Redux, RTK Query, Zustand

Also worked with: Django

Also worked with: Claude API, OpenAI API

Also worked with: Chromatic

Also worked with: nginx, Jest

Work

Software Engineer, Charter Communications (Spectrum)

– Present

  • AI tool registry

    Proposed, designed and built a package manager for AI agent tooling with one other engineer; the company's developer-enablement team adopted it as its enterprise-wide registry for Kiro CLI, and later Claude Code, and it now hosts 40+ team registries, with both of its builders kept on as core engineers.

    • Architected a TypeScript SDK and CLI that replaced Markdown files traded over chat and email, letting developers discover, install, validate, version and roll back curated agents, skills, prompts, steering files, knowledge bases and MCP servers from namespaced registries with per-registry allow lists.
    • Engineered a registry layer that merges a bundled registry with a GitLab-backed community registry, fuzzy-searched with Fuse.js, and accepts contributions through merge requests validated against Zod schemas.
    • Made installs reproducible and reversible with a lockfile of versions and integrity hashes, and an SQLite event log that restores any earlier state.
    • Contributed to an Express sidecar server, kept running by a background daemon, whose REST and Server-Sent Events endpoints stream Kiro CLI sessions to a React GUI, an interactive TUI and other clients.
    • TypeScript
    • Node.js
    • Bun
    • Express
    • REST APIs
    • React
    • SQLite
    • Zod
    • Kiro
    • Claude Code
    • MCP
    • CLI tools
  • Codebase intelligence platform

    Designed and built a dependency-analysis platform for a 40+ package enterprise React micro-frontend with one other engineer, on our own initiative; VPs, directors and designers query it for insight, and its data has informed a Bootstrap removal, a cleanup of stale versioned components and role standardization.

    • Engineered a CLI-driven ETL pipeline that clones every repository, parses the source into ASTs, and derives dependency graphs, component and hook usage, render trees and AI-generated component documentation.
    • Consolidated the output into SQLite and Neo4j, explored through SQL, Cypher and GraphQL queries, generated reports, and React data visualizations.
    • Developed an MCP server on raw JSON-RPC 2.0, skipping the MCP SDK to keep dependencies minimal and the protocol fully under the team's control, that exposes the data to AI agents through 23 tools over stdio and streamable HTTP and powers the team site's React chat interface.
    • Grew into a shared data source: developers now ask to have their own data ingested, and teams use it to track deprecated components, remove stale packages, scope features, trace role access and check whether a component exists before building it.
    • TypeScript
    • React
    • Bun
    • Turborepo
    • Zod
    • SQL
    • SQLite
    • Neo4j
    • Cypher
    • GraphQL
    • MCP
    • CLI tools
    • ETL
    • Data visualization
  • Accessibility and tablet readiness

    Led the engineering for two platform-wide efforts on an enterprise call-center platform used by thousands of agents: a WCAG AA remediation of 150+ accessibility issues, delivered ahead of schedule, and the responsive work for an in-store tablet rollout, finished in just over 2 months against a 3.5-month plan.

    • Turned the accessibility team's audit into tracked work: a ticket for each finding across 6 epics, each traced to the package, component and owning team across the platform's 40+ frontend packages and the 15+ teams that own them.
    • Fixed visual, screen-reader and keyboard issues directly in React and HTML, or worked each fix through with the owning team, closing every issue once the accessibility team approved it.
    • Wrote much of the responsive code for the tablet rollout, contributing directly to other teams' codebases; the platform shipped to the tablets agents now use in stores.
    • React
    • JavaScript
    • HTML
    • CSS
    • Accessibility
    • Responsive design
  • AI document orchestration

    Proposed a conversational document builder with a principal product designer, then built it with one other engineer; it guides product consultants through PRDs, project briefs, case studies and competitive analyses, and 15 users across two teams now pilot it for intake work, with early reports of faster first drafts.

    • Implemented the designer's chat flow, refined together through iterations, in which the AI asks focused questions, synthesizes the answers into professional Markdown, and writes it into the document's named sections in real time.
    • Made every document type configurable: users create and customize directives (sections) and choose which ones make up each framework, so new document types need no code changes.
    • Developed across the full stack: a React single-page app, a Bun backend-for-frontend with server-side AI inference, and a private PostgreSQL schema behind bearer-token (JWT) authentication.
    • Moved it from an Electron desktop app to the browser once inference switched to the company's internal AI model, removing the desktop install.
    • TypeScript
    • React
    • Bun
    • Turborepo
    • PostgreSQL
    • SQL
    • JWT
    • Electron
    • LLM integration
  • Design token pipeline

    Built from scratch, with one other engineer, a token pipeline that replaced hand-maintained tokens with one source kept in sync with Figma, publishing npm packages for web, iOS and Android; designers use it to catch drift between design and code, and the team's internal site consumes its packages.

    • Contributed to the Style Dictionary build that compiles one JSON token source, through custom transforms, into CSS custom properties, SCSS variables, JS and TypeScript modules, JSON, and iOS and Android formats.
    • Built the two-way sync with Figma variables through the Figma REST API, diffing local JSON against Figma for review and preserving alias chains.
    • Packaged the system as three layered npm packages (tokens, CSS and components), each usable alone or together, built with Sass, PostCSS and esbuild (ESM and CommonJS), versioned with Changesets and published to the company's npm registry.
    • Independently developed an MCP server that gives AI agents authoritative design-system knowledge: tokens, themes, components and props, icons, deprecations, migration status and changelogs, plus a comparison with another internal component library; it now feeds the codebase intelligence platform's chat, which a senior director uses.
    • TypeScript
    • Node.js
    • Style Dictionary
    • Design tokens
    • Figma REST API
    • CSS
    • Sass
    • PostCSS
    • esbuild
    • Turborepo
    • pnpm
    • MCP
  • Interactive UX-test prototypes

    Built 10+ interactive React prototypes, three of them alone, that replaced static mockups in UX testing, so call-center agents try new designs as they would in production instead of only looking at them.

    • Turned designers' Figma files into working prototypes for UX researchers' sessions, each a TypeScript and React app in a shared Turborepo workspace, with Node and Express backends where a test needed live behavior.
    • Developed a WebSocket chat backend and an event-driven API for a chat-agent test: the moderator answers the participant live, and actions such as opening account details trigger the next scripted message.
    • Kept undocked panels in sync across browser windows with the BroadcastChannel API.
    • Surfaced problems static mockups would have missed: undocking the right rail took away information agents still needed on the main page, and a new alert type went unnoticed behind a bell icon. Both designs were changed.
    • TypeScript
    • React
    • Node.js
    • Express
    • WebSockets
    • Turborepo
    • Prototyping
  • Team tools platform

    Independently built single sign-on, access control and usage analytics for the team's internal tools site, used by 30+ people from VPs and directors to designers and developers, and home to its AI chat, data visualizations, document builder and reporting dashboards.

    • Implemented single sign-on with Entra ID over OIDC (openid-client), putting the whole site behind the company's SSO and removing its own sign-in step and stored passwords: users are recognized automatically, and protected routes show an access-request page instead.
    • Kept roles and permissions in the site's own user database rather than in the identity provider, so the team still registers users and changes permissions itself, with no identity-provider approval process added.
    • Added usage analytics from the SSO identity (user counts and site activity), the team's first data on who uses which tools and when.
    • Wrote, with one other engineer, the GitLab CI/CD pipelines that deploy the site to Amazon EKS on every merge to dev and main, monitoring each release in Rancher.
    • TypeScript
    • React
    • SQL
    • Entra ID
    • OIDC
    • SSO
    • RBAC
    • AWS
    • Kubernetes
    • GitLab CI/CD
    • Rancher
  • Economic-impact map

    Maintained and extended, with one other engineer, a Vue data-visualization app, built by others, that presents the company's statewide footprint and economic impact on an interactive U.S. map used by its executives and at its kiosks, shipping each year's data update along with new statistics and fixes.

    • Worked across Vue, TypeScript, Mapbox GL JS and GSAP animations, with state-by-state statistics (homes passed, customers, employees, investment, taxes paid and more) kept in JSON.
    • Released each update through its existing Docker image and full-screen Electron kiosk build.
    • Added states missing from the map's Mapbox data, and updated the Dockerfile and configuration when its hosting moved into the team's AWS cluster.
    • Vue
    • TypeScript
    • Sass
    • HTML
    • Mapbox GL JS
    • GSAP
    • Electron
    • Docker
    • Data visualization

Senior Figma Plugin Developer, Verizon

– · Contract

  • Design-system adoption plugin

    Built the Figma plugin for an AI tool that suggests design-system components to replace custom parts of a design, on a three-engineer R&D team; about 85% accurate in testing, it was in evaluation with the company's main design-system team for rollout when the contract ended.

    • Developed the plugin itself in TypeScript and React with shadcn/ui, using the Figma Plugin and REST APIs to read designs and present the model's suggestions.
    • Improved the Python service's LLM responses, alongside the two teammates who owned image hashing and the model integration.
    • Built it to replace a manual check that relied on each designer reviewing their own work.
    • Tested it against a benchmark Figma design whose expected suggestions and replacement components were known in advance, reaching about 85% accuracy.
    • TypeScript
    • React
    • shadcn/ui
    • Figma Plugin API
    • Figma REST API
    • Python
    • LLM integration
  • Design-system theming plugin

    Independently built a prototype Figma plugin, well received by the design-system team's lead, that lets product teams theme design-system components within the system's rules, so teams with their own look could still adopt the central design system.

    • Limited adjustments to component variant properties (color, border and typography) to the ranges the design tokens set, enforcing the system's core standards.
    • Exported customizations past those limits as a JSON theme object that overrides the tokens to produce the team's look.
    • Developed it in TypeScript and React with the Figma Plugin API, pulling the design library's tokens through the Figma REST API.
    • TypeScript
    • React
    • Figma Plugin API
    • Figma REST API
    • Design tokens

Software Engineer I, Charter Communications (Spectrum)

– · Contract

Fullstack Software Engineer, Troska Health

– · Part-time

An early-stage startup building a platform to help patients deal with health insurers: tracking deadlines, gathering what each claim needs, and simplifying the back-and-forth.

  • Web and mobile component libraries

    Built matching React and React Native component libraries from the product's Figma designs, making feature development about a third faster by the team's estimate.

    • Developed the React Native library alone with Expo, and the React library with one other developer, covering every component the designs called for: buttons, typography, cards, stacks, accordions, inputs and more.
    • Shared design tokens for color, borders, typography and radius between web and native, while spacing stayed separate per platform.
    • Documented and previewed the components in Storybook.
    • TypeScript
    • React
    • React Native
    • Expo
    • CSS
    • Storybook
    • Design tokens
  • Passwordless sign-in

    Built passwordless magic-link sign-in end to end, from the React frontend to the Node API, giving about 50 early users and testers access with no passwords to store or reset.

    • Developed an Express API that issues a signed JWT, emails it in a sign-in link and verifies it when the link is opened, with accounts stored in PostgreSQL.
    • Built the sign-in screens in React and TypeScript.
    • TypeScript
    • React
    • Node.js
    • Express
    • PostgreSQL
    • SQL
    • JWT
  • Faster builds

    Cut build times from a minute or two to a few seconds by introducing Turborepo and its caching, so packages that hadn't changed were never rebuilt.

    • Replaced separate, repeated build steps with one cached Turborepo pipeline.
    • Tuned the webpack configuration to speed up the builds that still ran.
    • Turborepo
    • Webpack

Projects

ben-morrison.com

– Present · Personal project

This site: a prerendered React site with its own design system and theme creator, and a serverless contact API, planned spec by spec with a record for each decision.

  • Design, build and deployment

    Designed and built this site end to end: a token-driven library of 20+ accessible React components with a theme creator, prerendered to static HTML with Vite and React Router, and a Java 25 contact API on AWS Lambda, all deployed through AWS CDK behind 300+ browser tests.

    • Defined 550+ DTCG design tokens in three layers, compiled with Style Dictionary into CSS custom properties; built each component to WCAG 2.2 AA, with docs generated from the components and tokens, and a theme creator that saves themes site-wide and exports them as DTCG files.
    • Prerendered every route with React Router's framework mode on Vite, so each page arrives as complete HTML, then hydrates for its interactive parts.
    • Wrote Playwright tests in Chromium and WebKit against a local edge emulator running the production CloudFront Functions and CSP, behind strict TypeScript, ESLint and Vitest gates a GitHub Actions pipeline runs before deploying.
    • Built the contact API in Java 25 with SnapStart, verifying Cloudflare Turnstile and emailing through SES with nothing stored, and defined S3, CloudFront, DNS and the hash-based CSP in AWS CDK, deployed through OIDC with no long-lived keys.
    • TypeScript
    • React
    • CSS
    • Design tokens
    • Style Dictionary
    • Accessibility
    • Vitest
    • Vite
    • React Router
    • Playwright
    • ESLint
    • GitHub Actions
    • pnpm
    • Java
    • AWS
    • AWS CDK
    • REST APIs

Education

  • Software Engineering Bootcamp

    Fullstack Academy ·

  • M.S. Pharmaceutical Sciences

    St. John's University ·

    Data science focus; left the PhD program for software

  • B.S. Biological Sciences

    SUNY Binghamton ·

    Cum laude