Comment by fidotron

2 days ago

But this is a whole series of junior level mistakes:

* Not dealing with null data properly

* Not testing it properly

* Not having test coverage showing your new thing is tested

* Not exercising it on a subset of prod after deployment to show it works without falling over before it gets pushed absolutely everywhere

Standards in this industry have dropped over the years, but by this much? If you had done this 10 years ago as a Google customer for something far less critical everyone on their side would be smugly lolling at you, and rightly so.

> junior level mistakes

> Not dealing with null data properly

This is _hardly_ a "junior level mistake". That kind of bug is pervasive in all the languages they're likely using for this service (Go, Java, C++) written even by the most "senior" developers.

  • From their report: "This policy data contained unintended blank fields."

    This was reading fields from a database which were coming back null, not some pointer that mutates to being null after a series of nasty state transitions, and so this is very much in the junior category.

    • It doesn't matter where the null came from, if the language silently allows it then every skill level of engineer will make the mistake.

      1 reply →