Monday, February 2, 2009

The metric of a man...

So, my manager decides to talk to myself and two other people (the other software engineer and the EE) the other day, and says that they will be starting an "incentive bonus" plan. We can write our own performance metrics for the bonuses.

In a recession... When sales are flat...

The theory is that we will be going to a 4 day work week, but since the three of us will need to keep working full time, this is a way to keep paying us full salary, despite the fiction of not working full time.

But, this brings up an interesting question -- I write very low level software, to satisfy some very vague specifications. I normally get the schematics from the EE, and start planning, and later get the prototype hardware. Then I have to test the prototype to make sure the EE didn't make any mistakes (I often find one or two, usually something like a missing trace. His layout software is very good, and it uses the netlist from the schematic to try to make sure that all connections are accounted for, but in the last couple of boards we have found that somehow a ground trace gets lost by the software, and so a ground trace is missing. Very annoying...).

Then, I have to get the "application" working. Occasionally I get to write it from scratch. Often I have to take some code written 10 years ago (or longer...) for a different system (that writes down to the bare metal), and get it working on new hardware.

I can give an estimate, but the larger the project (and the more the customer gets to change the specs in the middle), the harder it is to give any estimate at all, let alone one with any accuracy.

So, how do you setup "performace metrics" for such a situation? I sure don't know, and my income will depend on it...

No comments: