The IT landscape changes frequently as technology evolves, new models emerge, and demands change. Big data has necessitated the ability for big data analysis and cloud computing is allowing small companies to rent access to the same compute power once only available to organizations with much deeper pockets. As a result even one-man shops and teenagers have access to the same compute power that NASA used in its recent Mars lander mission – and for only a few dollars per month. This encourages continuous competition in an ever changing market. While the changing landscape also increases volatility it also drives innovation by encouraging continuing education and often requiring altogether reinvention.
It is actually a greater challenge for larger companies to sustain themselves under these conditions more so than a smaller company – by the time they have become educated, trained, and vested into something new an even newer technology is out. They are having to review replacements and upgrades before the previous deployments are complete and then they have to offload outdated resources that no longer hold any value. This is a costly evolution! As a result companies grow tired and look to outsource IT services – everything from Service Delivery to Infrastructure. Take for example the following services that Wikipedia references for “types of cloud computing”:
- Infrastructure as a service (IaaS)
- Platform as a service (PaaS)
- Software as a service (SaaS)
- Storage as a service (STaaS)
- Security as a service (SECaaS)
- Data as a service (DaaS)
- Database as a service (DBaaS)
- Test environment as a service (TEaaS)
- Desktop virtualization
- API as a service (APIaaS)
- Backend as a service (BaaS)
But today I want to discuss the direction we are headed and the last remaining components necessary to fulfill that realization – the consolidation of all of these services under one umbrella, IT as a service (ITaaS). Our “sample” IT organization consists of (never mind the hierarchy; all IT organizations are different – thus the term “sample” instead of “typical”):
- Infrastructure (CIO)
- Service Delivery
If you review these carefully you will note that the vast majority of Infrastructure can already be outsourced: software and application (SalesForce.com, Intuit, Google Docs), hardware and network (AWS, Google CE, Windows Azure). As a result procurement becomes minimalistic as it no longer relates to Infrastructure; it simply exists for the acquisition of desktop computers and software licenses. Service Delivery, Architecture, Engineering, Quality Assurance, and even PMO are all being outsourced, sub sourced, or off shored but with mixed success. And the cost of off shoring has steadily increased to the point that it is almost no longer cost efficient. In fact I have observed that most of my off shoring has migrated from India to Eastern Europe and even that is beginning to look less attractive.
Incidentally, and despite the fact the Cloud Computing allows companies to run powerful infrastructure at minimal cost, there is still a drive to decrease costs across the board in most IT organizations. In recognizing that there is significant value in maintaining an internal Product Development organization how can we continue to decrease costs without sacrificing our core knowledge base?
Well, as you might suspect, I have some recommendations: crowd sourcing, staff augmentation (or some variation), and the integration of both directly into your applications. And, as you might also suspect, Amazon Web Services plays an integral role in my approach.
We have all leveraged outsourcing at one time or another. Personally I have found that this is a successful approach if it is managed closely and works most effectively when you are outsourcing well-defined tedious and repetitive tasks. However, the disadvantage of outsourcing is that you lose some control, oversight, and transparency of individual resources (and subsequently, cost efficiency).
In addition companies had challenges managing overseas vendors (off-shoring) due to timezone and communication differences, costs increased to the point that off-shoring was no longer a significant cost savings, and we began to look for other options. Today we often use staff augmentation. Staff augmentation is appealing because we can hire whole teams of talent on a single project basis rather than having to deal with individual contracts – not to mention the HR management component for a temporary position. We can incorporate this expense into our capital budget, build out the project, and move on without the ongoing expense or need to release resources that are no longer needed.
Recently I even spoke with a company who has trademarked “SmartSourcing” – similar to staff augmentation but also allows the hiring company to be involved in or fully manage the hiring process and staffing of their outsourced resource pool. This model also allowed the company to scale resources up and down at will (a rare benefit that most staffing agencies cannot so readily support).
So, just like we scale our infrastructure and compute power with cloud computing we can also now do the same with our staff and code talent – this is an exciting evolution to IT leadership and has positive implications from an accounting perspective.
Crowdsourcing is also becoming more and more common – primarily for distributing tedious tasks such as data entry, quality assurance validations, etc. but also sometimes even for development (particularly in the Open Source community). So, how can you leverage this in your company? I will present a few excellent use cases:
1. User content submissions (comments, photographs, etc.) require censoring – a tedious, redundant task for which automation is limited. There has to be a human element in order to perfect this quality control.
2. Ingesting business cards is a challenge to automate to to the vastly different layouts. While you can leverage a number of “common sense rules” in order to identify names, addresses, etc. this also requires a human element.
3. How about video content submissions? What if you want to narrate them? We simply cannot do these things well without a human element.
… all of which brings me to my conclusion:
Programming the human element into your application
Certainly there are companies that have already implemented similar practices (e.g. Photobucket, YouTube) but they are likely using a costly internal work force to do so. Amazon launched a service last year called Amazon Mechanical Turk which leverages crowdsourcing on a global scale in order to disseminate Human Intelligence Tasks (HITs) via API calls without any manual effort. Users can then log into there “worker” accounts, search for, and complete HITs earning money for each completed task. Due to the global availability of the service costs are cheap.
I have not yet had an opportunity to leverage this in a corporate environment but I see vast potential for this service. It allows IT organizations to integrate the necessary human element in a cost-effective, scalable, reliable, and automated manner directly into the applications that drive revenue.
- Entreda Declares 2013 the “Year of SMB IT-as-a-Service” (prweb.com)
- IT as a Service from a CxO’s Perspective (infocus.emc.com)
- Thriving In A Post-ITaaS World: Clouds As Platforms For Innovation (chucksblog.emc.com)
- Ten Steps To IT Transformation (chucksblog.emc.com)
- The Top Ten Pitfalls In ITaaS Transformation (chucksblog.emc.com)
- Cloud Computing IT Outsourcing Contracts Triple (cloudcomputing.sys-con.com)