|
|
|
|
|
by constantcrying
695 days ago
|
|
I like the distinction between technician and engineering. So much of software development is just technician work and has nothing at all to do with engineering. Unlike other countries in the US you can call yourself an engineer as a job description without any restrictions, so far too many people have taken on that job description, even if it does not make any sense. |
|
This is one of my pet peeves... in Engineering school it is beaten into you that what you build has to be correct. Correct as in, did you check the poles and zeros? Is this thing going to oscillate out of control and kill people in any breeze? Is this circuit ever going to go into a region where it will fail, probably killing people, and did you ensure you have circuitry that will prevent that? Is every floor of this building rated for the loads, winds, seismic activity, etc.
I feel like in software, there used to be a lot of focus on correctness of algorithms. In undergrad computer engineering we had to take algorithms and again in grad school. That class seemed like the one to teach you to be correct, but it was just in your algorithm design. So much of software today controls hardware that may end up controlling (insert your deadly item here: life support, airplanes, cars, trains, critical infrastructure, deadly infrastructure, etc) that it makes me wonder just how much holistic testing of the "in which ways can this software fail and kill people" has taken place.