it-swarm.it

KPI per programmatori

Conosci qualche indicatore chiave di prestazione per gli sviluppatori? Cosa dovrebbe essere misurato e monitorato?

28
Raymund

Considera la seguente verità: otterrai esattamente ciò che misuri e controlli. Con quello in mente:

Cose terribili da misurare

Linee di codice - Il codice elegante ha una natura concisa. Le righe di codice incoraggiano il gonfiore, il copia e incolla o, peggio ancora, il codice per motivi di codice.

Time-to-solution - Il codice fatto contiene rapidamente molti bug.

Correzioni di bug - Questo vale per "time to solution". Non premiare i programmatori per aver scritto il codice slopping, e soprattutto non premiarli per aver risolto i problemi che hanno causato in primo luogo!

Cosa, IMHO, dovresti misurare

Impact. L'unica cosa che conta è ciò che fanno i tuoi sviluppatori . Hai scritto uno strumento che migliora l'efficienza del 10%? Che dire di automatizzare un'attività che impiegava 3 ore? Che dire del refactoring di quella nodosa libreria in modo che ora sia più facile da usare per tutti i membri del team?

Dovresti misurare cosa succede dopo che il codice è stato scritto e quanto è prezioso il contributo agli obiettivi della tua azienda/azienda. Nota che è possibile avere un impatto negativo.

40
Chris Smith

http://i.stack.imgur.com/a0bTh.jpg

Quale porta rappresenta il tuo codice? Quale porta rappresenta la tua squadra o la tua azienda? Perché siamo in quella stanza? È solo una normale revisione del codice o abbiamo trovato un flusso di problemi orribili poco dopo essere stati pubblicati? Stiamo eseguendo il debug in preda al panico, analizzando il codice che pensavamo funzionasse? Sono i clienti che escono a frotte e i dirigenti che ci respirano al collo ..

(Robert C Martin, Clean Code - libro che si apre con l'immagine qui sopra)

32
Homde

Supponendo che tu abbia assunto qualcuno intelligente, dovrebbero fare le cose. Oltre a ciò, quando si misurano i dipendenti (in particolare i programmatori), si ottiene esattamente ciò che si misura.

In breve, controlla che i progetti vengano realizzati secondo gli standard del team.

8
Austin Salonen

Che ne dici di efficienza (lavoro svolto/ora) ?. Questo può essere misurato con la tecnica pomodoro . Dai un'occhiata a questa presentazione .

Una volta che stai monitorando le tue stime di pomodoro e i pomodorini effettivamente eseguiti per attività, puoi quindi misurare il fattore di realtà, che questo strumento ha chiamato pomodairo fa per te. Questo fattore di realtà può riassumere quanto sono buone le tue stime e quanto sei efficiente; per valutare l'efficienza mi limiterei a non più di 2 compiti pomodoro.

Trovo il pomodoros obiettivo (su base individuale) perché ognuno significa una quantità fissa di lavoro focalizzato e sono una buona misura per migliorare, quale IMHO è il vero scopo di qualsiasi metrica di questo tipo che conta.

3
dukeofgaming

L'abbiamo appena fatto nel mio lavoro. Cercando di capire quali dovrebbero essere i nostri KPI e quindi quali sarebbero stati i nostri KPI (dal momento che si sono rivelati difficili da misurare).

IL KPI dovrebbe essere una misura per risolvere i requisiti aziendali in modo tempestivo. Se qualcuno conosce un buon modo per misurarlo, fammelo sapere. :)

Abbiamo deciso di utilizzare il numero di funzioni implementate. I nostri clienti accedono a tutte le funzionalità degli utenti e hanno la priorità pubblica (in modo che le persone possano lottare perché il loro sia il primo). Abbiamo pensato che sarebbe stato un modo semplice per misurare se stiamo ottenendo buoni risultati. Vedremo.....

1
dietbuddha

Non ci sono quasi metriche di business che puoi usare. Devi trattare il programmatore come un matematico o uno scienziato. L'unica cosa che viene misurata è l'impatto o il potenziale impatto delle idee/del codice. Conterresti il ​​numero di righe in una prova scritta da un matematico?

Anche se si utilizza una misurazione, questa verrà trattata come un problema di ottimizzazione dal programmatore in base alla determinazione del salario. Un altro punto è che la produttività del programmatore varia di giorno in giorno, in alcuni giorni ci sono molte righe di codice scritte, altre volte non vengono pensate nuove idee di design, ecc.

Quali sono alcuni degli indicatori chiave di prestazione per un dirigente o un dirigente? Forse dovresti provare a usarli per i programmatori poiché ci occupiamo anche di idee e cose di pensiero.

1
Rudolf Olah

Per un programmatore industriale, $/ora risparmiato (o guadagnato) è, a mio avviso, l'unica metrica aziendale significativa.

I tipi di software sono noti per avere una mentalità di gioco (giochi per computer, carta e penna, puzzle, ecc.). Non comportamento di incentivazione non allineato con le esigenze aziendali.

Ad esempio, se consideri kLOC/settimana come l'indicatore chiave, osserverai che per la stessa funzione otterrai molti più kLOC.

Esempio:

int foo() {
   return blah;
}

Può essere trasformato in:

int
foo()
{
   return 
      blah;
}

Per la stessa funzione. Questo è un aumento di 2x LOC. Se classifichi la mia produttività principalmente in base a LOC, farai meglio a credere che valuterò se voglio ottenere quel bonus/promozione basato sulla produttività.

0
Paul Nathan

Direi che è necessario allineare le metriche dalle business unit alla programmazione. I programmatori non lo vogliono perché ritengono che la business unit si rovinerà e non avranno un bell'aspetto.

La mia risposta è: Amico - o Dudette - lavora con i tuoi utenti aziendali e crea strumenti fantastici per loro che li renderanno ultra produttivi e il loro successo sarà il tuo successo.

0