Work

Fintech engineering across React micro-frontends, design systems, and AWS-backed services.

A focused overview of the type of work I can talk about publicly: single-spa-based micro-frontends, Radix UI + Tailwind design systems, Lambda and Step Functions workflows, GraphQL/OpenAPI contracts, and end-to-end delivery across complex product environments.

Since March 2017

Professional software engineering

Working across finance-focused product environments, with a strong emphasis on practical delivery, collaboration, and maintainable systems.

Micro-frontends

Host-shell architecture composing 10+ React MFEs

Contributed to setting up and maintaining a single-spa-based shell composing 10+ React micro-frontends, with Webpack 5 module loading, Tailwind prefix isolation, and typed module contracts so teams can ship independently.

Design systems

Multi-generation React component library

Worked on a React design system built on Radix UI primitives and Tailwind, including Storybook documentation, themed tokens, and typed component contracts shared across product teams.

Serverless on AWS

Event-driven Lambda + Step Functions backends

Designed and shipped serverless services on AWS Lambda, Step Functions, DynamoDB, S3, and EventBridge using SST and AWS CDK, with Datadog tracing and OpenAPI-typed clients consuming the services.

Type-safe APIs

GraphQL and OpenAPI-driven contracts

Worked with Apollo-based GraphQL services and OpenAPI-first REST APIs, generating TypeScript clients and Zod schemas so frontends, backends, and Lambdas share a single source of truth.

Frontend craft

Performance and rendering across large React codebases

Bundle splitting, render-path optimization, and careful attention to maintainability inside long-lived React codebases shared by multiple teams.

Team impact

Code review, mentoring, and interviewing

Supporting healthy engineering habits through thoughtful code review, mentoring, technical interviewing, and a consistent focus on readable, maintainable solutions.

Capabilities

Where I can help.

Micro-frontend platforms

single-spa shell composition, module loading strategies, isolation across MFEs, and shared design-system integration without breaking team independence.

React component libraries

Design systems on Radix UI primitives and Tailwind, typed component contracts, Storybook documentation, and theming for multi-product surfaces.

Serverless backends

AWS Lambda, Step Functions, DynamoDB, EventBridge — packaged with SST or CDK, with Datadog tracing and OpenAPI/Zod-typed contracts.

GraphQL & API contracts

Apollo-based GraphQL services, OpenAPI-first REST, TypeScript codegen, and Zod schemas — keeping frontend and backend types in lockstep.

Frontend performance

Bundle splitting, render-path optimization, responsive UIs, and keeping large React codebases easy to reason about as product complexity grows.

End-to-end delivery

Comfortable owning a feature from React UI through Node.js / NestJS APIs to Lambda and DynamoDB, including the observability around it.