When Discovery Collides with Process
Technical teams constantly discover better ways of working — through practice, through new tools, through the kind of...
9 min read
22.05.2026, By Stephan Schwab
Software has a visibility problem. A warehouse looks busy when people are moving boxes. A construction site looks busy when concrete is poured and steel is lifted into place. Software often looks like a few people staring at screens, muttering about edge cases, deleting code, and arguing over a thing nobody outside the team can see. That gap in perception matters because the people who do not understand the work still control deadlines, staffing, budgets, priorities, approval layers, and operating constraints. When invisible work is judged by visible substitutes, organizations end up optimizing for theater and then acting surprised when delivery gets worse.
Leaders are not stupid for struggling here. They are reacting to the wrong signal because software gives off very little of the signal they were taught to trust.
If you manage logistics, manufacturing, retail, construction, or field operations, work leaves traces you can inspect with your eyes. Materials arrive. Shelves fill. Machines move. Floors get poured. Trucks leave. Even delays are visible. Something is either sitting there, half-built, or not moving.
Software does not work like that. The hardest part often happens before anything obvious appears on a screen. A developer might spend two hours understanding why one innocent-looking change would corrupt billing data in three countries. Another might spend a day reducing risk by simplifying a deployment path, and the only visible outcome is that nothing dramatic happens next week. A team might delete five hundred lines of fragile code and improve the product more than they would by adding five thousand new ones.
To people outside the work, this can look like drift, hesitation, or low output. Inside the work, it is often the exact opposite. It is progress through understanding.
That is the problem. Software is full of value that does not announce itself with noise.
A lot of leadership mistakes start with treating software work as if the visible artifact were the work itself.
It isn’t.
The interface is not the system. The feature demo is not the architecture. The ticket status is not the delivery reality. The code commit is not the thinking that made the code safe, maintainable, or even useful.
Much of software development is invisible because it lives inside decisions:
That work does not photograph well. Nobody frames a picture of “we avoided a catastrophic data inconsistency by not shipping the naive version.”
So organizations reach for proxies. Ticket counts. Hours booked. Visible activity in tools. Meeting volume. Branch approvals. Presentation slides. Roadmaps with suspiciously straight lines. All of these are comforting because they can be seen. Few of them tell the truth.
Software complexity keeps getting underestimated for the same reason: people confuse what is easy to observe with what actually determines the outcome.
This is the part nobody likes to admit.
Executives, directors, and department heads are often judged on control. They are expected to explain progress upward, justify spend, reduce uncertainty, and intervene before failure becomes public. If the work they oversee is hard to see, the pressure to create visible proof becomes intense.
That pressure is understandable. It is also dangerous.
The moment a leader feels blind, the temptation is to install something that looks like sight:
None of this solves the underlying problem. It just turns invisible uncertainty into visible bureaucracy.
You can see why it happens. A spreadsheet full of milestones looks more reassuring than a senior developer saying, “we are still learning where the risk actually is.” One sounds controlled. The other sounds messy.
The tragedy is that software is messy whether the spreadsheet exists or not.
The spreadsheet just gives people a polite way to lie to each other for a few more weeks.
This is where perception becomes operating damage.
When the people controlling the environment cannot properly see software work, they start rewarding whatever looks like work from the outside. Teams adapt. Not because they are immoral. Because organizations teach people what survival looks like.
Here are some of the common consequences.
Small changes integrated continuously are harder for leaders outside the work to notice. They do not create dramatic milestones. One big launch, by contrast, looks important. It creates a date, a meeting, a deck, a sense of occasion.
So leaders often prefer the exact delivery pattern that creates more risk.
That is one reason organizations drift away from continuous integration and toward branch queues, approval theater, and late-stage merge pain. Pull requests then become management furniture instead of a useful boundary for actual strangers.
Testing, refactoring, instrumentation, deployment hygiene, architecture cleanup, documentation of the right kind, and removal of dangerous complexity rarely create flashy screenshots. Their benefit is mostly negative space: fewer incidents, fewer regressions, faster recovery, less fragility.
In badly managed environments, this looks like optional housekeeping because the payoff is invisible right up until the day it isn’t.
So teams get pushed toward feature output while the structural integrity of the system quietly rots.
When leaders do not trust the evidence coming from the delivery system, they demand translation layers. More presentations. More status summaries. More check-ins. More explanation for why reality failed to obey the earlier plan.
That time comes from somewhere.
Usually from the same people who were supposed to solve the problem in the first place.
The person who says “yes, we can commit to that exact scope and date” sounds more useful in the room than the person who says “we need to reduce uncertainty first.” The first person offers confidence. The second offers reality.
Reality loses these contests all the time.
Then the project misses, everyone acts shocked, and the same organization that rewarded fantasy blames execution.
A manager can point to a dashboard, a roadmap, or a high ticket count and say the team is moving. Meanwhile deployments are painful, incident recovery is slow, dependencies are unmanaged, and nobody has enough room to improve the system.
The reporting layer stays green while the delivery system becomes brittle.
That pattern is common because visible management often outranks invisible competence.
From the outside, developers can look stubborn, skeptical, or strangely allergic to managerial rituals. There is a reason.
When a bad decision hits a factory, the effects may take time to surface through inventory, defect rates, downtime, or quality data. In software, a bad management constraint can start damaging the work on the same day.
A forced deadline encourages larger shortcuts. A reporting ritual breaks concentration. An approval queue delays integration. A demand for certainty too early locks teams into fake commitments. A plan built for optics can force the wrong sequence of work. A budget rule can prevent necessary cleanup that would have made future delivery faster.
Software teams feel these distortions quickly because the medium is highly responsive. That does not make developers precious. It makes the work sensitive to the conditions around it.
Respect for developers is not about flattery. It is about recognizing that the people closest to the system often see fragility long before management does.
The answer is not to romanticize software and declare it too mysterious for normal management. That would be nonsense.
The answer is to stop using industrial-age visibility habits as a substitute for understanding.
If you lead people who build software, do a few simpler and more useful things instead:
Ask for evidence from the delivery system, not performance theater. Look at deployment frequency, lead time, escaped defects, recovery time, test reliability, and whether work is reaching production safely. Those signals are harder to fake than status adjectives.
Reward risk reduction even when it is visually boring. A safer release path, a simpler design, better observability, cleaner tests, and fewer dependencies may create more business value than another management-friendly demo.
Let teams expose uncertainty without punishment. If people can only bring confidence to the room, they will hide ambiguity until it explodes. You do not get predictability by banning honest doubt.
Prefer short feedback loops over detailed forecasts. The best way to manage invisible work is not to demand clairvoyance. It is to tighten the cycle between decision, implementation, evidence, and correction.
Learn just enough software reality to stop rewarding nonsense. You do not need to become a developer. You do need enough literacy to tell the difference between signal and ceremonial noise.
The invisible nature of software is not the real problem.
The real problem is what organizations do in response to it.
Some leaders accept that the work is partly hidden and invest in better ways of seeing: technical practices, trustworthy metrics, direct contact with the people doing the work, and enough humility to admit what they do not yet understand.
Other leaders panic. They replace insight with surveillance, feedback with reporting, and delivery evidence with presentation artifacts.
Then they create the exact dysfunction they were trying to prevent.
If you are in a leadership role, your job is not to pretend software should look like construction, logistics, or factory output. Your job is to understand that you are governing a different kind of work.
Software is invisible in the same way strategy is invisible, trust is invisible, and good judgment is invisible. You notice it most clearly when it is absent.
By then, of course, it is usually expensive.
Let's talk about your real situation. Want to accelerate delivery, remove technical blockers, or validate whether an idea deserves more investment? I listen to your context and give 1-2 practical recommendations. No pitch, no obligation. Confidential and direct.
Need help? Practical advice, no pitch.
Let's Work TogetherVisibility and hands-on delivery
Navigator gives your leadership clear insight into patterns, blockers, and capacity. Our Developer Advocate writes production code with your team and gets delivery moving.