| As someone who has been in the industry for 20+ years I've noticed changes that may have lead to this point. Daily standups, meetings, gluing frameworks Daily standups are is a one size solution to a communication problem. Daily standups shouldn't be necessary with a team constantly communicating. Daily standups leads to cutting projects into small daily tasks. This leads to a system of micromanagement and it doesn't provide an opportunity of non-verbal self reflection and focuses you into threadmill small task thinking never connecting with the project as a whole. Developers are expected to attend meetings more than ever. The focus required to deep dive into complex issues get's broken with meetings that developers shouldn't be attending. You can attend meetings or you program rarely can you do both effectively on the same day and rarely can you get the focus you once had. No one wants to reinvent the wheel so gluing together packages is considered best practice. The work has become more about making decisions around the packages you choose rather than being given time to make the package. Top pay with top companies seem to lead to burnout, lost purpose and this unhappiness. There is something unhealthy when companies get too large, force employees into promotions or unemployment, have an avg employment of under a year or designs interview processes around finding people who optimize for a high paycheck over those with a long history of experience. |
Almost all problems are really people problems, and people problems can only be solved by communicating with other people.
Some engineers seem to want to work for long stretches uninterrupted, like monks copying sacred texts. That is not the way to succeed. To succeed you need to make sure what you are building is actually what you should be building. I've never seen a way to figure that out without having meetings with other people.
Think of it this way -- a software engineer is not just a programmer, just as a fireman is not just a "hose operator." You are ultimately someone who gets things done and solves problems for other people, and that requires regular communication with those other people.