My background is deeply rooted in design, and for over two decades that work has been executed in code. I don't hand off comps for someone else to build — I design in the browser, iterate in the browser, and ship from there.
Serving as the bridge between software and design teams is where I contribute most — bringing both disciplines into strategic alignment so that initiatives are technically solid, scalable, and built on real design craft.
I also build design organizations. Most recently I founded UX Engineering as a formal discipline at Boeing — researching the problem for two years, authoring the business case, running the pilot, and establishing the capability from scratch.
I teach in both directions: I help designers build technical discipline and understand the engineering constraints their decisions land in, and I help developers understand how designers think and why design decisions are made the way they are. Working fluently in both environments is what makes the systems hold.
Every project begins with understanding the system — the people, the constraints, the failure modes already in motion. That's not a methodology; it's what 20 years of pattern recognition produces. I've watched the same classes of problems recur across industries, scales, and tooling generations. I know how they end.
That depth shows up practically: I can read a token architecture and tell you where the governance will break down. I can look at a component library and tell you which decisions were made by engineers working without design context. I can sit in a cross-functional meeting and hold both sides of the conversation without translating.
The range of work — systems, implementation, org building, craft — is deliberate. The best systems work is built by people who have executed at the pixel level and felt the cost of decisions made too far from the output.