Programmers have to make decisions about those things all the time. It isn't like the product team defines every nitty-gritty detail of implementation -- especially for machine learning and AI algorithms.
Sure, in the how cautious should I be in rain situation. Not, it's a sunny day and open road, the speed limit is 65 what should I do situation.
PS: I expect company's to punt with a user selectable: how much to speed buttons.
You're wrong. Programmers cannot escape making decisions when they design these algorithms, no matter the situation they are designed for.
A lot of AI is based around training sets not traditional Algorithms like your thinking of. There are simply to many edge cases to deal with by hand. Yes, there is also a lot of hand coding in these systems, but good training sets are very critical.
The choice of those training sets, including their contents, their size, how they are consumed, and the algorithms they are fed to, affects the output. Therefore, programmers make decisions. It is unavoidable.
I don't think the people doing a million miles driving Google cars around are classified as programmers.
Actually, some of them are programmers.
Even if they weren't, it is unrealistic to assume that programmers have no input into the decisions that go into building the training set, which in this case involves where, and in what conditions, the prototype cars are driven.
Granted, though plenty of Uber drivers are probably also programmers, and I have made plenty of business decisions I probably should not have. But, I would hope this is held to a higher standard.
The real choice is going to be what to do about soft obstacles. Hitting a person or deer can easily kill passengers and hitting trees is actually normally safer thus making the discussion fairly moot.
People are going to want to hack self driving cars so they can speed, which is more inline with this moral discussion. Not because it's safe for passengers, but because it's also dangerous for other people.