hero
hero

Zachery Ng

Senior Front-end Engineer

About

I'm a front-end engineer. Since May 2026 I've been at a stealth company in AI finance, after four years at Airfoil where I was the first engineering hire. Most of my day is still production React and Next.js: the shared components, the motion, the performance budget, the parts that tend to go unowned unless someone picks them up.

I came to this from product design, so I can read a Figma file and I have opinions about it. I don't lead with that. The design side is context for the engineering, not a second job title.

What I've been thinking about more recently is the loop between designers, engineers and the agents both now work through. AI has raised the rate at which explorations show up, and the usual process wasn't built with that in mind. A few things I've been trying in response:

  • A second PR lane for prototypes, with lighter CI, so exploring stays cheap
  • A /stories surface where anyone on the team can put a component or an idea in front of others as code
  • Component docs generated from the source, so an agent reads one file instead of opening a hundred

There's a longer write-up of the reasoning in the articles. The rest is still being worked out on a real product, with real reviewers, and some of it will probably change.

The other half of a senior role is the less visible part: scoping with leadership, helping decide what the front-end standard is and writing it down, reviewing in a way that nudges fixes into the shared component instead of the call site, and trying new tooling early so the team has a data point before committing. On that last one I've worked through Cursor's Composer, Claude Code and Codex as they arrived, usually a few of them at once across parallel worktrees.

Experience

Loading...
Loading...
Loading...

Stealth

Senior Front-end EngineerMay 2026 - Present

Front-end at an early-stage company building an AI product for finance. Small team, high velocity, and most of the work runs through agents in parallel worktrees, which informs a lot of the choices below.

  • The stories lane.
    A /stories segment beside the product with three lanes: shared components rendered the way their real call sites use them, widgets and prototypes that can be reviewed outside the app, and an interactions lane for behaviour a props matrix struggles to show. Playwright runs against it in CI, so a PR picks up regression screenshots along the way.
  • Component inventory for agents.
    A generator that derives the shared component catalogue from the TypeScript AST, including variant axes and who imports what. Because it's regenerated from source it stays current, and the first run surfaced 22 components with no importers. It runs as a repo check.
  • Product surface.
    Light mode and the Figma token migration, the chat composer and thinking trace, threads and strategies in the sidebar, the mobile layout, and the styling and interaction rules for research charts.
  • Review.
    A good share of my time goes to reviewing other engineers' front-end. The note I leave most often is some version of: fix it in the shared component, reach for the primitive we already have, animate it the way the rest of the app does.

Airfoil

Senior Product EngineerMar 2022 - May 2026

First engineering hire at Airfoil, a design-led studio, from 2022 to 2026. I helped build the front-end practice from the start: the Next.js starter most projects began from, the shared design system, and a lot of the estimation and review habits the team works with.

  • Client delivery.
    Lead front-end on client work in Next.js, TypeScript and Tailwind, with a bias towards performance and motion.
  • Internal products.
    Product design and lead front-end on the studio's internal tools, then Meld v1 and v2, a visual reference and capture tool: the capture extension, the feed and collections, threaded comments and mentions, AI transforms over assets, optimistic mutations, and a light-dark token system. Plus a run of stealth products and prototypes through 2026 where I owned the front-end end to end.
  • Developer experience.
    Set up the studio's Vite+ monorepo in early 2026 and moved the team onto oxlint and oxfmt, with merge-queue-safe preview e2e in CI. The aim was a faster loop for engineers and agents alike.
  • Scoping.
    Estimations with leadership and clients: tasks, assumptions and timelines, so surprises later were fewer and smaller.
  • Team.
    Onboarding, mentoring, hiring input and performance reviews for the engineers who joined after me. Early adopter of AI coding tools and headless CMSs, so the studio could decide from experience rather than hype.

Spark

Design EngineerApr 2020 - Mar 2022

At Spark, I built the foundation for a cohesive design and development workflow by creating the Spark Design System and a Figma component library. My work focused on:

  • Design & Traffic Optimization:
    I developed mockups and design solutions to guide users toward underutilized features, helping increase engagement with premium offerings and improving platform retention.
  • Consistent Product Experience:
    As the sole designer, I established a unified design language across multiple products within the same application. For example, I set the visual direction for LNG Basis—including its purple theme and icon—and designed a seamless product-switching mechanism.
  • End-to-End Product Design:
    I handled the full design lifecycle, from low to high-fidelity designs, ensuring clear validation and visualization of user inputs (e.g., submission flows with chart-based feedback). I worked closely with the team to refine designs through iterative feedback before handing them off to engineering.
  • User Research & Usability Testing:
    I led product research, created mockups, and conducted remote usability tests to gather user insights and improve design decisions.
  • Front-End Development Contributions:
    Beyond design, I implemented key features in VueJS, TypeScript, and TailwindCSS. I also re-designed and developed sparkcommodities.com with a mobile-first approach in NuxtJS, achieving a perfect Google Lighthouse performance score. Additionally, I contributed to core platform features like layout, dashboards, notifications, and marketing banners.

By bridging design and development, I helped create a more polished, user-friendly platform while improving internal processes for future projects.