As I tried to explain in a previous post, workers share in no risk. They get a regular paycheck and if the company loses money at the end of the year, they don't have to give their paycheck back.
Managers act as proxies for the owner. They represent the owner's interest, which is making sure the workers are doing the work in a manner that will generate the owner a return on his capital investment.
So many people work for others because they can leave their job at the office, they don't have any capital of their own to start a business, and it is no risk as you get a paycheck for showing up, and the end product doesn't influence that.
Open source programmers are not engaged in profit making activity, and thus can work in a less structured manner. They don't need to tightly co-ordinate their activities because they don't have shareholders to answer to, competitors to battle with, or hard deadlines to meet. They are a poor example when compared with the structure of a real profit seeking firm in the marketplace.
People can self-organize, it is called spontaneous order, however it is not capable of scale without manager agents to communicate between individual workers.