Hacker News new | ask | show | jobs
by adriancr 833 days ago
The software engineers job is also to think about what happens in corner cases.

What if sensor malfunctions?, how should software act?, will it crash the plane?

If yes, then raise problem and refuse to implement / avoid killing people.

Then you have QA which should have the same questions and test plan to make sure corner cases are covered. QA is also responsible.

Then you have management which is supposed to make sure there are people skilled enough doing the above and the initial systems parts and encourage this environment.

Then you have business people to ensure sufficient resources to hire competent people above.

So what is happening is a massive problem everywhere...

1 comments

> If yes, then raise problem and refuse to implement / avoid killing people.

Often, software engineers are pipped, written up, berated, stack ranked - and churned via various management processes for doing exactly as asked for.

Until the culture of the company aka ALL levels of management changes to full accountability without blaming the actual engineers, nothing will change. The current corporate structure just isn't set up to incentivize good work.

Perhaps software engineers looking for accountability would like the same level of liability that is enjoyed by their peers in civil, mechanical, mining, and electrical engineering?
> Perhaps software engineers looking for accountability would like the same level of liability that is enjoyed by their peers in civil, mechanical, mining, and electrical engineering?

If it comes with the ability to say NO, or DELAYED, without management song and dance, it will get traction.

Problem is software engineers are replaced with juniors/contractors that probably do not know any better and are only one part of a system that has failed in its entirety.

What sane person would willingly put up code that can kill others on purpose... so we're left with incompetence.

Accountability, if implemented, should be company wide.

Right now issues have passed design stage, implementation, qa... with this sort of failure you have management to blame for not putting up processes in place so its caught / hiring and keeping competent enough people.

This is sort of expected as they optimized cost to the detriment of everything else.