I have engaged with business owners who are completely aware that the Internet is a means to power their business ideas, and software is the engine that makes it work. To make these ideas reality they get neck-deep in setting up in house IT teams for web development – hiring developers and support staff. However, a large number of growing businesses – including startups – are considering outsourcing web development to a managed development service.
The question I have is, “Is this the best approach?”
I’ll give you an example… I worked for a company in Las Vegas that sold travel packages to consumers. Originally this was only done via brick-and-mortar locations, but the Internet opened an entirely new market to them. With a custom web application, they could empower their business in a few different ways. The brick-and-mortar locations could use this internet-based tool to manage package sales. Consumers could use a front-end portal to purchase directly.
Thinking long term when it comes to web development
This approach might allow them to close some of those brick-and-mortar locations and move their agents to a centralized location, using the power of the Internet and their custom web-based application to run their business. It could be paradigm-shifting in the long run.
Building a web development team
This was bold, and it was daunting. At the time, cloud services like AWS and Azure were not as available as they are today, so in their mind, this meant building a team. They needed a hardware person who could manage computers and servers on-site or someone who could manage the vendor relationship with a service provider. They would need a security expert to make sure the network was strong enough not to be hacked. They required multiple software developers to build the application. Their business was shifting, and in their mind, it was moving away from being a travel business.
After some discussion and discovery, one of the vice-presidents of this company raised his hand and asked a very poignant question.
“Look,” he said, “do we want to be in the travel business? Or the software development business? Unless we’re changing our business model and becoming a software development business, we should outsource this project to someone who knows what they’re doing.”
And he made an excellent point. This company was an expert in selling travel. There are modern use-case examples of this approach. Many companies used to try and build their own server rooms and have racks with servers and in-house IT people to manage it. (Many companies still do.) However, the modern approach tells us to use a hosting company or cloud service for the infrastructure. It’s better managed and generally costs less than trying to do it yourself.
What is your principal business?
Unless you can answer the question, “Which business do you want to be in?” The software development business? Or the (whatever service you are providing) business? With the enthusiastic answer, “the software development business!” then you should seriously consider outsourcing your development to a third-party.
In the long run, you will be retaining the expertise and experience of a team! The benefits you receive are considerable budget savings and combined knowledge and broader skill sets.
Things to keep in mind before hiring a managed development service
Outsourcing (of course) has its considerations. Does the company communicate well? Are they located in, or can they meet at time zone(s) that work within your business hours? Do they have the experience and expertise on staff to get your software project developed, or are they going to be acting as a middle-man for developers they have brought on board?
Given the universal problem of being able to find the resources to complete software development projects quickly, efficiently, and professionally, outsourcing development to an external company may be a viable option. Or perhaps you really do want to become a technology services company.