The ‘as-a-service’ bandwagon
It seems like every day, there is a new ‘as-a-Service’ for anything you fancy. What started off as a simple computer storage or computer on the cloud as Infrastructure-as-a-Service (IaaS) has exploded into many; Firewall-as-a-service (FWaaS), Games-as-a-service (GaaS) and Payments Platform-as-a-service (PPaaS) to name a few. Just about Anything-as-a-Service (XaaS).
While the terminology may be relatively new, the concept has been around all along. Take transportation as an example. We buy our own cars that can take you places (pun intended). A taxicab is then the ‘as-a-service’ form of the same thing. A sort of ‘Personal Transportation as a Service’ if you will (no, I don’t want to introduce another ‘aaS’ acronym). Instead of paying upfront for the vehicle, and the operating cost of the fuel and maintenance, you can pay by the distance travelled. Food is a fitting example too. You can buy the ingredients, utensils, kitchen equipment, gather the recipe, prepare, and cook. Or you can always go to a restaurant and just pick and pay for what you fancy.
Since its beginning in the early 90s, the internet industry has opened new ways of doing things. Cloud technologies have immensely expanded the scope of such solutions. What was earlier consumed as a product was now being offered as a service. What was earlier consumed as a bulk service, is now being divvied up across multiple artifacts and consumed as a ‘fractional’ service through a ‘productized service.’ This has turned out to be beneficial for everyone.
Computer hardware is a relevant example. Earlier the option was to buy your own hardware stored in your own datacenters (or closets). Now with the cloud infrastructure-as-a-service, companies have a cheaper and more efficient way to use hardware over the internet. It is cheaper because of multiple reasons.
- First, is scaling without barriers – by having centralized hardware used by multiple companies, one could share compute capacity where one user’s underutilized capacity is another user’s usable capacity; Think, parked cars being put to use.
- Second, is having a bigger influence on the supply chain – Amazon, Microsoft, and Googles of the world have far bigger influence on the price of servers they buy, than what other companies can manage. Even the overhead effort of maintaining and securing the servers get shared across the hardware, reducing the costs for individual users.
Introducing tech-as-a-Service (taaS).
What if you can simply buy custom software instead of building it yourself?
tech-as-a-Service (taaS) is a new paradigm of developing software where you consume software development, without bothering with how it was developed. Modern software is complex, and it takes a village to do it well. Let’s say you have an idea of a simple software product that you want to develop. To build that, you will need the following people with skills and things.
If you think you can find one person or a tool to do it all, then you have found the next new superhero (and I hear Marvel is looking for their next one).
Thinking of what you consume as a service and what you buy as a product is an exercise of deciding which responsibilities you want to take upon yourself and having the equipment and expertise in-house. You could do all of it by yourself, and that’s the traditional ‘On-Prem’ approach. This works well if you are a technology company yourself or have the deep pockets of multi-billion-dollar firms.
But if you are not in that clique, you have other, far better options. Let’s say you have the people, but not the hardware – you could consume the hardware and network from a cloud service provider – that would be Infrastructure-as-a-Service. Your analysts, designers, developers, and infrastructure engineers could do the rest of it. Let’s say you don’t want to take the hassle of maintaining the infrastructure and just build the software on the required platform – that’s when you go down the Platform-as-a-Service route. What if the software you need is already there, ready to be used? Great, just consume the Software-as-a-Service. But what happens when you don’t have the software that you need, or that it exists but needs extensive work installing, configuring, and customizing it? Or you need to buy many SaaS products and pull them together which complicates things even more.
Traditionally, such situations were addressed by hiring software developers, either directly within your firm, or by contracting it through a service provider. In such a case, what you are really buying is ‘software development hours as-a-service.’ They can work for you, but the responsibility of a successful software still lies with you. You are responsible for bridging the gap between business and software professionals.
What if you are not one of those technology companies who understands how to do it all? What if you don’t want to take the hassle of understanding the inner workings of the myriad of technologies and associated processes, but simply get your business problem solved?
What if you just want to buy the software version of the vision you had, not developer hours? This is where tech-as-a-Service (taaS) starts to make a lot of sense.
taaS is the model where all the elements of the stack are done for you – you only need to provide the vision, the ‘recipe’ so to speak. Think of a situation where you don’t have to cook, buy ingredients or even have a kitchen for that matter. You just have the idea of what you want (the visionary), and then someone works with you to create the recipe (the pragmatist) and once you are comfortable with that, they create the food and it shows up in your doorstep (whoa, did I just come up with a new business idea?) A chef that can custom cook your dream meal instead of having to pick from a menu?
taaS would work the same way. You have an idea in your mind, and you ask for that, even a high-level vision statement. We work with you to first validate the idea and if it cannot be achieved through any of the other ‘as-a-service’ offerings. We then work with you to detail out your vision and play it back to you for your expert critique. And once ready, we start building the software. You don’t need to care who is building it, where it is being built and whether they are really dog-people or cat-people. All you really care is about realizing your vision which is the ‘outcome.’ You pay once a working software shows up and you see your vision in action.
Of course, once you start using the software, there is this niggling thing of maintaining it, which everyone feigns ignorance of. Someone needs to make sure it is running fine it is being upgraded regularly and any bugs found are addressed. If you have at least few people needed to maintain the software, you just pay for the software like a product, and it becomes yours to own and maintain. If you don’t want that hassle either, you can consume it equivalent to a SaaS software, where you pay as you use.
Benefits and drawbacks
An obvious benefit of this is time and then comes the cost. You do not have to hire a tech team yourself if that is not your company’s core competence. If you have tried hiring and managing a tech team, you will realize how it can suck the life out of you.
Just like the way cloud service providers provide the benefit of scale, you get the same for software development. What you really pay for is the time spent in the development of the software and not any of the downtime. You get the benefit of the expertise as well since we are incentivized to be the best at our craft.
The benefits above are like what you will get from outsourcing to leading software service providers as well. But the biggest benefit you get is from ‘how you buy.’ With taaS, you don’t worry about who the people are, how many there are, or where they are located. You buy software. You don’t care about how it is getting built. Think about it, how many of us really know how restaurants work or how the chefs do their magic or whether one person made it or seven. We are interested in the final output. With taaS, you are paying for the outcome so you can focus on more important things.
Continuing with the restaurant analogy, while you are not interested in how the restaurant really works, you may still want to know its health safety rating. That’s understandable. It is important in taaS too that you make sure your legal terms include all you need the software to do – like adhere to GDPR, PCI, etc.
taaS does involve letting go. And let’s face it, all of us are not particularly good at it. So, if you are worried, start with something small. Don’t bet away your family jewels right away. And build in extra checkpoints. Check every now and then how it is going. Ask for a window into the restaurant kitchen and peek in occasionally. There is nothing to hide really. The idea of taaS is to put the responsibility of successful software development on us. The idea is not to hide the elves who make the toys.
Every company, sooner or later, will have to become a technology-first company. But everyone does not have to be a technologist. If you can’t cook, you can always buy meals.