top of page
Search

Great software starts with great conversations

  • Writer: Marcus Stenswed
    Marcus Stenswed
  • Mar 2
  • 2 min read

Some of the most common phrases in software development projects are:

  • "Writing code that uses the latest technologies."

  • "Writing code that is fast."

  • "Writing code that is reliable and readable."


If you work in or near an IT department, you’ve probably heard these statements many times. As a .NET developer with over 10 years of experience, I certainly have heard it quite some times. And to be clear—I don’t disagree with them. Each of these principles is important in its own right.


However, the problem I often see is that many people focus on one or two of these aspects while overlooking the fundamental question: Why do we need the code in the first place? What are we trying to achieve? Too often, the goal of the software project gets lost in the technical execution.


The Missing Link: Understanding the Purpose

When a team is brought in to develop an application, the goal is clear: create something “solid” and “perfect.” But among the drive for technical excellence, it’s easy to lose sight of the most important factor—the application should make life easier for the users. It should help employees perform their daily tasks more efficiently, streamline processes, and add real value to the organization.


Yet, time after time, development teams start coding without fully understanding the needs of the users. This lack of clarity leads to misaligned expectations, unnecessary rewrites, and features that don’t quite fit the problem they were meant to solve. And when features have to be reworked multiple times, it drains time, money, and morale.


Building Software is Like Building a House

Think of it this way: Imagine you’re asked to build a house, but you’re given no additional details. Naturally, you might start constructing what you assume is the right kind of house. When you're done, the customer looks at it and says, “Oh, you built a villa? I actually wanted an apartment building.” Now, you have to tear it down and start over.


This is exactly what happens in software development when teams start coding without enough discussions. If developers aren’t given clear information, they’ll make assumptions. And assumptions often lead to costly rebuilds.


The Power of Great Conversations

The more information you have before starting a project, the better the outcome will be. The key to avoiding unnecessary rework isn’t just having conversations—it’s having great conversations.


A great conversation means asking the right questions:

  • Who will be using this software?

  • What specific problems should it solve?

  • What are the must-have features, and what are the nice-to-haves?

  • How will success be measured?

  • etc etc


Unfortunately, many IT teams begin projects with too little knowledge about the real purpose of the application. Whether it’s software development, business decisions, or even personal projects, taking the time to ensure clarity before starting can save you a significant amount of time and money.


So, the next time you kick off a project, remember: Great software starts with great conversations. Prioritize understanding the problem before jumping into solutions, and you’ll find that the results are not only technically solid but also truly valuable.



Meeting room board

 
 

More

Never miss an update

bottom of page