Yes, I think it definitely has to be in the culture from the start. I doubt people who have been working at a company for a while are going to go for switching to a completely different methodology for getting compensated.
In the beginning, when a startup is very small, everything is transparent. Everyone knows who's doing what, and their share of the pay/company can be proportional. Kind of like the way Joel Spolsky describes having compensation open, not a big secret how much every person is being paid. But as the company gets bigger, you might not even know all the people there, let alone what work they're doing. The transparency breaks down.
I was already considering ideas of how to measure contribution by analyzing source code that you commit. But this obviously only works for code. Not all value contributed is through code. Maybe each department or kind of work could have its own scheme. (Manning the phone, for example, probably _should_ be paid hourly.)
In the end though, some hybrid will probably make the most sense. I'm looking for other ideas too.
Yeah, very good point about transparency. I remember reading some entrepreneur's story who stressed fostering this kind of environment. It is a somewhat different but related point: he insisted that everyone in the company spend time doing customer service, so everyone had a sense of what the customer's needs were and how the product was progressing. I thought this was very clever.
I also think you're right - there doesn't seem to be enough innovation in regard to compensation. Even bonuses don't necessarily create the right incentives - often these seem more related to the overall health of the economy rather than work or contributions. While it is a good idea to share success with employees, regardless of the cause, it does little to encourage employees in their individual actions. While you say this sort of salary structure is in reaction to a company's growth, it seems like they are even less useful as a company grows and each individual's contribution has an ever smaller affect on how well a company ultimately does.
Yes, absolutely! Doing customer service is a great idea. Many problems (esp. usability) stem from the fact that the people making the product don't empathize with the people using the product. It's just like when developers eat their own dog food, the software almost always ends up being significantly better.
I actually have asked multiple times to work in different departments at my day job to get a better sense of how users use the stuff I'm making. I feel it's necessary to do my job well. _Necessary._ But the culture just isn't open to that I guess. Short of quitting, I don't see it ever actually happening.
I completely agree with you about compensation. At a big company, the bonus I get has no correspondence to what I actually do. I wonder if it would work out better if profits were broken down by product, for example. Then, if you worked on a given product, you get a cut of the profit for that product. At least then, the profit from big hit products wouldn't be split among everyone in the company.
In the beginning, when a startup is very small, everything is transparent. Everyone knows who's doing what, and their share of the pay/company can be proportional. Kind of like the way Joel Spolsky describes having compensation open, not a big secret how much every person is being paid. But as the company gets bigger, you might not even know all the people there, let alone what work they're doing. The transparency breaks down.
I was already considering ideas of how to measure contribution by analyzing source code that you commit. But this obviously only works for code. Not all value contributed is through code. Maybe each department or kind of work could have its own scheme. (Manning the phone, for example, probably _should_ be paid hourly.)
In the end though, some hybrid will probably make the most sense. I'm looking for other ideas too.