Its always a good idea to outsource
if you actually like paying more in legal fees trying to get the contracting company to do what the in-house IT dept achieved for half the price.
Adopting the latest hip technology – like "going serverless" – does not always work out as well as we'd hope. Take AWS customer Einar Egilsson, who decided to migrate his .NET Core web API application from a classic setup using Linux VMs and Elastic Beanstalk (which scales resources up and down as required) to serverless with …
From bitter experience, it also depends upon if the management that decided upon outsourcing has two braincells between them. The outsourcer promises the earth with bells and whistles, then when the IT bods are finally allowed in to ask the real questions the whole, very, very expensive house of cards, suddenly collapses.
So IT spend a year moving everything out to the oursourcer and then the company spends 2 years fighting the contracts with each other's lawyers and then 2 years moving everything back in house, of course having to hire twice as many IT bods 'cos all the people who originally knew how it all worked smelled the bullshit from a mile off and resigned before it all started.
Ultimately your company, assuming it survives, will end up paying 8 times what it would have cost to simply keep it in house in the first bloody place!
A project I'd worked on for a long time was suddenly turned over to outsourcers, as they wanted to scale it out to a load of other regions. The work involved here was basically writing and running a shit-load of SQL scripts to generate all the required data for these new regions.
I had this down a fine art having done it several times already and, frankly, could have done the lot in a week. But nobody even bothered to ask me about it, and it got outsourced and I got moved onto other things. I spent over a week getting them involved, and because nobody quite trusted them they had to do every small SQL change (all the inserts/merges etc) in a pull request for me to review.
It was tediously slow as you'd expect. The funny thing was when after a few weeks the outsourced devs (who were actually pretty smart) realised this was a huge waste of their time and talent and all quit, leaving us with nobody at all to do the work. By this time I was on other projects and couldn't be spared, so the big roll-out just basically stopped. I left shortly after, too.
There is no such thing as serverless. You are just using someone else's hardware. God I hate that term.
And duh, of course it costs. A few grand is enough to buy a very nice 1U server that will last you YEARS.
This is right up there with people suddenly realizing that Amazon isn't their best friend and are actually a company trying to make money.
And who maintains that server for you? If you get cheaper hardware but then end up employing a sysadmin to manage it you've almost certainly lost. Not to mention the level of service. You couple of grand is not going to provide a fault tolerant service across a couple of data centres.
Serverless is not magic and it is not necessarily cheaper but it is not as if there are no benefits.
Until manglement decide that once they've spent that money, they never need spend it again. Which is fun and games until you have servers that are so out of warranty that the company that built them got bought, subsumed, shuttered the brand and now the new owners have changed names again.... And then the server dies. Hard...and hasn't been DR'd within the last decade. A purely hypothetical situation*, obviously....
* hypothetical because it was a supplier not our management.
Anon to save the guilty.
It's all serverless.
Remember the invention of the client / server model of distributed computing?
Up to then services, i.e. non-application-specific stuff like file storage, printing, database and telephony, all ran on the same computer as application software. The term "server" was coined to describe a separate computer which ran no application code, but only services.
So if your application is running on the computer, it is, by definition, not a server.
Oh, also, it's still turtles all the way down.
This should not be surprising to anyone paying attention, as the cloud vendors' sales and marketing people implicitly, if not outright explicitly, say their cloud (not "the" cloud, mind) is a panacea.
Utter bollocks, of course. Whether your bits are bouncing around in your own metal on-site or in someone else's virtually, you need bright and skilled folks looking after it. That costs.
And while Bezos' lot are indeed a clever bunch, Bezos' main goal is to separate you from your money, that's all.
So use the cloud where it suits, but you'd do well to remember your needs and priorities are different from theirs.
In my experience, nothing that has been posed as being cheaper ever has actually been cheaper. If you aren't paying now, you're certain to be paying in the future. Even if you ignore the cost of migration, you still have costs in the form of things like SalesForce's outage last week where you end up losing a lot of revenue while SF finally got around to your data.
The first thing I tell clients is that if the new technology is going to solve a problem you have and can't solve for one reason or another, go for it. If you think it will be cheaper, then they are better off not wasting their money and for them to carry on as usual and their money is better spent making small changes to what they have already (Like providing better training, get better tools, upgrade hardware, etc).
Biting the hand that feeds IT © 1998–2019