Well, Most of the software engineers in early 2000 were unaware of what to do when it came to fixing a code in a technology which no one else in their organisation had worked previously. They sweat, struggled and spent sleepless night learning from books and existing code but managed. When internet gave birth to the current day Google, it seemed as if the life of a software engineer was becoming easy. Today, it seems incredibly easy when each of us whenever we confront a problematic code, know how to fix it if we know how to google it. Google became more of a verb than a noun. Well, what we are talking about now is something very different.
Over the last decade, we have seen that more and more applications have gradually moved into the internet. Having said that, lets take the case of online photos. In 2004-05, you would be scared to put the photos on Yahoo! photos, but now, you are not. So there is no more storing photos in your computer hard disk and taking the risk of hard disk crash – you put them up in Picasaweb and others. One classic example of things moving into internet storage and processing. Think of companies who needed hardware and software for their enterprises – they hired consultants, software engineers and started development inhouse, then moved to outsourcing the development and then moved to hiring product companies who provided readymade software solutions which suited their enterprise. The latest model is cloud computing for Infrastructure, PaaS for Platforms and SaaS for Services. What do all of these mean? Do they challenge the existence of Software engineering as a career? Do they challenge the IT industry in the country? Tall claims – Hard Threats. But how exactly does it translate to?
As the internet bandwidth availability becomes more and more affordable and available, remote access of data and applications is gaining ground. Imagine the period when there was no email – till that time if you wanted to send some email to someone, you would define your server, set the connections right, do a lot of coding in the backend and then be able to send email. Now, is it that tough? NO. All you do is to use the signin using your credentials and you are using the service. The data (your emails) lies on google/yahoo servers and they manage it and give your the option to customise and edit the views by dragging and dropping into folders on their server. This is SaaS (Software as a Service).
All this is beneficial to the customers in a number of ways – First, they dont have to deal with the local storage of the data and the vendor is accountable for the up keeing of information. Second, creation of mirrors by cloud computing vendors makes the software deal with disaster recovery and helps businesses have a 24X7 uptime. Third, it needs very little time to plug and play which in turn means that the entire system can be activated on a plug and play basis after the initial configuration time of 1-2 weeks and the enterprise can start using it. This makes is very very lucrative for customers since they dont have to worry about the cost of the software development because anyway the price of the software is dictated by the volume usage of it. Classic example of this – Salesforce.com. If you needed CRM for your business, Salesforce has all the modules which can be directly plugged in to your system and you have to configure it using a User interface and you are done! This is software as a service where your data is hosted on Salesforce servers and they are accountable for it. Makes your job a lot simpler. You use the service and say tomorrow, your organisation moves into a newer platform, then you dont have to worry – they provide the migration interface too. Well all this is too lucrative. Without the internet this would not have been possible.
What is the issue then? The issue is that with more and more enterprises looking at the cloud computing way and SaaS way, the demand for actual development of the software would be reduced like anything! When previously, it would have needed atleast 20 people team for a company who wanted to create a CRM software for itself and such companies totalling to over 500 say in India – it would have meant the employment for atleast 10,000 software engineers in a month. However, now it would mean that the need for these 10000 people just does not exist because the companies are using SaaS!! Customisations would be the only thing which the companies would need development for. But how big is the market for customisations which would sustain the mammoth software industry in India remains the question.
Would love to hear your comments on this. Happy reading!