SELECTED WORK

Case studies, not project cards.

Context, constraints, decisions and tradeoffs behind the platforms I've built and led - kept qualitative where implementation details are confidential.

Enterprise digital commerce

Platforms operating at national scale

Multi-tenantCheckoutPaymentsLoyaltyCloud-native
Context
A multi-tenant digital commerce platform serving more than 50 U.S. restaurant brands and thousands of physical locations.
Constraint
Each brand needs independent branding and configuration while sharing a common platform core, without duplicating logic per tenant.
Decision
Invest in a shared, configuration-driven multi-tenant architecture rather than per-brand forks.
Architecture
Cloud-native and serverless services handling checkout, payments, authentication and loyalty, layered behind tenant-aware configuration and feature flags, integrated with customer-engagement ecosystems such as Olo, Thanx, Spendgo, Sparkfly, Braze and Klaviyo.
Tradeoffs
Shared architecture raises coordination cost for brand-specific requests, but avoids fragmentation and duplicated maintenance across dozens of codebases.
Result
A platform where operational support work scales sub-linearly with the number of brands onboarded.
What I learned
Multi-tenancy is a discipline enforced at every layer, not a single infrastructure decision.

Accessibility as an engineering practice

Accessibility before QA

WCAGDesign SystemsKeyboardHand TalkEqualWeb
Context
Institutional Bradesco / Bradesco Seguros portals needed to meet accessibility expectations for a broad public audience.
Constraint
Legacy markup patterns and limited automated tooling made systemic accessibility difficult to enforce.
Decision
Treat accessibility as a component-level and workflow-level concern rather than a late-stage QA pass.
Architecture
Semantic HTML foundations, a shared Design System, keyboard navigation patterns, visible focus states, and integrations such as Hand Talk for sign-language support.
Tradeoffs
Retrofitting accessibility into existing components took longer than building it in from the start.
Result
Measurable improvements to keyboard operability, readability and contrast across institutional experiences.
What I learned
Shifting accessibility earlier in the workflow is cheaper than shifting it left after the fact - the premise behind my writing on the topic.

Observability & production reliability

Reliability is a designed property

BugSnagLogglyIncident responseRelease governance
Context
High-volume digital commerce operations require fast detection and resolution of production issues across many tenants.
Constraint
Incidents in a multi-tenant system can silently affect a subset of brands without obvious global signals.
Decision
Build habits and tooling around observability and structured incident investigation rather than reactive firefighting.
Architecture
Error tracking and logging pipelines (BugSnag, Loggly) feeding investigation workflows, paired with release governance and production-readiness review.
Tradeoffs
Observability infrastructure has an upfront cost that competes with feature velocity, but reduces the blast radius and duration of incidents over time.
Result
Faster root-cause identification and more confident, better-governed production deployments.
What I learned
Reliability is a designed property of a system, not a byproduct of careful coding.

Banking & fintech workflows

Correctness over reusability

PIXBoletosBatch paymentsVue / Nuxt
Context
K8 Fintech's banking and financial products needed onboarding, account management and payment journeys built to strict correctness expectations.
Constraint
Financial workflows such as PIX, boletos, transfers and batch payments carry low tolerance for ambiguity or silent failure.
Decision
Prioritize explicit state handling and clear user feedback over generic, reusable-at-all-costs components.
Architecture
Vue/Nuxt front-end journeys integrated with banking and receivables-financing back-office systems.
Tradeoffs
Domain-specific components were less reusable across the product, but produced clearer, safer financial flows.
Result
Reliable onboarding, transfer and batch-payment experiences across banking and HR-adjacent systems.
What I learned
In regulated domains, correctness and clarity outrank component reuse.

Platform modernization

Modernizing a system that can't stop

E-commerceCRMLogisticsPerformance
Context
Atual Card do Brasil's e-commerce, CRM and logistics systems had accumulated years of incremental change.
Constraint
The business needed continuous operation while the platform evolved - a full rewrite was not viable.
Decision
Modernize incrementally, prioritizing performance and the areas with the highest operational impact.
Architecture
Performance optimization, campaign tooling and mobility improvements layered onto existing e-commerce, CRM and logistics systems.
Tradeoffs
Incremental modernization is slower to show dramatic before/after results, but keeps the business running without disruption.
Result
Measurable performance gains and a platform that continued evolving without a costly full rewrite.
What I learned
Sustainable modernization respects the constraint of a system that cannot stop running.

Technical leadership & governance

Repeatable decision-making, not heroics

Tech LeadMentoringRelease governance
Context
As Tech Lead, platform growth required more structured technical decision-making than ad hoc review.
Constraint
Balancing delivery speed with code quality, mentoring needs and production risk across a growing team.
Decision
Establish clear technical steering, code review standards and production-readiness gates instead of case-by-case judgment calls.
Architecture
Architectural reviews, mentoring practices, and a release-governance process that includes production PR and deployment approval authority.
Tradeoffs
Formal governance adds friction to individual autonomy, but reduces variance in production risk across a growing platform.
Result
More predictable releases and a clearer path for other engineers to grow into ownership.
What I learned
Technical leadership is mostly about building repeatable decision-making, not making every decision personally.

Selected brands supported

A representative sample of national and regional restaurant brands operating on the commerce platforms I work on at Plein Air Agency. Listed for transparency about the scale of the work - inclusion here does not imply endorsement by these companies.

goop KitchenLee's Famous RecipeBojanglesLong John Silver'sJason's DeliDig InnCiCisNewk'sTex'sDiBella'sTaco PalenqueCosta VidaCotton PatchNeighborlyTatteO'Charley'sFlame BroilerTijuana FlatsBaja FreshCold Stone CreameryPlanet SmoothieSweet FrogTacoTimeWetzel's PretzelsRusty TacoNekterCaptain D'sFlying PieGolden ChickHello HiloChicken Salad ChickDave's Hot ChickenMellow MushroomTaco Time NWPoke HouseNayaFlanigan'sDirty DoughGenghis GrillBiBiBopBud Long'sCharleysLenny'sWing It On99 RestaurantsAltitudebartacoBoard & BrewFresh BrothersHomeward KitchenJim 'N Nick'sKrispy Krunchy ChickenMain EventRazzoo'sSbarroPuraLimaRapid Fired PizzaSonny's BBQWhataburger

Career knowledge interface

Ask my career
The interface connects themes across experience, writing and engineering practice.