In this era, code for games was essentially write-only, by one or two engineers. No one would be confused by the code in later releases because there simply weren't any. Code that was common between games was the exception rather than the rule (at Atari, some of the best debugged and well-structured code was the stuff that operated the coin mechanism, because it had to be right or customers would aggressively exercise the tilt switch mentioned in the article).
Code also had to run on really tiny hardware. ROMs cost real money, and marketing wasn't going to give you more just to make your life easier. If your code ran in 4K, but Joe's code was a complete train-wreck that ran fine in 2K, guess who got the big bonus?
One cow-orker of mine had spent some time writing code for pinball machines at Midway. He said that on one project the hardware engineers wanted to save money by half-populating the board's RAM; unfortunately the way they sliced it was to only provide the bottom 4 bits of each byte.
"The ROM is still 8-bits wide, you can work around the RAM thing in software."
He only got his full-width RAM by pointing out that the processor's stack wouldn't work.