One critical principle most software development companies will miss in times of crisis
"As a software development company, it’s easy to get caught up in the day-to-day tasks and forget to keep track of one very simple, yet ultra-important variable: that the work you’re doing is actually important"
bOk, so you're an average software company, and you're afraid of losing what you've got going for yourself. You probably provide some or all of these services: Outsourced software development, Product development, Digital transformation, Custom software development, IT outsourcing, Software engineering, IT strategy, Agile development, Cloud computing, Mobile app or Web development.
First off, you should always strive to become more than just an average company. Find your edge. But that's for a separate post. Right now you just want to feel safe about your contract renewal coming end of this year. Ok, pay attention now. Because most will ignore this.
As a software development company, it’s easy to get caught up in the day-to-day tasks and forget to keep track of one very simple, yet ultra-important variable: that the work you’re doing is actually important.
Unfortunately, this mistake can have dire consequences, as demonstrated by the story of ABC Solutions (real company and story, fake name).
ABC Solutions had been providing IT outsourcing services in Frisco, TX to a number of non-technical enterprises for years, developing cool features and backend software solutions, architecting new IT platforms and participating in a number of pretentious ARB meetings. They were really good at what companies hired them for. They were always meeting their deadlines, delivering projects on time, and the clients seemed happy enough.
However, after a few years into another contract they lost track of time/urgency and failed to notice that their work wasn’t making much of an impact anymore. They were just developing features that client thought they needed, without really understanding the context or the larger strategy behind them. When the crisis of 2020 hit, one of their biggest clients had to cut back on expenses, and they decided to eliminate ABC Solutions altogether (at the time they had 42 engineering on the job). It turned out that the features and software solutions that ABC Solutions had been developing for years were considered unnecessary and could be cut without affecting the client’s bottom line. So not only was ABC Solutions riding the wave, but the company's VP's were too: enjoying botomless budgets and unlimited decision-making trust from their higher-ups. Until the music stopped.
ABC Solutions was shocked. Grounding 42 top-tier engineers is no joke, it's a huge financial liability. How did it even happen? Well, clearly, they had been so focused on delivering work on time and meeting deadlines that they had neglected to ask whether their work was actually important. They had failed to understand the client’s priorities and objectives and had developed solutions without considering the context or the competition. Should I mentioned that ABC Solutions is no more? It's really hard to get out of a 42-people salary pit.
- You are not safe if you have 20 people working on refactoring for 12 months. Business will force IT to cut you off, since you’re not moving the needle.
- You are not safe experimenting with new technologies for the sake of keeping your senior engineers entertained and engaged. Your clients will eventually see right through it and cut you off, since your new tech is most likely not .. what? - that’s right: “not moving the needle”!
- You are not safe trying to push to rewrite everything your client’s IT had been working on for 10 years from scratch. This work is necessary, but it won’t move the needle for Business.
This story serves as a cautionary tale for software development companies. It highlights the importance of understanding the context of your work and the impact it has on your clients. Simply meeting deadlines and delivering projects on time is not enough. You must strive to deliver meaningful solutions that make a significant impact on your clients’ success.
So, how do you go about ensuring that the work you’re doing is important?
- The first step is to communicate with your client. Ask them what their goals are and how the project you’re working on fits into their larger strategy. Understanding their priorities and objectives will give you a better idea of how your work contributes to their success. Be the one who knocks!
2. It’s also important to understand the context of the work you’re doing. Are you working on a project that is critical to the success of the company, or is it more of a nice-to-have feature? Understanding the impact that your work will have on the company’s bottom line will give you a better sense of its importance.
3. Another factor to consider is the competition. Are there other companies in the market that are offering similar solutions? If so, what makes your solution unique, and how will it help the client stand out in a crowded market? Is there an off-the-shelf software solution that could replace your custom service? You can't compete against a really good SaaS. Understanding the competitive landscape will give you a better sense of the importance of your work and how it fits into the bigger picture.
4. Finally, it’s important to consider the long-term impact of your work. Will the solution you’re developing have a lasting impact, or is it more of a short-term fix? Understanding the long-term implications of your work will help you prioritize your efforts and ensure that you’re delivering solutions that will continue to provide value to the client over time.
So, let’s recap what a software development company needs to do to stay safe even in times of crisis:
- Ask the source if your work is important. Your own assessment is almost always going to be wrong.
- Understand the context of your work. Is it mostly features or is it something more mission-critical? How easily replaceable are you?
- Monitor competition for off-the-shelf solutions that could replace your costly custom services.
- Do you understand the long-term effects of your work? Do you clients underhand them the same way?
The story of ABC Solutions demonstrates the importance of asking whether the work you’re doing is important. Failing to understand the context of your work and the impact it has on your clients can have devastating consequences. So, don’t make the same mistake – always ask if your work is important.
By understanding your client’s goals and priorities, the context of your work, the competition, and the long-term impact, you can deliver solutions that truly make a difference and ensure the success of your projects and the future of your software company.
Bonus questions:
- What would happen to the company if you stoped building what you’re building?
- What would happen to you if the executive you have a relationship with left tomorrow?
- What other factors exist that could boost or undermine the importance of your work?