Twenty years ago, I was lucky enough to write some servo code for an antenna pointing system on a satellite. I spent years designing, testing, debugging that code. It was burned into ROM just prior to shipment. Those chips cost more than my salary for a year back then. I had to get it perfect. With all the time I spent with that code, I can still see the lines of assembly language in my sleep. LOL
Code robustness on first release has dropped in a lot of fields because you can patch and update. Nothing wrong with that necessarily as long as its not safety critical but I do believe programmers can benefit from being part of a project that has to be right the day it leaves their hands.