There is a contradiction in the very phrase "software company." The two words are pulling in opposite directions.  Any good programmer in a large organization is going to be at odds with it, because organizations are designed to prevent what programmers strive for. 
 Very true, particularly the last part of the essay. Holding a Program in One's Head  |