Be an Engineer, Not a Frameworker
johndanielraines.medium.com
johndanielraines.medium.com
The field has an obsession with knowledge and an underappreciation of wisdom, judgment, and experience. The fact that "senior" titles are given so freely 2-5 years into the career is a sign that knowledge, which can be crammed and accelerated unlike wisdom, is overvalued as a component of "experience".
The other part is that "wisdom, judgment, and experience" is difficult to scale and often uncomfortable for management. Many/Most want software projects to run like their (imagined, fictional) vision of a civil engineering project or an assembly line where people are perfectly fungible. They don't want some engineer with 30 years of hard experience telling them that the project they promised for 6 months is going to take at least a year, no matter how many devs are hired.
Then, there was a need for someone to do more integration work and I’d recently come off a project so I was chosen. I’m amazed that anyone that does integration work calls themself a programmer. There is almost no programming involved. 99% of it is just setting up AWS services, hooking them together, using Apache NIFI to process files (which is a drag and drop application - no programming required!), using MFT to transfer files, etc. None of it is custom code. So boring. A monkey who knows how to click buttons and fill in forms could do this work. And yet, they classify people doing this work as senior software engineer III!
There's another word for boring: stable.
The mark of a good engineer is not the ability to craft sexy, clever, bespoke, ego-boosting applications. It's recognizing there's an appropriate (rare) time to do so.
If you want a challenge, there's always golf or Advent of Code.
Regarding frameworks that works until your framework of choice stops being supported. Then the fun begins.
Wisdom is knowing when to go custom and when not to. Proclaiming that it is rare may be more an indication of what sector and types of work you do instead of an industry truism.
You're absolutely correct the important decision is knowing when it's pertinent, i.e. when it serve organizational goals which of course vary by sector, project, and a dozen or more variables; and that was my point.
The most dangerous thing is the myopic view that all programming should be reduced to this drudgery. Not only is it boring as sin, it also doesn’t even work that well sometimes, and resists being understood from first principles.
now code can flow..
or it can crash....
be code, my friend.