A blog post by Geoff Huntley last year really lit a ‘fire’ under me, or at least showed me that one other developer out there was thinking about this new paradigm in the same way I was.
This post discusses how some developers who are resistant to the new paradigm simply, “won’t make it”. We will see this bifurcation of software developers into the “accepting” vs the “resistant”. I honestly can’t tell you what I think will happen to the resistance long term, but I suspect they will either get on board the roaring train of capitalism with a new technology, or they will be left at the station.
The way I have really thought about this phenomenon is that this shift will put a magnifying lens on every single hire a company has done in the last 5 years, and expose the folks who aren’t curious enough. I’ve always thought of being curious as the most important trait for a successful SWE, and boy is that more true now than ever.
To dig into the bifurcation a little more, I think it’s mostly a question of “when presented with a new method of solution engineering, are you more likely to be dismissive or to try to make it work”. Because that’s it, really, if you’re resistant it’s probably because you’ve seen some result of these new tools that made you think “This isn’t as good as I would do” instead of considering all of the other parts of this, as in what it can do better than you right off the bat.
For instance, can you work 24/7? Can you scale yourself 100x? Because if your only argument against these tools is “It gets things right 75% of the time, and I get them right 95% of the time” then that’s not good enough to refute this new tech. Because with enough time that 75% can become the same 95%, and also in that time this process is much cheaper than you are, much more compliant, etc. So of course the ‘powers-that-be’ will choose it every single day of the week.
So, I’ll leave you with this imploration: When presented with a new way to engineer things, be an engineer, that focuses on the “how can I make this work” and not someone who throws it away after one mistake. That’s not an engineer, that’s someone who thinks too short-sightedly to be one, in this engineer’s opinion.