Premianti programmatori in base all'importanza dell'applicazione [chiuso]


10

È corretto per il management dare più importanza o premiare i programmatori che hanno lavorato su un'applicazione strategica e importante rispetto a qualcuno che ha lavorato su un'applicazione generale?
Entrambi possono aver fatto gli stessi sforzi.


Questo è un modo perfetto per perdere affari da coloro che sono clienti da oltre 10 anni. Deve esserci un equilibrio molto delicato tra vendite, ingegneria e altro, altrimenti i concorrenti si prenderanno cura di te.
Giobbe

Risposte:


14

In primo luogo, più prezioso non significa sempre più difficile. Ad esempio: programmare strumenti interni potrebbe essere molto utile e risparmiare tempo per il personale, ma il valore per i clienti non è sempre visibile. La retribuzione dovrebbe essere premiata in base alla difficoltà di un progetto e alla responsabilità di una persona all'interno di una squadra.

Se premi le squadre in modo diverso, ci dovrebbe essere una condizione: le persone dovrebbero poter cambiare squadra quando vogliono . Consenti a chi ama sviluppare le applicazioni più difficili di guadagnare un po 'di più. Chi preferisce un lavoro senza stress può fare le applicazioni più facili. In questo modo tutti sono felici.

Bloccare le persone in squadre in cui una squadra guadagna un po 'di più porterà alla frustrazione e potrebbe lasciare le persone a lasciare la tua azienda.


+1 Concordo assolutamente con questo commento, "La retribuzione dovrebbe essere ricompensata dalla difficoltà di un progetto e dalla responsabilità di una persona all'interno di una squadra"
maple_shaft

4
La difficoltà può presentarsi sotto forma di rischio e non solo di complessità. Fare una danza può essere più complesso del camminare, finché non lo provi su un raggio che si trova a 500 'da terra. I poveri sviluppatori non possono scegliere di far parte di team per applicazioni critiche.
JeffO,

8

È corretto per i manager distribuire i propri sviluppatori in base alla massimizzazione del ritorno sullo sforzo. Pertanto, altrimenti dipendenti uguali dovrebbero essere ricompensati equamente.

Un manager che distribuisce uno sviluppatore a un lavoro di basso valore quando c'è un lavoro di alto valore da svolgere è gravemente incompetente dal punto di vista aziendale e lo sviluppatore non dovrebbe essere punito (o ricompensato) per le scarse prestazioni del proprio manager.


Tuttavia, le aziende falliscono a causa della gestione incompetente e anche i loro dipendenti più duri vengono puniti perdendo il lavoro a causa di ciò. La tua postulazione normativa suona bene, ma non vedo come puoi impedire che accadano cose del genere o come puoi far valere le stesse ricompense. Anche gli agricoltori che svolgono lo stesso lavoro avranno guadagni diversi a seconda del tempo e della qualità dei loro terreni agricoli.
Ray

8

In primo luogo, cosa si intende per "corretto". Se la domanda è se è moralmente difendibile pagare di più le persone in un progetto più importante, allora lo penso. Guadagni in base al vantaggio che produci non in base ai costi che accumuli. Se un programmatore impiega due mesi a produrre qualcosa di completamente inutile mentre l'altro trascorre due giorni a produrre qualcosa che raddoppia la produttività, il secondo dovrebbe essere pagato di più nonostante abbia speso meno sforzi.

Da quel punto di vista l'applicazione strategica e importante è semplicemente più preziosa per l'azienda e per i dipendenti che lavorano che stanno producendo più valore per l'azienda. L'unico risultato naturale è che faranno più soldi.

D'altra parte, se la domanda è se è una buona strategia per farlo, allora probabilmente no. Pagare automaticamente le persone su un progetto più importante più probabilmente introdurrà incentivi perversi. Le persone proveranno ad entrare in progetti più importanti quando ne avrai bisogno, lavorando anche su altri progetti. Di conseguenza, è probabilmente meglio pagare le persone in base alle competenze piuttosto che in base al progetto. Mentre funziona, probabilmente avrai le persone altamente qualificate e quindi altamente pagate che lavorano ai progetti più importanti. Ma probabilmente puoi evitare gli incentivi problematici.


10
Sono d'accordo, ma ho visto esempi in cui le aziende pongono maggiormente l'accento sulla "prossima grande cosa" e de-enfatizzano totalmente cose come miglioramenti ai prodotti esistenti, ecc. In particolare, daranno bonus e riconoscimenti dopo un grande lancio di nuovi prodotti , ma le persone che gestiscono il software esistente (il software con tutti i clienti) vengono quasi ignorate. Quindi direi che sono d'accordo con l'avvertenza che è giusto solo se l'azienda assegna correttamente "valore" in base al valore reale , non solo al valore percepito .
Dean Harding,

1
Non sono completamente d'accordo. La logica presuppone che le persone abbiano una scelta su cosa lavorare E che alcune persone scelgano deliberatamente di lavorare su qualcosa di improduttivo. In realtà, gli sviluppatori raramente possono scegliere a quale progetto vengono assegnati, e se potessero e i progetti di valore venissero premiati di più, quelli ovviamente di valore verrebbero ingannati dagli sviluppatori, il che non sarebbe neppure una situazione produttiva.
Michael Borgwardt,

@ Winston: che è una logica del bean bean counter orribilmente dannosa. Quello che succederà in realtà è che la società diventa impantanata in politica d'ufficio e pugnalate alle spalle mentre tutti chiedono a gran voce di entrare in progetti "preziosi", mentre le persone altamente qualificate che non vogliono giocare a quel gioco partono per trovare lavoro con un società meno disfunzionale che premia l'abilità piuttosto che la politica.
Michael Borgwardt,

