Good interface design is not decoration applied at the end. It is the part of the product where your thinking becomes visible — and where muddled thinking becomes obvious.
Clarity beats cleverness
A user arriving at your screen is asking three questions: where am I, what can I do here, and what happens if I do it. An interface that answers those quickly feels "intuitive". That is the whole trick.
Most confusing screens fail one of these:
- Too many equal-weight options. If everything is emphasised, nothing is.
- Unclear consequences. "Submit" tells me nothing. "Charge $12.99" tells me everything.
- Hidden state. If something is loading, saving or failed, say so where the user is looking.
Design the empty and the broken states
Every screen has three states, and teams routinely design one:
| State | Usually designed? | What users actually see first |
|---|---|---|
| Full of data | Yes | Rarely, on day one |
| Empty | Sometimes | Almost always |
| Error | Almost never | At the worst moment |
The empty state is your best onboarding opportunity — it is the one screen where you have the user's full attention and nothing to distract them.
Consistency is a feature
Every inconsistency is a small tax: a slightly different button, a date in another format, a modal that closes on outside-click where the last one did not. None of them is a bug. Together they make a product feel unreliable.
Users do not notice consistency. They only notice its absence — as a vague feeling that something is off.
Write the words first
Interface copy is design. Try writing the screen as plain sentences before drawing anything:
You have 12 credits.
A consultation costs 3.
Buy more credits →
If that reads clearly, the layout is mostly a matter of arrangement. If it does not, no amount of spacing will save it.
Make the right thing the easy thing
The default option should be the one most people want. The destructive option should take one more step than the safe one. The path you want users on should be the path of least resistance.
That is not manipulation — it is respect for the fact that people are busy and skimming.
Where engineers come in
Design quality is decided in implementation as much as in Figma: whether the loading state was built, whether the error message is useful, whether it still works at 400px wide. A beautiful mockup shipped without its edge cases is not a beautiful product.

