At Atlassian, we deal with complex projects every day, from cross product integrations, to projects with aggressive deadlines or dispersed teammates. The bigger and more dynamic a project is, the more likely it is to cause stress and indecision.
I suspect that there’s a certain personality type that is drawn to programming. It’s the type of person that must be solving problems and learning new things, because without this drive, it’s hard to get ahead
To create a usable piece of software, you have to fight for every fix, every feature, every little accommodation that will get one more person up the curve. There are no shortcuts. Luck is involved, but you don’t win by being lucky, it happens because you fought for every inch.