You both missed a key point: Optimization is suboptimal and results in more PC death, not less.
What do I mean? Let me show you in an example.
Bob makes Uber-Kill, a PC that deals four times the normal damage of a 7th level melee PC. In all other respects, the PC is typical of a 7th level party, as are the offensive and defensive abilities of his allies.
Uber-kill and his allies have been adventuring, and Uber-Kill lives up to his name. He is taking down enemies with ease. He is the offensive star of the game. Nothing the DM has put before the party has been a challenge because Uber-Kill is a killing machine.
What does the DM do? The DM decides that to challenge the PCs, he needs to add tougher foes. So, he adds more powerful creatures to the encounters.
This means that the PCs are facing monsters that hit harder, are harder to hit, and use abilities with higher DCs.
While Uber-Kill deals a lot of damage, his defenses, and the abilities of his allies, is not enhanced. The combats are out of balance if Uber-Kill is prevented from doing his thing... and he is more likely to be prevented here and there because the saves are harder to make.
I've seen this story play out a lot - most often when I am a player sharing a game with an optimizer. The Optimizer keeps pushing harder and harder, and PCs start dying around him... and then he fails a save and dies. And that usually results in a tantrum.
And the funny thing is - when I tell players what I've observed, the optimizers always act like they wouldn't be the one throwing the tantrum. They can't see that the same driver that pushes you to optimize - competitiveness - is the same one that pushes people towards frustration and tantrums.
The game works best when PCs operate at the expected power levels. That was the design. It is the way. Suboptimized, but efficient.