@Michael, sono d'accordo. Ma questo sembra più un'obiezione ai metodi usati per decidere chi è assegnato a un progetto che all'idea che le persone del progetto importante saranno pagate di più. L'azienda intelligente utilizzerà i soldi extra disponibili per quella posizione per attirare programmatori con competenze migliori.
Winston Ewert,

1
@ Winston: questo ha molto più senso, ma presume che ogni progetto abbia un budget di assunzione indipendente e prende decisioni di assunzione indipendenti. Il che non credo sia il caso da nessuna parte. Concordiamo che l'obiettivo dell'azienda dovrebbe essere quello di ottenere gli sviluppatori più qualificati per i progetti più preziosi per garantirne il successo. Sto dicendo che in un ambiente in cui l'assunzione è centralizzata e gli sviluppatori intraprendono progetti uno dopo l'altro all'interno della stessa azienda (il caso più comune), basare esplicitamente i premi sul valore del progetto corrente non avrà l'effetto desiderato.
Michael Borgwardt,

5

Sì, molto probabilmente. Penso che il motivo principale per premiare gli sviluppatori sia impedire loro di voler trasferirsi in un'altra azienda.

Se hai tre sviluppatori che mantengono un sistema molto importante e venti sviluppatori che mantengono un altro sistema, probabilmente sarai più preoccupato di mantenere i tre sviluppatori, poiché perdere uno dei venti non è un grande successo. Potrebbe avere senso spendere più risorse per rendere felici i tre sviluppatori, se non puoi permetterti di renderli tutti felici.


2

Non credo che esista un tipo di giustizia come "la parità di retribuzione per la stessa prestazione lavorativa". Questo è solo un mito utile trovato in molte società. Non so se la tua domanda riguarda le leggi che potrebbero esistere in alcuni paesi o se vuoi sollevare una domanda etica. Ad ogni modo non saprei come misurare o applicare l'uguaglianza. Un tassista si esibisce molto meno di una stella del calcio il cui guadagno potrebbe essere più elevato di diverse dimensioni?

Il pagamento potrebbe dipendere da quanto erano buone le negoziazioni quando un programmatore cambiava azienda o quale fosse la situazione del mercato quando iniziò il suo impiego, quindi dubito che ci siano molte aziende in giro che pagano comunque i loro programmatori lo stesso importo.


2

È una domanda difficile, ma la responsabilità generale è generalmente riconosciuta dal management. Lo stipendio dei dirigenti è determinato dalla responsabilità che ha e penso che si applichi anche agli sviluppatori.

Se lo sviluppatore Hanna gestisce un software critico (National Security System), corre un rischio maggiore se qualcosa va storto rispetto allo sviluppatore Jill che gestisce un'applicazione di gioco per iPhone. In questo esempio, Hanna dovrebbe essere premiata più di Jill se tutti gli altri aspetti sono uguali.


1

Paghi ai tuoi sviluppatori migliori più soldi indipendentemente dalla redditività del progetto. Quali criteri utilizzi per definire "migliore", è un'altra domanda.

Non credo che tutti gli sviluppatori più qualificati dovrebbero essere in un team, quindi chi viene retrocesso al nuovo prodotto che non sta ancora facendo soldi. Due uguali sviluppatori del primo anno verranno ora compensati in modo diverso a causa di una scelta della lotteria per entrare nella squadra redditizia. Stai entrando in un sistema di retribuzione al merito basato su cose su cui non hai controllo. La politica dell'ufficio entrerà in gioco e ostacolerà la morale.

Questo diventa un altro sistema per essere giocato dai giocatori proprio come linee di codice. Un manager migliore farà politica per la ricompensa maggiore. Immagina di essere uno sviluppatore di Microsoft su un nuovo prodotto che va in pareggio, ma non guadagni tanti soldi come un team redditizio (perché la loro app ha anni di marketing alle spalle) che ha rilasciato una cattiva release e non ha fatto proiezioni di vendita . Non premi la squadra che ha caricato il prodotto di punta.

L'alta marea solleva tutte le navi.


0

Sono sorpreso dal numero di persone che presumono che la persona che lavora sull'applicazione strategica o redditizia debba essere più qualificata per quel progetto rispetto alla persona che lavora sull'applicazione a basso rischio. Le persone qui presumono anche che questo altro sviluppatore partecipi alla progettazione generale.

A parità di altre condizioni, e supponendo che i due possano essere cambiati da un progetto a un altro con lo stesso tempo di recupero, significa che entrambi dovrebbero ricevere premi uguali per lo stesso sforzo.


0

I programmatori dovrebbero fare la programmazione più difficile che possono gestire e dovrebbero essere pagati in base alla difficoltà di tale compito. Su (quasi) tutte le applicazioni ci sono parti facili e parti dure. Le persone che non possono programmare non dovrebbero essere ricompensate perché hanno lavorato su una parte molto semplice di un'applicazione molto importante. Allo stesso modo, anche se un progetto non è importante, se alcuni programmatori davvero bravi hanno fatto un lavoro difficile su di esso, dovrebbero essere ricompensati in modo appropriato. Se un progetto non è abbastanza importante per pagare agli sviluppatori un importo adeguato per il progetto, forse la società non dovrebbe fare il progetto. Forse c'è un modo più economico per fare lo stesso lavoro, come usare una libreria esistente (open source o licenza a pagamento) o acquistare un pacchetto software esistente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.