|
|
|
|
|
by starttoaster
648 days ago
|
|
The thing is, you can hold an engineer that designed a bridge accountable for designing a poor bridge that failed under load. The strength of materials, the load bearing ratings of a particular design for a bridge, can all be calculated and are well known. How do you come up with the same types of calculations for software? You really can't, because writing software is more about designing a solution to problems people aren't already solving. You can write tests for the problems that you are skilled enough to anticipate, or even tests to cover problems you discovered in hindsight of a regression, and sure you can hold software engineers accountable for choosing to bypass the tests they write. But how do you hold a software engineer accountable for a failure mode that nobody considered already? It's like holding the very first person to design a bridge accountable for making a bad bridge, let's see you make a better one. For that reason, I don't think we'll see software engineers accepting the same level of responsibility for their errors as structural engineers. |
|
That said, from what I've heard, crowdstrike seems like a great example of something a hypothetical licensed software engineer should lose their license for. I admit I don't know all the details, but it seems that an update was pushed to prod that immediately broke all windows machines. Doesn't that mean they pushed an update to customers without testing it even a single time, on a single windows machine? I heard they even bypassed customer staging environments?
I also find it interesting to consider what the future holds. A few possible paths seem like:
1) The state of the profession progresses to the point where we have enough widely recognized best practices to make licensure meaningful
2) We consider the benefits of rapid, cheap(er than the alternative), software production as being greater than the costs of crowdstrike level events, and change nothing
3) We adapt software system architectures on the customer side so that there's meaningful oversight and accountability inside an organization (in many ways enabling #1)