views:

283

answers:

7

I lead a team of 4 developers (me included). We develop bespoke financial applications so it is seldom that we sell the same product twice. Our boss has just come to me with a suggestion that we implement some kind of revenue sharing. This is not Incentive Pay, but a bonus that goes to the whole team for getting a project completed and shipped.

The idea is that the team will take a percentage of net. So if a project sells for $30,000 and the explicit expenses are $10,000, the dev team will have $2,000 to divvy up as I see fit. When I say explicit expenses I am excluding project management, secretary who organised flights, bloke who brought us coffee etc.

The three opinions on splitting up the money we have come across are.

Even Split Even split across 4 team members. i.e. Each of us gets $500.

Salary Weighted Split The money is portioned up with regards to our salary. So the most junior dev will get the least and I will get the most. (Surprisingly this is the option I'm least keen for)

Performance Weighted Split As an example, we split the money up 5 ways, and each developer takes a portion. The remaining portion will be split up amongst the guys who actually did the work in a manner that they agree to.

Right now I'm tending towards the even split.

I don't like the salary weighted split because I feel that I shouldn't get more just because I've been there longer.

I am ambivalent on the performance weighted split because the guys doing maintenance coding (thereby allowing the others to go do new projected) will be disadvantaged. Everyone will want to work on the big project which brings in a lot of money. This comes too close to incentive pay for my liking.

Another issue is if a new developer joins the team, how long until you bring him into the bonus scheme? From day 1? Only when he works on his first release to customer project? Judgment call by me and the other team members when we see him becoming productive and saving us time / work?

Just to be clear, we are well compensated as is and are all very happy in our job. I have been put in the unusual situation where my boss wants to give us more money in a way that he can justify to his board of directors.

+10  A: 

Money a lot of times (especially in the U.S.) is a huge bone of contention, and is seen as a status as to how valuable of an employee a person is.

I am of the opinion that everyone should be treated equally when it comes to bonuses. If you are splitting it up due to performance, you should really ask yourself, why do you have under performers on your team.

If you don't split it equally, politics come involved and you have to start justifying paying someone more for their work and be able to explain it to the other members of the team. You probably won't ever actually have this conversation with them, but eventually they'll find out who is getting more and wonder why. Really the conversation you're going to have with them over this is why they shouldn't quit and you're going to have some way of convincing them that they are a valuable member. Assuming the person leaving isn't the one with the largest bonus, it's going to be hard to do so, because you didn't pay that person as much as someone else. In this case, your actions spoke for you, which clearly said "I don't appreciate you as much as someone else."

Here's another thought. Don't give out the bonuses. Blow it on something fun. Don't make the completing project about getting more money as that can lead to problems. Use the bonus to improve the team cohesiveness (movies, dinners, parties, t-shirts etc.) Most programmers don't do their job, because they get paid to. Most programmers do it, because this is what they like to do. Money for these types of people isn't a huge incentive. Using the money to show that you appreciate the work they do can go a lot further. Most people work at Google or MS because of the environment, not because of they pay.

Kevin
+1 There's no way to fairly measure differences in contribution. If you try, whatever you measure will become the primary (and distorting) motivator, and will still not please anyone. This includes measurement by salary. Split it evenly.
le dorfier
+1 Great point on the blow it on something fun.. There's little more enjoyed than doing the things we like to do ourselves as a developer. Hit a movie, buy everyone a book or two, or go do something as a team on an afternoon...
Jas Panesar
You could also plan some type of event where you included the families of the people on the project. Pay for a Saturday at a theme park or something of that nature. One thing that is usually a common factor between everyone that works is that they enjoy spending time with family and friends. If they can do that and not have to pay anything for it, even better...
Mark
I had a +1 until the edit to blow it on something.
Tim
The question I think you need to ask is that if you don't think the programmers are making enough money, then why aren't they being paid more.
Kevin
Kevin, I can't tell if this answer was accepted (or upvoted) for the "everyone should be treated equally" rationale, or for the "blow it on something fun" proposal. Is it too late to split into 2 separate answers?
system PAUSE
+1  A: 

Are you sure you're not trying to motivate people to do the job they're already paid for? I don't make to take a leap of faith but it seems a little unclear to me.

Revenue Sharing is generally about sharing the results from going beyond the call of duty, to maximize revenue. So, if there is additional revenue (or profit) in the business due due to excellence as a team, there's something to share. I think it's fair to say that a poor performing team likely wouldn't have as much revenue sharing available.

Some consideration points:

  • What is your formula? Minimizing effort, and maximizing deliverables would be my guess. If you can't measure it (performance), you can't see if it's happening (revenue and profit to share).

  • What are your costs? Time. Finding the sweet spot of not under, or over investing your teams extremely valuable time.

Based on the two being one way to look at this, if a project is profitable based on what it makes you, minus what it costs (however you measure it), maximizing the profit without sacrificing quality at all steps could be a measure of seeing how much more (on average) revenue is being generated than before, etc.

If what you are paid is a fixed fee, and what you want to minimize is the number of hours, as a team, a revenue sharing model could be tied to how few hours (and bugs x days after launch) the project can be kept to.

As for feeling guilty, get over it. Stars are paid to lead, train, learn faster and build better -- in other words perform. Should all the players on a sports team get the same salary and bonus structure? Would you accept the same salary as your entire team, regardless of who did more or less?

Revenue Sharing is sometimes tied to your salary structure. Makes it easy and egalitarian. Hit the measuring points, and it kicks in. New members of the team are often there to learn and work their way up and are able to enjoy Revenue sharing -- at their salary level.

Business is not a democracy or a theology, it is a meritocracy. If you have more merit than others, it needs to show and let itself serve as a motivating aspiration.

We are hired to generate more value than what we are paid. If we treat our development efforts from the perspective of entrepreneur and an owner of the business, would we get different results than if we were developers working inside a corporate structure?

It's greatly applaudable that your boss wants to do this in a meaningful and sustainable way. Bosses like that come up once in a lifetime if you're lucky and he seems to understand the connection between investing in people and their development and getting the same in return from them.

Jas Panesar
"Revenue Sharing should be about going beyond the call of duty." - I disagree. It can be about sharing revenue - without making it about performance or contributions - that is what salary and bonuses are about.
Tim
Maybe I can clarify. Revenue sharing should be about maximizing revenue, so there is revenue to share. This is typically something most managements do not realize, and not enough teams with under-performers or new developers get.
Jas Panesar
So you are saying you have under performers at your company? Why keep them at all? It is not possible to devise a fair system for determining how bonuses or revenue sharing should be split up based on "contributions". There are SO MANY aspects to contributing to a project that any measure you use can be found to be unfair. There are many "intangibles" and I defy you or anyone to come up with a good method. This is typically where people just go with the even split or decide it isn;t worth it and decide against sharing in the first place.
Tim
When hired, generally someone is at 25%, or 75% of their potential before hitting their next level. Investing in each person's development for how they need to grow individually, and as a team is the key thing to focus on for any owner/developer. Many aspects contribute to a project, each team has to find their agreed measurements of value (including intangibles like peer reviews), and review/evolve them as needed. Revenue sharing is as simple or complex as desired, what needs to be measured is, does it work? What goal does rev sharing have for the team, the company and culture as a whole?
Jas Panesar
With respect to going one way or the other, there's setups with individual and group bonuses, at the end of the day it has to fit the culture, the team, the situation and the creativity that can be put into the revenue sharing structure. Even splitting can lead to an issue of still-developing (instead of underperforming) receiving a share that they haven't earned yet. That's up to the team? It's a problem worth solving, we have found something that works in our office and it helps everyone be a little more aware with the true cost of each decision. Thanks for asking for the clarifciation!
Jas Panesar
@boat-programmer: Revenue sharing *IS* a bonus. Sales guys get commissions. Adequate revenue sharing based on performance is tougher to get right with everyone else in the company though. How much does that secretary who keeps the office running deserve, versus that developer who spent 72 straight hours finalizing a critical release? Now that I think of it, revenue sharing would seem to increase the dead-weight risk of any one person. Why should I bust my ass if everyone else is as well?
Chris Kaminski
+4  A: 

You should implement an even split. It is easier to calculate and removes any potential for envy and bad feelings.

The spirit of revenue sharing seems best expressed with this method.

Bonuses are separate.

Tim
+1  A: 

Actually, money has been shown to be one of the least motivating factors for software developers. Sure, they're liable to get cranky and leave if you don't give them anything like what other companies do. But past that, they don't care that much.

If you have money to spare, the best thing to do with it is give everyone offices with doors, the hottest rigs you can afford, the nicest chairs available, and two large monitors. Phones w/ caller ID and off-switches on the ringers, free sodas, etc. Show them you respect and value what they do. That message will never get across if you are treating them the same as the lobby receptionist.

T.E.D.
Speak for yourself. I'll take the cash please. :)
Dana Holt
And who says that lobby receptionist isn't keeping the mass hordes at bay on your behalf? I've known more than a few who filtered all the marketers, headhunters, and salesmen from ever getting to people doing real work. When I was in IT getting calls from vendors or headhunters, our receptionist would shunt the prospectors to special voicemail boxes she set up that no one ever checked. In one startup, she'd print out our daily schedules with minutes from past meetings and make sure they were on our desk first thing in the AM, ready for us to use. Never underestimate the office admin.
Chris Kaminski
@darth - You're kinda missing my point. It's in the name of asking for more respect for the lobby receptionist/guard though, which is a worthy cause, so good for you.
T.E.D.
+1  A: 

Personally, figure out how the crab-boats do it with their "half-share", "full-share" math. A new guy working on your project should get a part of the bonus, moreso if he busts his ass, but if he's "new", he's slowing everyone else down, and shouldn't necessarily get a full-share.

Maybe you as captain decide when it's time to give a guy a full-share, or maybe the whole team votes on it. But weighting it by salary? I'd agree with you, I wouldn't do that. Blowing it on a junket is an even worse idea, people are dying for money in this economy. Maybe you buy Aeron chairs or sofa's for your workspace, to help facilitate better working, and bigger bonuses?

Chris Kaminski
A: 

The number one, absolutely top, thing you have to avoid is any perception of subjectivity and unfairness. If people start wondering why they're not getting as much money as another team member, the team is going to be under a great deal of stress, and you're better off without the bonus. Giving developers money is not a bad thing, but it has the potential to go toxic real fast.

I'd recommend a straight split, as being the least likely to engender bad feelings. As far as new people go, have a set policy that all your current people can live with, leading to a full share in at most one usual product cycle.

Spending part of it on a party of some sort is a possibility, but you need to be careful that you're not excluding one or more people consistently. People like different sorts of parties, and have different constraints. On the other hand, it may be the best way to spend small amounts of money, and it's always nice to have a "we shipped!" party.

Spending on productivity is going to be touchy. After all, if buying dual monitors and the like pays off in productivity, and the developers don't already have them, that sends a message that the company doesn't care about the developers getting things done.

David Thornley
A: 

Even split is the easiest and perhaps the best. Anything else will result in competition and hard feelings. I like competition between teams, but not in a team.

If someone is not pulling their weight, that is a separate issue and should be address outside of the bonus.

Jim C