Quali criteri dovrebbero essere usati per determinare lo stipendio di un programmatore? [chiuso]


27

Di recente, ho preso parte a una discussione su quali criteri dovrebbero essere usati per determinare uno stipendio per un programmatore: gli argomenti variavano da "è una questione di scelta del datore di lavoro" ad altri argomenti che prendevano in considerazione l'educazione, l'esperienza, la comprensione delle tecnologie , ecc. Non molto tempo fa, ho letto un ottimo post sul blog di Stack Exchange sull'argomento e non potrei essere più d'accordo con esso, ma non molti datori di lavoro seguono la logica descritta.

Nella tua esperienza, quali sono gli elementi più importanti per determinare lo stipendio di un programmatore? Quali criteri sono più spesso applicati in quelle situazioni? Quali criteri dovrebbero essere applicati più spesso? E infine, in che misura l'istruzione formale (college, università) è importante per determinare lo stipendio?


3
Bella domanda, ma non vedo in alcun modo che ci può essere una sola "risposta" a questo. Forse questa dovrebbe essere una domanda wiki della community?
FrustratedWithFormsDesigner

Ho riaperto questa domanda, dal momento che è potenzialmente la risposta canonica a qualsiasi domanda sullo stipendio e l'unico modo reale per porre una domanda salariale in modo costruttivo.

Risposte:


16

Com'è

Sfortunatamente, nella maggior parte dei casi ho avuto esperienza con lo stipendio non tanto basato sul livello di abilità di un individuo, ma sulla politica aziendale, sulla concorrenza locale e sulla avidità. Le regole sono stabilite, la società in questione avrà un gruppo di persone che non conoscono lo squat sullo sviluppo escogitare un grafico del grado di remunerazione. Lanceranno un paio di livelli (ovvero Developer I - Developer III) del programmatore da qualche parte sul grafico, in genere più alti del tuo impiegato medio ma di solito inferiori a qualcuno che ha una posizione che richiede conoscenza del dominio, anche se queste sono le persone che lavorare a stretto contatto con.

Ci saranno criteri per adattarti a una di quelle categorie, tuttavia, ha meno a che fare con le competenze e più a che fare con quanta esperienza hai. In altre parole, il vecchio seduto nell'angolo che rifiuta di imparare jQuery perché non è così che ha fatto quando ha scritto la versione originale dell'applicazione web sarà pagato più di qualcuno che è attuale nella tecnologia, perché ha più tecnico conoscenza di te, sai perché ha più esperienza.

Alla fine, ciò che decide quanto vieni pagato è se passi o meno l'intervista e quanto bene negozia il tuo stipendio. Detto questo, la negoziazione produrrà solo una manciata di punti percentuali nella migliore delle ipotesi. Se superi l'intervista verrai semplicemente inserito nel sistema di valutazione in base alla tua esperienza pluriennale nel settore. Se sei fortunato ti daranno anche delle vacanze in base a questo.

Come dovrebbe essere

In definitiva, il problema che ho con le aziende non è che impostano un grado di remunerazione. Il problema è che hanno istituito un grado di retribuzione che premia solo il superamento e il mancato licenziamento. Non è davvero gratificante apprendere nuove informazioni e questo è il modo in cui una divisione IT delle aziende ristagna e si ottiene Bob seduto in un angolo che è totalmente e completamente inutile essere pagato più di qualsiasi altro programmatore.

Ad un certo punto durante un processo di intervista verrebbero valutate le tue abilità rilevanti per l'azienda. Se eseguito correttamente, sarebbe non solo la tua capacità di superare un'intervista giudicata, ma la tua capacità di risolvere alcuni problemi di sviluppo del mondo reale presentati di recente dall'azienda. In base alla velocità e all'accuratezza con cui sei in grado di risolvere un problema, dovrebbe riflettere la tua posizione sulla scala salariale. Qualsiasi test fornito dovrebbe consentire di dimostrare quanto segue:

  • Capacità di risolvere problemi di programmazione da semplici a complessi
  • Capacità di scrivere codice chiaro e coerente
  • Capacità di comprendere il codice esistente
  • Creatività espressa nel risolvere i problemi
  • Capacità di comunicare la soluzione ad altri

Istruzione superiore

Una laurea è importante solo nella misura in cui aumenterà la tua capacità di ottenere un lavoro senza esperienza. Nel determinare lo stipendio, l'esperienza e le regole di negoziazione tutto.

In breve

In molte situazioni, sfortunatamente, la regola è l'esperienza. Tutto il resto è un'eccezione alla scala retributiva. Il tuo set di abilità influenza solo il tuo stipendio nel modo in cui influenza chi ti darà un lavoro. La maggior parte degli stipendi, non solo per i programmatori, funziona in questo modo. Non importa se vai in compagnia con le abilità XYZ, ti pagheranno comunque solo X dollari, che in realtà potrebbero essere 1,05 * Y che offrivano a un altro ragazzo, ma la maggior parte dei salari sono fissati nella pietra e di solito i tuoi anni di esperienze ti dice in quale intervallo ti troverai.


una risposta così grande. Sono completamente d'accordo con te. tutto quello che hai dichiarato sotto "com'è" è davvero come è ...: S
Maggie

15

Purtroppo, penso che la posizione sia importante. Fattore di costo della vita, ma, soprattutto, in ciò che le aziende stanno assumendo.

Se ti trovi in ​​una sede con più società tecniche - aziende che vivono e muoiono per i loro tecnici - i salari per i lavoratori saranno più alti. La concorrenza per i buoni lavoratori farà aumentare i salari.

Se ti trovi in ​​una posizione dominata principalmente da "Negozi IT" - aziende che necessitano di software per svolgere la propria attività, ma è principalmente una spesa - gli stipendi saranno inferiori. Queste aziende cercano corpi caldi e non sono particolarmente propensi a riunire un team tecnico di livello mondiale.

Anche se lavori presso la società tecnica in una città piena di negozi IT, il tuo stipendio sarà ancora più basso - dove altro andresti?

Se sei una "rock star", significa solo che hai la possibilità di competere per i lavori migliori / avanzati presso i datori di lavoro. Per ottenere davvero una differenza di stipendio, spostati.


1
+1 in quanto, in generale, le forze di mercato fissano il prezzo. Un'osservazione sulle aziende tecnologiche rispetto ai negozi IT. Sono d'accordo che le aziende tecnologiche comprendono il valore di buoni sviluppatori, mentre il tuo tipico negozio IT non lo fa. Tuttavia, almeno qui (Scozia), ciò non si traduce necessariamente in tassi più elevati delle società tecnologiche. Anche dopo la stretta creditizia, i tassi IT nelle società finanziarie sono ancora più alti rispetto ai ruoli di sviluppo delle società di tecnologia / ingegneria.
Sfinnie,

è anche guidato dall'interesse, credo. molti dei migliori sviluppatori non lo fanno per i soldi, quindi non è sempre necessario compensare pesantemente.
Matt Joiner,

1
quindi, davvero, l'unico modo per ottenere uno stipendio più elevato è spostarsi? : /
Maggie

Mentre puoi ottenere più soldi in un altro paese, probabilmente finirai con un aumento del costo della vita. Qui in Danimarca abbiamo stipendi piuttosto alti, ma la Danimarca è anche un posto molto costoso in cui vivere.
Niklas H,

7

Le finanze dell'azienda, l'attuale tasso di mercato locale e l'importanza della posizione per l'azienda sono probabilmente i maggiori.

Finanze aziendali: non è possibile ottenere sangue da una rapa.

Tasso attuale di mercato locale: le persone hanno un problema a pagare di più per qualcosa se non è necessario e hanno meno probabilità di comprendere il valore se non sono informati in quella zona.

Importanza della posizione per l'azienda: Da ciò dipende la necessità di un certo livello di competenza ed esperienza degli sviluppatori. Un laureato non può fare un semplice sito web? Una società non software può vedere il software personalizzato come un piacere avere. In alcune situazioni sono stanchi di assumere un imprenditore e ritengono di poter ottenere qualcuno a tempo pieno a un prezzo inferiore. Questo ed è molto più bello averli qui tutto il tempo in modo che possiamo costantemente aggiungere nuove funzionalità ogni volta che lo desiderano (ci credono davvero). Avere un congedo per sviluppatori interno spesso interrompe il progetto in corso e si prende in considerazione l'acquisto di qualcosa dallo scaffale. Le società di consulenza possono ritenere di non dover assumere il meglio quando i loro clienti non conoscono la differenza e se lo fanno assumeranno comunque l'offerta più bassa. Ci sono alcune aziende che hanno una gestione e modelli di business così scarsi che nessuno sviluppatore il livello di abilità può superare. Semplicemente non vedono quanto sia importante trovare e mantenere brave persone.

Mi chiedo se un programmatore probabilmente paga di più?


4

Baserei il pagamento di qualcuno

  • Posizione e stipendi correnti per i programmatori nell'area
  • Esperienza del programmatore per determinare la retribuzione iniziale
  • Quanto velocemente ottengono cose fatte
  • Quanto riescono a fare le cose

Posizione / esperienza : la posizione e il livello di esperienza fornirebbero la base per ciò che pagherei qualcuno. Se desidero lavoratori di bassa qualità, rimarrei nella fascia bassa della scala, o se volessi lavoratori di alta qualità andrei per la fascia alta di questa scala.

