Back to notes

4 min read - 2026-06-27

What Happens Before Writing Code for a Client

Most software projects fail not in development, but in the two weeks before anyone writes a line.

When I first sat with the client, I did not show them anything. I asked them to walk me through a normal day. Not the ideal version of how operations were supposed to work. The actual version, with the workarounds and the manual checks and the tasks that depended on one specific person being available.

That conversation told me more than any requirements document would have. Where the real bottlenecks were. Which parts of the process were held together by habit rather than any designed logic. What would break first if the team grew by twenty percent.

I went home and built a rough version of what their process could look like as a system. That approach is detailed in Why Prototypes Close Deals Better Than Pitches. Brought it back. Showed it to them. The question stopped being whether they needed anything at all and became how soon it could be ready.

That shift does not happen because of technical skill. It happens because the thing they are looking at reflects how their operation actually runs, not a generic version of a business that vaguely resembles theirs.

Software that does not fit the actual process gets worked around. People find ways to do it the old way alongside the new system, and within a few months the system handles the easy parts while the hard parts still happen in WhatsApp. This is the pattern described in When WhatsApp and Excel Stop Being Enough.

The listening phase is where software either earns its place in a business or doesn't. It is also the part most vendors skip because it is slow and does not look like progress from the outside.

Most of what I do on any project has nothing to do with code. It is understanding what a business actually needs clearly enough that what gets built matches that, not just approximately, but exactly. That's why the process foundation matters more than the technology stack—a lesson reinforced in Why Businesses Need Process Before AI.

The Four Conversations Before I Open a Code Editor

The first pass is about the problem, not the solution. I want to understand what is breaking, who feels the pain, and which part of the workflow creates the most drag.

  • Problem mapping.
  • Constraint identification.
  • Scope definition.
  • Success criteria.

The pre-code timeline

Discovery

Understand the business

low

Problem mapping

Define the real friction

low

Prototype

Make the workflow visible

medium

Alignment

Validate the shape

low

Build

Code what was tested

low

Discovery comes before code, because it defines what the code should actually do.

Why Requirements Are Not the Answer

Static requirements documents look complete, but they freeze the wrong assumptions in place. Discovery has to stay dynamic because the real business process usually becomes visible only after the first conversation starts to surface edge cases.

The information gap

Comparison

What client says they want

  • Visible request
  • Feature words
  • Surface symptoms

What the business actually needs

  • Workflow reality
  • Constraint set
  • Operational root cause

What a client says they want and what the business actually needs rarely match on the first pass.

What a Discovery Session Looks Like

A discovery session is a guided walkthrough of the actual workflow. We map where data starts, where it gets delayed, who approves what, and what happens when the normal path breaks. That is where the real system design begins.

Discovery conversation map

Flow

Stated problem

We need software
Can it do X?
How much?

Real problem

Where does work slow down?
What breaks daily?
What should change first?

The questions you ask determine whether the real problem surfaces.

The Prototype First Approach

The first deliverable is usually not code. It is a visible model of the workflow so both sides can test the logic before the build gets expensive. That keeps scope honest and gives the client something concrete to react to.

What Clients Do Not Know They Need to Tell You

The most useful information rarely appears in a form. It comes out when someone is asked to explain how a normal day actually works, what they do when a record is missing, and which part of the process only one person currently understands.

Working on something similar?

If your team is still coordinating work manually, tell me what is happening and I will map the first system worth building.

Contact me