I'm thinking about cloud pricing after my profiling of over 60 of the AWS API resources as I play with building tools on Algorithmia and evaluate a variety of serverless options. As someone who is regular blindsided by the devious undercurrents of business, while I'm busy focusing on shiny technological objects, I can't help but feel like us developers are contributing to the commoditization of our (currently) valuable skillset when it comes to APIs, microservices, dDevOps and serverless.
This isn't exclusive to these areas of technology, and I think it is something we've all set into motion with APIs and microservices over the last decade. We are decoupling some very complex and often large codebases and dependencies that take a certain amount of experience and skills to tackle, and reducing down to individual reusable resources that are automatically scaled and may not require as many advanced skills to daisy chain and connect together. I'm all for doing this in the spirit of enabling the average business person to accomplish what they need on the daily, but from my experience in the savviness and deviance of business leaders, I can't help but feel that eventually, developer's labor will be devalued in this environment.
If we succeed — if all company resources are available via APIs and microservices, all events and actions are present as "serverless" technology, and each individual resource has a price tag, opening everything up for commoditization and extreme competition — this is good, right? There will still be room for a handful of high-paid architects in this environment. However, new pieces of code will be able to be developed in isolation at a very reduced price with a huge amount of competition, driving what developers will be paid way down. We are ultimately working against ourselves in this environment and our best interest by achieving the current vision of "scale."
I do not think that the technology being employed (API, microservices, DevOps, and serverless) will be entirely responsible for this. Business elements will be a driving force. The constant push for efficiency, scalability, lower costs, and a quest for profits will significantly fuel things. Also, political forces like a lack of awareness of the history of labor and the toxic views of unions in Silicon Valley set in motion by libertarian white male dominance in venture capital is establishing an extremely rich environment for this to rapidly move into realms that are out of control of the average technology worker. It will happen so quickly we won't even notice it.
This is an area I am just getting started thinking on. It is a feeling that kept bubbling up as I was reviewing Amazon Web Services and thinking about APIs, microservices, DevOps, and serverless at a high level. I'm not as knowledgeable on the history of labor as some folks around me, but I know enough that automation sounds good to us in theory but is something that often benefits those in power and rarely benefits those in the middle and at the bottom. I think many of us predominately white male technologists are willfully blind to the role we are playing in our own commoditization and reducing our hard work to something that will barely sustain a living wage in the near future.