Johannesburg, South Africa
BlogAugust 30, 2026

AI is making the designer who codes the norm

Why the line between product design and engineering is getting thinner
Crecias Shiburi
AI is making the designer who codes the norm
I started my career writing code. I studied software development, and at Wopl I built learning management systems, e-commerce sites, delivery apps and healthcare apps in React, React Native, C#, .NET, Angular, Java and Flutter. In 2017 I started taking on UX and UI design work as a freelancer, and I haven't stopped since. From there I designed interfaces for Department of Education projects at Difusion, payment flows for bursaries at Shinning Entrepreneurship, and the Tip Tap delivery app, where I was both the designer and a developer. I then consulted as a UX designer at DVT, and worked as a senior designer at MetaPOS and Standard Bank. Now I'm at MTN, where I design and build a design system. For a long time people saw this as an odd path. Designers were told they did not need to code. Developers were told design was someone else's job. I always felt that knowing both made me better at each, but it was hard to explain why. AI has made the reason obvious.

The gap between idea and working product is shrinking

A few years ago, going from a Figma design to a working prototype took days of a developer's time. Now I can describe a screen, get a first version of the code from an AI assistant, and have it running against real data in an afternoon. But that only works if I can read the code it writes. AI gets a lot right, and it also makes small mistakes that look fine at first. A missing loading state, a form that does not handle errors, a layout that breaks on a small phone. If you understand code, you catch these quickly. If you do not, you ship them.

Designers who code can test real ideas

Static mockups hide a lot. They do not show what happens when the network is slow, when a name is very long, or when a list is empty. On MetaPOS I learned to design every state of a screen: empty, loading, success, error. Building those states in real code is the best way to check them.
Empty member list
Empty
User added confirmation
Success
User removed confirmation
Removed
With AI help, a designer who codes can now test ideas with real behaviour instead of pictures of behaviour. That leads to better questions in user testing and fewer surprises in development.

Engineers who think about design build better AI features

The opposite is true too. AI features are full of design problems. How do you show that an answer might be wrong? How do you let someone correct the AI? What does the screen look like while the model is still thinking? Engineers who understand users answer these questions better. The best AI features I have seen came from teams where design and engineering were not handed off from one to the other but worked on the same problem at the same time.

What I would tell someone early in their career

  • Learn enough of the other side to have a real conversation. If you are a designer, learn how components, state and APIs work. If you are a developer, learn how to run a usability test and read the results.
  • Use AI to go faster, not to skip understanding. Let it write the first draft, then read every line.
  • Design systems are a great place to start. They sit right between design and code, and they reward people who understand both.
  • Spend time with real users. No AI tool can sit in a spaza shop or walk a farmer's field for you. That part is still the job.
I used to feel I had to choose between being a designer and being an engineer. Today I think the most useful people in product teams are the ones who refuse to choose.
Share this post: