You forgot about using ChatGPT and its ilk to generate code.
My take, however, is that most software engineers aren't. Engineers, that is.
At its core, engineering is about applying scientific principles to design and build complex systems or solve practical problems. This involves structured methodologies, rigorous testing, and a deep understanding of the materials or tools being used.
Traditional engineering disciplines like civil or mechanical engineering tend to require specialized knowledge in physics, mathematics, and material science. Engineers in these fields are also bound by strict industry regulations and safety concerns because their work can directly impact human life and infrastructure.
Software "engineers"? Many are self-taught, lack formal training and hold no degrees in the field at all.
This lack of formal training can mean that shortcuts, hacks, and "good enough" solutions sometimes become the norm.
And in a world that depends on software, that's not good.