When there are two or three people in your (software) company, decision making is really easy: either one person makes the decision or everyone does. In general, this makes sense because when you're that small, pretty much everyone is doing everything, and pretty much everyone knows all stressors and influencers that might affect decisions.
- "What should I call this variable?": one person
- "Is this algorithm appropriate?": probably one person
- "Are we ready to release this version?": probably everyone
- "Should we take on this really big contract?": probably everyone
When the company is a little bit bigger and there is more specialization of roles, it gets rather trickier. Now you've got a sales guy and a developer and a QA type and a marketing guy and a support guy. You're too big to put everyone in a room for every single decision.
- "What should I call this variable?": still only one person
- "What color should our logo be?": one person (but now it's a different person!)
- "Are we ready to release this version?": the developer, the QA type, the support guy, and maybe the marketing guy.
- "Do we want to take on this really big contract?": still everybody. This is what they call a game-changing event!
Eventually, someone's going to feel left out of a decision they wanted to be part of, or someone's going to feel involved in a decision that's way over their heads. This is when you need to figure out the difference between people who need to be part of decisions, people who need to be informed of decisions, and people who don't care. The last category is usually the easiest: in general, asking them which option they prefer will get a response of "I don't care" or "I have no idea. Ya'll pick." The first two categories are harder to distinguish. In the end, I have one rule of thumb for who needs to be involved in a decision:
The people who are involved in making the decisions should be the people who provide value to the decision.
If someone has information or could say something that would alter the outcome of the decision, then that person belongs in the decision making process. Everyone else can simply be informed later.*
* Yes, this sounds harsh, and it is. But decision making is about getting the right decision made, not about making people feel good. Look for other areas to make employees feel valued, areas where making them feel good doesn't slow the company down. And remember, the employee has a responsibility to the company as well; if you work hard and add value, then you'll be involved in the decision merely by having the knowledge and skills necessary to make a good decision.