As a software engineer I've realise how important is having empathy for everyone involved in the process of developing software: business people, product people, designers, other developers and most importantly, the users of the product.
In the last month, I've had the pleasure to interview 8 non-technical business owners who have built, or are building a software product. Also, I had experience with helping 3 startups to create and/or grow their product.
I found many interesting insights, which I can group in the following categories:
- Challenges with developers
- Challenges with outsourcing
- Challenges with product management
- Challenges with scaling up teams
- Other challenges
Challenges with developers
- It can be frustrating to work with developers because they are generally stuck in their own ways and they are not very keen to change
- Selfless developers who have a business mindset, who want to understand the why behind a feature, and are proactive, are the ones business owners love to work with
- On the other hand, it is challenging to work with very technical developers who just want to get the specifications and develop them like without asking questions
- The first hire is essential, it could make a difference between wasting tons of time and money in building low-quality software and having a robust, successful first version of the product
- Communication with developers is a big issue:
- It isn’t easy to communicate exactly what you want, and that is often misunderstood
- It isn’t easy to communicate the vision of what you want to build
- Having a great written and spoken English definitely helps
Challenges with freelancers and agencies
- Freelancers are not always reliable and if they disappear, they take with them the core of the business, the most important asset: the software itself!
- Working with agencies can be frustrating because you need to wait in line for features to be developed and bugs to be solved
- No one is passioned about your idea as you are
- If a customer is pissed off, and a problem needs to be fixed asap, that’s not their priority. Unless you’re willing to pay more!
Challenges with product management
- Biz owners usually act as product managers, giving directions to the in-house/outsourced team. It did work well with people with some knowledge in the field, but it didn’t for others who just improvised: one of them wasted 70k in building useless features, and 20%-30% of the feature built. Another one spent 2 years developing a product, just to find out that no one wanted to use it afterward
- Some biz owners believe that talking with users is a waste of time and that they have everything figured out
Challenges with bigger teams
- When the product is launched and the team grows, a lack of good software development culture slows things down, creates tension between the devs and the business, the devs and the users and the number of bugs / wrong features increases
- It is beneficial to think about culture and processes from the beginning, not when the company has already multiple teams
- Some biz owners love no-code, they would rather start with that and only if necessary hire a developer
- Biz owners never worry about internal software quality, but they just accept that “it works”
- Some biz owners understate to effort it takes to build features right and that always came with more time/money spent than initially planned
Follow me on Twitter: @peppesilletti