Mar 15, 2019
As I have been exploring the Power Platform, I continue to make new discoveries every day. I am not a developer, but I have developers on my team. Lately, I am noticing that we are pulling them into projects much less often than in the recent past. I wonder what the future-state of this will be...
We are in that fuzzy time, between something "new and significant" being launched, and the world understanding what it is, and what it means. Many customers are still saying things like, "I don't want this new Power Platform, I want Dynamics 365". Of course, Dynamics 365 runs on top of this "new" Power Platform. While confusion remains, I have covered this in other posts, so the "confused" obviously have not read them. For this post, I am more interested in the Developer's Dilemma.
Lately, Microsoft has been using the term "Citizen Developer"... a lot. To listen, you would think that any boob could build an enterprise grade application in an hour. That may be the case in the future, but we are not quite there yet. However, we are at a point where a technically inclined, non-developer, who understands their business, can indeed get quite far, all the while thinking that C# is either a musical note, or some kind of cheese. So what is the current, and future role of that hard-core developer in this equation?
Even though more apps are now being built by non-developers, most of them will hit some deep water at some point. That deep water is about a mile further out than it was just two years ago, but eventually they will reach it and either settle, or engage a developer to help paddle through it. But they got a mile further before having to do so! That's a mile of work that previously would have kept a developer busy... and the deep water line continues to move out.
Not anytime soon, but I can see the need for advanced C# developers fading over time. On most partners' benches, these are among the highest paid resources. It is because of this, that the off-shore industry was born. But as the need diminishes, and the opportunities become scarcer, rates will come down, and never go back up again. This spells long term trouble for both on-shore and off-shore companies focused on deep development.
I was chatting with my good friend and fellow MVP, Mark Smith (aka @nz365guy) the other day. Mark has been around development for decades. He suggested that all code is logical. At the end of the day, all code results in 1s and 0s. It's not emotional, it's not creative. Mark feels that in the not-too-distant future, code will be written by AI. I can't come up with a single reason to disagree.
So, if the world continues to grow... a given, and platforms like the Power Platform continue to evolve in the direction they are... another given, what skills will be needed? Whenever I have looked at complex things built by coders, one thing always stands out to me: it's some ugly shit. In a world where UI/UX trumps functionality, the world that we have been living in for some time now, it seems the future needs are clear. Business Analysts and Front-end Developers will be the coveted skills. BTW, Mark is with me on that one.
The tools of the Front-end developer trade, are currently the tools that will become even higher in demand than they are today. I'm not saying that we won't need that occasional bit of complex code to accomplish some thing, but that box keeps shrinking. Far more important to me, and customers, is the UI/UX we engage with. We don't really care, or appreciate, what goes on behind it. Just like everything else, UI/UX tools will continue to evolve also, and at some point that skill set may be in jeopardy also.
If you abstract out the developers, both front-end and back-end, what is left is the business logic and process. I have always found developers to be lousy analysts, they work with the other side of the brain. But those people who are able to dissect a business, really imagine all of the components of it floating in the air, see how they connect, see where they fail and can improve, from the front all the way to the back... they will be the kings. And they won't need to know a lick of code. Of course the Business Analysts I have known, are not UI/UX capable, they take more of an "I'll know it when I see it" approach, rather than a "Here's what it should look like". Couple a good analyst, with a good front-end developer, and you can rule the world
Microsoft sees it. So do the other major players, but Microsoft has a unique set of assets to actually seize upon this. The "Power Platform" is the tool-set that is rapidly evolving to fulfill this exact scenario. I don't know if Microsoft actually coined the term "Citizen Developer", but they have taken ownership of it, just like they did with "Cloud", which contrary to what you might hear, Microsoft did not invent. But unlike Cloud, this time they are not late to the party... they are right on time.