Engineering is the applying of science and technology for practical use, as far as I'm concerned.<p>Consider electrical engineering, and getting AC power to your computer. There are huge systems sometimes spanning continents, that then fan out to smaller and smaller branches, then to your home or office. Each and every section of that network was protected with some form of fuse or circuit breaker. They are all coordinated in such a way that the smallest breaker in the system will trip first if there is a fault on it's part of the network. At the end is a circuit that delivers a standard voltage at 5-20 amps, at 50/60 Hz, depending on your country. The circuit will protect the wiring in the walls against overcurrent, and will sometimes, depending on local regulations, even protect against flow through you, and arcing in the wires.<p>All of the systems were fairly rigidly engineered to prevent issues, even when struck by lightning, attacked by rodents, cars, or the odd tree. Everything that makes up the system is engineered to a set of specifications.<p>Contrast this with software engineering. Right now, it is not a strict engineering profession.<p>There is no equivalent of any of the above in the world of computing. You have a computer that can flow all of its resources (and YOUR resources) into any task, no matter how wrong it is, with no provisions for limiting side effects.<p>We've got a LONG way to go in the world of software. Like the early days of electricity, there is a strong tendency to blame the user when things go wrong. And there is a strong tendency for things to break, due to lack of safety factors.<p>The way we distribute computing resources, our operating systems, are not fit for purpose. When you run a task, there are no circuit breakers of any kind.<p>Now, when you consider all of that, is fixing that part of your job? No, it is not. However, being aware of the bigger issues, and perhaps seeking solutions in the off times, might be.<p>The thing you are hired to do is to solve business problems, but in a way that is not going to risk unnecessary harm. If there is something that might bring down the business, it is your responsibility to report it. If there is something that may endanger people, it is your responsibility to stop it from happening.<p>Computing is a tool in service of business. The computer is just a tool, not the goal.<p>Sorry this is a bit of a rant, I'll be glad to clarify any questions.