Velocità di codifica : più velocemente riescono a svolgere un'attività, più velocemente possiamo spostarla nella produzione e migliorare la produttività. Ciò aumenta le entrate aziendali, il che mi consente di pagare di più i dipendenti.

Qualità del codice: se qualcuno può codificare rapidamente, ma è un disastro e difficile da mantenere, beh, non considero quella persona come un vantaggio per l'azienda. Se riescono a fare rapidamente le cose E codificare in modo che sia facile da mantenere, allora sono una grande risorsa per l'azienda e le pagherei di più.

E sicuramente non baserei il pagamento di qualcuno sul loro livello di istruzione. Non baserei nemmeno l'esperienza passata se il dipendente non dimostra di avere la base di conoscenze per andare con quell'esperienza.


Rachel, sei così saggia. Puoi essere sicuramente il mio collega o capo nella mia prossima vita - Pace
radbyx,

2

Dipende da quanto poco un programmatore che soddisfa le tue esigenze è disposto ad accettare e desidera ancora lavorare per te. Se il tuo ambiente di lavoro è all'incirca lo stesso della compagnia della porta accanto e loro pagano $ 5ka in più di te, gli sviluppatori probabilmente vorranno lavorare per loro e non per te. Se stai facendo cose davvero interessanti e sei un posto fantastico in cui lavorare, e la compagnia accanto paga $ 5.000 in più, allora potrebbe essere una decisione più equilibrata. Se la compagnia accanto paga $ 50.000 in più, probabilmente avrai ancora un problema.

È un equilibrio tra ciò che paga la concorrenza e la desiderabilità di un impiego presso la tua azienda sulla base di altri fattori.


2

Per decidere cosa pagare al programmatore, vedo solo questa cosa che conta:

(caratteristiche che possono essere misurate dopo aver assunto il programmatore.): -

Con quale velocità il programmatore impara qualcosa di nuovo e si adatta in un'organizzazione?


O


(caratteristiche che possono essere viste prima dell'assunzione)

in che modo il programmatore risponde a una domanda contenente alcuni problemi reali del progetto organizzativo ?
: - Intendo ciò che tutte le idee sono generate da lui in pochi minuti, il che fa intravedere qual è l'approccio del programmatore e fa il programmatore in grado di ascoltare .


1

Determinare lo stipendio di un programmatore dipende da molti fattori: in primo luogo il posto in cui lavorerà lo sviluppatore. Ad esempio, negli Stati Uniti, lavorare nello stato dello Iowa è diverso da quello di lavorare a New York o in California. Perché gli stati differiscono per standard di vita, spese, tasse, ecc.

Un secondo fattore è la reputazione dell'azienda, lavorare in una startup o in una società di medio livello non è come lavorare in grandi aziende! Sicuramente lo stipendio in un secondo momento è più alto.

Il terzo fattore sono le abilità del programmatore stesso, la sua esperienza lavorativa sia che sia legata alla descrizione del lavoro o meno, i suoi risultati, la sua istruzione (le università di alto livello dovrebbero offrire studenti altamente qualificati).

L'importanza del progetto e delle sue entrate per l'azienda è un altro fattore, se il progetto è molto importante per l'azienda, vuoi che gli sviluppatori si dedichino ad esso, per renderli devoti devi alimentarli di più!

Anche lo stato attuale del mercato, non offrirai un alto stipendio in un momento di crisi finanziaria!


1

Se gli sviluppatori sono richiesti (come in genere si trovano in grandi aree metropolitane), uno sviluppatore si sposterà solo per N% superiore a uno stipendio corrente. Poco importa quale sia lo stipendio attuale o cosa sia N, perché è diverso per ogni persona. Se una società decide che vogliono l'ingegnere, devono decidere se pagheranno. Ho la sensazione che ci sia una sorta di strana giustificazione che continua, dove indipendentemente dal salario precedente, il potenziale datore di lavoro lo usa per valutare il valore del potenziale dipendente. Questo genere di cose fa schifo (e sembra incredibilmente ingiusto) all'inizio di una carriera, ma è piuttosto bello in seguito!

Ciò non si applica necessariamente se la società può ottenere una sorta di leva finanziaria. Alcuni esempi di leva finanziaria sono: lo sviluppatore è attualmente disoccupato o lo sviluppatore vuole passare a qualche tecnologia o linguaggio in cui non ha alcuna competenza.

Ad un certo punto un ingegnere raggiunge un picco di stipendio in cui i datori di lavoro non sono disposti a pagare N% in più. Quindi l'ingegnere rimane fermo, passa alla direzione, considera le mosse laterali, ecc.

Mi rendo conto che non è logico, razionale, valutare il dipendente in base al merito intrinseco del tipo di risposta che stavi cercando, ma penso che sia il modo in cui funziona davvero.

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.