Design Fundamentals Are What Separate Real Engineers From Vibe Coders
Software fundamentals · updated sept 2026
Open ten websites built with an AI coding tool in the last year and you can usually spot the pattern before you finish scrolling the first screen. A small pill-shaped eyebrow label above a bold gradient headline. Rounded feature cards. The same centred hero section every single time.
None of these things are wrong on their own. The problem is how often they show up together, on sites selling completely different products to completely different audiences. It happens because AI tools don’t have a point of view about your brand. They’re trained on thousands of similar pages and default to the statistical average of what that category looks like, and if you’re iterating purely by prompting and reacting to what comes back, nobody ever steps in to choose otherwise. Nobody picked the typeface or set the spacing, and nobody decided how the product should feel: the AI did. That’s the pattern that shows when a site is vibe coded with AI, and it’s becoming easy to spot.
“Vibe coding” has become a loaded term, and not in a good way. It’s shorthand for someone who prompted their way to a working product without understanding what’s underneath it, and both users and clients are getting sharper at spotting it.
Design fundamentals matter more than ever because AI has made it so easy to skip them. Knowing how to use colour, type, and spacing deliberately is what lets a developer produce something that looks considered and different, instead of something that looks like everyone else’s AI output.
Why design is the differentiator now
AI coding tools have made it possible for someone with no formal training to describe an app or a website and get something functional back in minutes. That shift matters, and it’s mostly a good one. But it also means functional is no longer a differentiator. Producing something that works is trivial now. What’s left to differentiate on is judgment, and design is one of the clearest places that judgment shows up, both to users and to anyone evaluating whether you know what you’re doing.
Design fundamentals are one of the clearest ways to separate yourself as a developer from AI slop and vibe coding, so understanding them is key to your success.
Where the human needs to sit in the process
None of this means avoiding AI. Developers utilise AI heavily to improve their workflow and productivity, but it doesn’t replace their thinking. Modern coding is where you flesh out designs, ideas, and structures, then pass them on to AI to do the grunt work. The human piece of the puzzle is irreplaceable, because it makes all the high-level decisions that the AI model follows when building the product.
That means making deliberate design choices, such as choosing a colour palette consistent with your brand, selecting complementary typefaces, using type scales and grid systems, and ensuring consistency across the brand and the product.
These are old, well understood design principles, and they’re not complicated to learn. What they require is intent. Applying them consistently is one of the clearest signals that separates someone who understands and shapes the fundamentals of their product, even if they’re using AI to build them.
A workflow that builds the skill, not just the product
Treat design as its own stage, done by a human, before any AI tool starts writing code. Doing it this way develops the judgment that separates a competent engineer from someone reliant on AI to make every decision for them, not just a better looking result.
Start by gathering references. Screenshots of products you admire, competitors you specifically want to differentiate from, a clear sense of what “modern” or “premium” or “approachable” means for what you’re building. Get specific, because those words mean different things depending on the category.
From there, make the concrete decisions yourself. Lock in a colour palette and how it should be used, not just the hex codes. Choose your typefaces and set a proper type scale. Decide on a spacing system, whether that’s an 8-point grid or something else, and commit to it everywhere. AI is still useful here, generating palette options or suggesting font pairings, but you’re evaluating and choosing, not accepting the first output.
Write a detailed brief covering layout, tone, specific components, and what should feel different from everything else in your category. Hand that to AI to build the design in a tool like Figma, where you can see the whole thing before a single line of code exists and adjust anything that doesn’t match your brief before it becomes a finished product.
Only once the design is approved does it move to development, where AI tools speed up the build itself, working from a clear spec.
Why this is worth doing
Keeping AI as a tool for execution, and yourself as the one making the calls on how something looks, feels, and behaves, is what separates a developer using AI to work faster from someone letting AI think for them.
Learn the fundamentals and let your designs stand out from the slop.
builder, codelabs.com.au
Stay up to date with AI coding
New articles roughly every couple of weeks. No spam, unsubscribe any time.