It’s no secret, today, almost all companies are looking to differentiate themselves through technology. If there is any doubt, talk to someone in the software outsourcing industry and ask them, how’s business. The demand is off the charts and the availability of resources is scarce.
Some companies are trying to digitally transform internal operations to achieve greater productivity. Others are technology companies searching for the next product and market niche. And other businesses are service-based companies hoping to include technology as part of their product offering as an enabler to increase the value of their service. While software is the common thread, what many people do not realize is, the expertise and experience needed to create the software is much different.
When you look at how these three groups of companies are trying to accomplish their goal to improve their business through the creation of innovative software, you’ll see one of them faces the biggest challenge.
Digital Transformation-Focused Companies
Companies looking to enhance the productivity of their employees have a talented IT department capable of identifying, configuring and rolling out purchased software for their employees to use. These projects are not easy, often facing challenges in change management, but the amount of customer software development is minimal. So the skills and expertise is more ITish, focused on systems and not on product software development.
By necessity software companies are designed to create and implement product grade software, at least the successful ones. They have software product development groups, typically one for each product line, all with the critical skills needed to define, design, build and test product grade software. They also have an implementation and a support group capable of rolling out the software across multiple customers, each having a different use-case and process for how they want it to work.
The last, and most challenging class of companies, are the service-based business looking to differentiate themselves and enhance their value by including product grade software as a bundled part of their service offering. They too have an IT department critical to the operational success of their company, providing employees the IT systems that allow employees to maximize their productivity. And when the companies identify an opportunity to enhance their product service offering by including some custom software, they turn to their IT department to get it done. The challenge is, IT departments are not designed for software product development like software companies. But the software needs to be product grade and support a multitude of customers’ use-cases. Some IT departments will turn to outsourcing companies to acquire the technical software skills, thinking this will yield an innovative, product grade software solution that will meet the market needs. Unfortunately, it’s not that simple. Few outsourcing companies have experience creating product grade software, and even fewer have people who’ve worked in the industry they serve.
Avoiding the Risk Before it's Too Late
So how different is it to develop product grade software and an application used by a company's employees? And what’s the risk of using IT or an outsourcing company even though they may lack product development experience? Often IT folks convince those in the business they can develop what the customer wants. They may even put an application together so that the sales team can demo when pitching their services. And with any luck they may even complete the app and get it in the hands of the customer. And like pulling on the thread on a sweater, this is when it all starts to unravel.
Challenge #1 - Illusion at the Start
It’s time to roll it out and you find how the software works doesn’t match the way the customer intended to use it. No problem, IT will just make some code changes and all will be fine. Perfect now it works how this customer needs.
Then comes time for the next customer who also signed a multi-year contract for your services with the software bundled in. And it’s time to roll out the software for the customers' employees to use. Oh, what, they work differently than the previous customer. No problem, IT can fix it. So they create another/different version for this customer. Perfect, they seem happy.
Challenge #2: Unhappy CFO as Profit Margin Shrinks
This repeats itself for eight more customers and now you have ten derivative versions of the same core software functionality. IT only planned to host one Cloud instance to host the software, except now they have to pay for ten instances.
When a bug is discovered, they need to take the time to fix, test and deploy it across ten production environments.
Challenge #3 - Frustrated Customer with Slow Deployment
Now as more customers come along, the degree of variability in what they want the software to do increases. They may even ask for something completely different. Sales things, sure, we did the first one, IT can do this as well. The customer may even ask to have it integrated with their existing IT systems.
All of this gets bundled into a contract that includes the core services your company is known for providing, and the client signs it. Except, IT is so busy with “standard, semi-customized implementations, the lead time to do this project is much longer than standard implementations of the service. Even if the customer accepts the longer timeline, as time goes on and IT gets more overwhelmed, the start date to develop this custom software gets pushed, and the customer becomes upset and frustrated.
Challenge #4 - Meet the need at all costs - Outsourcing
The natural reaction is, increase IT capacity with more developers. Seems like a logical decision, except for one problem. Like most IT groups, outsourcing companies have little if any experience developing product grade software. Even worse, they most likely have no domain knowledge of your business or the industry your company serves. So while they may be able to write awesome software, they will lack the industry-specific expertise needed to meet the customers expectations and needs.
Challenge #5 - Customer Support Not Prepared for Technical Support Call
As the software deployments grow so do the support calls, which is typical. However, now these calls are not about your services, they’re about the software. How do I reset my password, what happened to my data I just entered, why doesn’t the app install on my new iPhone, and many more, all requiring a much greater level of technical and software product knowledge than your current support desk has.
Challenge #6 - Stagnant Functionality Lags Competition
Today everyone expects software products to functionally evolve with new versions coming out with new features and enhancements. This is not typically the case for homegrown applications IT groups develop for their companies’ employees to use. But for products, it's assumed and expected.
But when the IT team is underwater trying to keep up with new implementations and supporting issues with existing customers, plus you have ten derivatives of the same software product, new features are the last thing anyone is thinking about or has time to do. This further frustrates both the customers and its employees using the software they’re paying for to enhance your services.
Challenge #7 - Instability as User Volume Grows
As your customers' business grows, more of their employees relying on your service are expected to use your software. As this volume grows, more and more issues surface.
Maybe the software performance slows and the users start complaining to their managers, and it’s affecting their job performance.
The growing demand on the software results in frequent service outages that upset the customer.
The customer expects to get useful reports or dashboards from the data gathered through the software. Unfortunately, when the software was developed, the software was not designed to capture the right data, or it was not tested ensuring that the right data was being saved correctly, preventing the customers from getting accurate reports.
These problems add an additional burden on IT, as they get behind on implementations.
All of this creates an overall negative perception of the software and the core services that helped your company grow to this point.
Challenge #8 - Sales Stops Selling
As the sales and account managers see all of this happening, they lose their confidence in the companies ability to deliver and support quality software products in an acceptable time frame. As such, they stop pitching it as part of the offering. It also weakens the pitch as the competitors got it figured out and have software products that are differentiating their service offering.
Challenge #9 - Reality Hits
A year or two goes by. The IT department has grown and so too have their costs, all necessary to support all these versions of software being used by different customers. This has eroded profit margins.
Account managers are trying to settle down large accounts experiencing constant issues with the software and threatening to cancel the multi-year service contract.
Sales has lost confidence in the organization's ability to deliver the software portion of the bundle, and stop pitching it, impacting revenue from new business.
All of this puts the companies’ core services, the bread & butter of its revenue, at risk.
So finally, reality sets in and everyone now sees, software product development is much different, and much harder than developing homegrown applications used internally. To do it takes a different set of skills, knowledge and experience that IT organizations or outsourcing companies don’t typically have.
Greatness is Achieved Through Focus
The success of your business was built on the success of your service offering. The company has built great expertise, skills and a knowledge base all around those services, enabling the company to successfully sell, deliver, scale and support those services bringing great value to your customers. Your IT department is absolutely a critical enabler to that success. But best leave software product development to those companies who have the expertise and simply partner with them. Think of it this way. Consider your company as the sales and marketing arm to your software product development partner, who is the development, operations and support for the software you market and sell for them. It’s a perfect marriage.
There is a small class of software companies that specialize in this partnership model. They bring the experience and expertise needed to define, design, develop, deliver and support software products and do so as a partner to service companies like yours. And more importantly, they know how to do it in such a way to avoid all these pitfalls and challenges mentioned above. But they may not have the marketing and channel, or realize the specific need and opportunity you bring to the table.
Be aware, many outsourcing companies will claim they do this, but simply lack the hands on product development experience and expertise. It’s just another way to sell software developers.
It’s even harder and critical to find a company that has product development experience as well as experience and knowledge of your industry, or that of your customers.
How can a team of people who’ve never worked in a Biotech, Medical Device, Contract Research Organization (CRO) or pharmaceutical and never, defined, created, developed and delivered software product used by people in this industry, be expected to do so, successfully. Some industries, like life science and healthcare are highly regulated. Software used in the industry must comply with safety laws that are unique and specific to the industry as well as the type of software created. Even the processes and methodologies in how the software is developed must comply to specific quality regulations.
To keep the service offering that has made your company successful thus far competitive, it is critical to combine innovative software products as part of your offering. However, to avoid risking your services by bundling indecently created software products is even worse. To avoid such a risk look to a Software Product Development Partner that has the right expertise to deliver the right software grade product that will set your service apart from everyone else.