Live data from Hacker News

Ask HN: How would you set up national certification for software engineers?

news.ycombinator.com

11–20 of 79 posts

Re: Ask HN: How would you set up national certification for software engineers?

#11
post #10

Do what they do for all other engineering fields: require a certified engineer sign off on a product delivered to a regulated entity, and be able to hold that engineer criminally liable if someone comes to harm from the product they signed off on. The quality of software for lolzcat apps could remain shitty, but the quality of firmware for FCC approval would go way up. In order for quality to increase for infrastruct…

    Do what they do for all other engineering fields: require a certified 
    engineer sign off on a product delivered to a regulated entity, and be able 
    to hold that engineer criminally liable if someone comes to harm from the 
    product they signed off on.
Right, but that's not what OP asked. OP is already assuming that we're in a situation where we recognize the need for certification for software engineers. Let's say, for example, that a plane crashed because of a software bug, and now people are saying that there should be a certification program to ensure that certified engineers have to sign off on software delivered for the aviation industry. The only problem is that no certified engineers currently exist, since this is the first year of the certification program. How would you proceed? Requiring certified engineers to sign off on code is great, assuming you already have a pool of certified engineers available to train up new certified engineers. It doesn't answer the question of how you get that initial pool.

Re: Ask HN: How would you set up national certification for software engineers?

#12
post #4

First of all, determine what value you bring with the certificates to various parties. In certified fields such as law, accounting, medicine, service providers benefit from high barrier of entry to market and high quality of the profession, whereas customers benefit from consistent quality and check & balances by law (via revocation of licenses if found to do malpractice). Governments benefit from increased surveilla…

In that case why is Jeff Sessions still a lawyer? any reasonable system would have debared him by now.

Re: Ask HN: How would you set up national certification for software engineers?

#13
post #10

Do what they do for all other engineering fields: require a certified engineer sign off on a product delivered to a regulated entity, and be able to hold that engineer criminally liable if someone comes to harm from the product they signed off on. The quality of software for lolzcat apps could remain shitty, but the quality of firmware for FCC approval would go way up. In order for quality to increase for infrastruct…

The contractor gets sued these days its not always the designer that is at fault - I have worked on a project where we had a problem with a bridge collapse I built a special tool to reanalyse some of the survey work to try and prove it wasn't down to us.

Re: Ask HN: How would you set up national certification for software engineers?

#14
post #4

First of all, determine what value you bring with the certificates to various parties. In certified fields such as law, accounting, medicine, service providers benefit from high barrier of entry to market and high quality of the profession, whereas customers benefit from consistent quality and check & balances by law (via revocation of licenses if found to do malpractice). Governments benefit from increased surveilla…

In that case why is Jeff Sessions still a lawyer? any reasonable system would have debared him by now.

It is my understanding that the Alabama bar is not very quick to disbar attorneys. It is also my understanding that no court has ruled that Sessions perjured himself.

Re: Ask HN: How would you set up national certification for software engineers?

#15
post #4

First of all, determine what value you bring with the certificates to various parties. In certified fields such as law, accounting, medicine, service providers benefit from high barrier of entry to market and high quality of the profession, whereas customers benefit from consistent quality and check & balances by law (via revocation of licenses if found to do malpractice). Governments benefit from increased surveilla…

In that case why is Jeff Sessions still a lawyer? any reasonable system would have debared him by now.

I have no idea who Jeff Sessions is, but I am sure that the rule tries to make sure that these kind of situations are the exception.

Re: Ask HN: How would you set up national certification for software engineers?

#16
I'm a Chartered Engineer in the UK and no employer has ever cared. Perhaps they might if I worked in a safety critical arena such as aviation but certainly not in suit and tie business software land.

The problem is that although people moan about rubbishy software it very rarely physically hurts anybody and can be fixed in future releases. This means people are unwilling to pay the extra cost of software being more mature and 'engineered' on delivery. There's a lot of software that would be not be economically viable if it was to be held to a higher standard. If a bridge failing could be guaranteed not to hurt nobody and could be put right in a day or so but be like 1/10th of the cost structural engineers would be held to a lesser standard to.

That said, the financial cost of poor security that comes from a lower accepted quality may change what is acceptable over time for internet facing software. Even that is seemingly a long way off, look at the actual consequences for recent privacy and security breaches.

Re: Ask HN: How would you set up national certification for software engineers?

#17
post #10

Do what they do for all other engineering fields: require a certified engineer sign off on a product delivered to a regulated entity, and be able to hold that engineer criminally liable if someone comes to harm from the product they signed off on. The quality of software for lolzcat apps could remain shitty, but the quality of firmware for FCC approval would go way up. In order for quality to increase for infrastruct…

There's the benefit/detriment of scale to consider. One guy who contributes to a widely used piece of software stands to affect millions if not almost billions. How do you mediate the difference in impact and infinite liability on a single person? One method is to stop relying on only a single person, but we neither have the manpower to do so, nor would it mitigate the damage per person significantly. Software is also far more complex to inspect, with an explosion of execution paths for every line of code.

We do need software engineering. But we simply cannot treat it like every other discipline. We need better techniques, we need formal methods. We're still in the dark ages, and every other discipline has sacrificed many to get where they are. But we're simply not there yet, despite the fact that we've protected many already thanks to the likes of Parnas and Boehme etc.

Post reply on HN