The author blames this on management pressure and deadline acceleration but it seems to me that they made an incredibly obvious and negligent mistake and is trying to pass the buck.
Exactly! There seemed to be a severe lack of any production control processes at this place. That's the fault of management and senior developers/architects. Contractors should never be given the keys to the kingdom like that. And if they are, then there should be some checks and balances to make sure they don't do something foolish like this. But I've worked at places like this where we coded "close to the wire" so to speak and it's just get the job done and who cares about quality. Management should absolutely get the blame when a screw-up happens.
I am not sure how a non-technical director is supposed to hire a software engineer if software engineers themselves fail to hire good software engineers.
They mentioned other people being fired for "not being fast enough" - I'd say that puts the blame squarely on management and not them. People will do all sorts of silly things in a culture of fear and unmovable deadlines like that.
The deadline for generating a bunch of random phone numbers to block? The author would probably save some time by hard-coding some truly non-existent phone numbers instead of using a random number generator.
Author says in the article they had a 3 day deadline to finish the product and needed to test thousands of cases while already having pulled late nights to keep up with schedule.
“To the tens of thousands of people whose phones were suddenly and inexplicably bricked: my bad. You see, it was almost the weekend and although I had 3 days to responsibly approach this problem, I had already pulled several late nights, I’m sure you understand”
That's not the point. It's just not sensible to blame this one developer for a horrible environment in which this was the only option aside from getting fired, which is quite onerous a responsibility to put on a single person. This falls squarely on management.
>in which this was the only option aside from getting fired
I don’t believe an ill conceived script was his only option. And the rub for most people in these comments is that the code he wrote should have never made it to his fingers—he *knew* it was going to be rushed into prod, but he didn’t stop and consider that randomly generating numbers in a phone number-like schema to the scale of tens of thousands would actually semi-regularly produce a real phone number?! Seriously?
Anybody that has been dealing with deployments in critical systems has been in similar situations, specially being a vendor. When you are there it all depends on your risk appetite.