Perché gli analisti aziendali e i project manager ottengono salari più alti rispetto ai programmatori? [chiuso]


324

Dobbiamo ammettere che la programmazione è molto più difficile della creazione di documentazione o persino della creazione del diagramma di Gantt e della richiesta di progressi ai programmatori. Quindi per noi che siamo ingenui, sapendo che la programmazione è generalmente più difficile, perché gli analisti aziendali e i project manager ottengono uno stipendio più elevato rispetto ai programmatori? Che cosa rende il loro lavoro un lavoro ben pagato quando anche nella maggior parte dei casi i programmatori sono quelli che vanno a casa tardi?

AGGIORNARE

Scusa la mia ignoranza, da alcune delle risposte sembra che il motivo per cui BA e PM ottengano uno stipendio più alto perché sono quelli che di solito sono responsabili dei programmatori di pasticci. Ma alla fine, sono i programmatori che si sporcano le mani per sistemare il caos e lavorare di più. Quindi non ha ancora senso.


126
Indossano abiti migliori :-)
Stephen C

234
Il salario più grande in america non ha assolutamente nulla a che fare con l'abilità. Più ti piace e più giochi a giochi di politica, più vieni pagato. I programmatori sono di solito individui logici, intelligenti, che lo dicono così com'è. I dirigenti lo odiano.
MVCylon,

29
"... quelli che vanno a casa tardi ..." Non imbattersi in un duro ma questo suona come un problema personale che devi affrontare. Se impiegare lunghe ore è il modo in cui definisci il tuo valore per l'azienda, allora devi fare alcune analisi personali serie.
Aaron McIver,

14
Mi ricorda il teorema dello stipendio di Dilbert: csm.ornl.gov/~frome/dilbert.html
badgerr

27
Citerò che il PM e l'analista aziendale sul progetto principale a cui sto lavorando hanno messo in atto più ore di me. Non ci sono abbastanza soldi nell'universo per pagarmi per fare il loro lavoro.
HLGEM,

Risposte:


389

Il fatto che i project manager ottengano stipendi più alti rispetto ai programmatori e agli analisti aziendali esiste in quanto una classe dipende direttamente dal mondo del software in cui vivi.

Una semplice risposta a questa domanda sarebbe "perché nelle nostre società, pensiamo ancora che lo stipendio sia legato alla posizione nella gerarchia". Ma questa risposta, pur riflettendo il fatto che le persone sono pagate in base al loro valore percepito, non spiega perché PM e BA siano in cima alla gerarchia in molte organizzazioni di software e perché il management vada per gerarchia in primo luogo come struttura di scelta per il team di progetto del software. Queste sono le due domande che sembrano essere veramente degne di essere poste.

In generale, ci sono due categorie di organizzazioni che producono software. Li chiamerò Widget Factory e Film Crews.

Le fabbriche di widget nascono dalla scuola di gestione del pensiero che ruota attorno alla motivazione Teoria X proposta da McGregor: i dipendenti di rango sono pigri e richiedono un controllo e una supervisione costanti, i lavori vengono svolti in nome di un controllo salariale, i manager sono sempre in grado di fare i loro subordinati lavori di livello superiore o, almeno, stesso standard. Questo pensiero arriva all'idea naturale che l'intero team può essere facilmente sostituito e rappresentato dal solo manager - dopo tutto il resto del team è facilmente sostituibile o lì solo per migliorare la capacità del manager di completare le attività. Da qui la gerarchia come struttura e ruoli di lavoro piuttosto orizzontali.

Il management di Widget Factory opera partendo dal presupposto che il software può essere prodotto secondo una specifica preparata da un analista aziendale attraverso un processo chiaramente definito eseguito sotto la stretta supervisione di un project manager. La produzione è curata dal personale del progetto con risorse di programmazione e test sufficientemente qualificate ma intercambiabili. Il lavoro è guidato da un budget prestabilito basato sul caso aziendale iniziale preparato da PM e BA.

La gestione che gestisce una Widget Factory è facile da individuare prestando attenzione al modo in cui queste persone parlano. È probabile che si occupino di risorse (anche quando si fa riferimento ai membri del team), processi, efficienza operativa, uniformità, ripetibilità, controllo rigoroso sull'uso delle risorse, ruoli di lavoro chiari e input e output dei processi definiti. Indicavano casualmente la metafora della fabbrica quando cercavano di trasmettere l'immagine dell'operazione di sviluppo software ideale come la vedono.

Poi ci sono personaggi del cinema. Si basano sul concetto che le persone sono intelligenti, automotivate, lavorano sodo e godono il proprio lavoro tanto quanto i bambini si divertono a giocare. Gli operatori cinematografici riconoscono che, grazie alla specializzazione, le capacità dei singoli collaboratori possono superare di gran lunga le capacità delle persone di organizzare, coordinare e dirigere il lavoro. Dal momento che il manager non può più sostituire tutti, la struttura gerarchica non funziona così bene - le persone devono cooperare all'interno di una formazione molto più piatta e complessa per fare le cose. I ruoli di lavoro stessi tendono ad essere molto più verticali - dall'inizio alla fine - e comportano una più ampia varietà di competenze. Questo pensiero manageriale è sostenuto dalla Teoria Y di McGregor .

Un regista di una troupe cinematografica sa che la sua visione di un software può realizzarsi solo se fosse in grado di riunire un grande equipaggio, affascinare l'immaginazione e aiutare la squadra a gelificare e lavorare insieme. Il suo ruolo è ispirare, proteggere la visione, fornire direzione e focalizzare gli sforzi. Ogni singola persona è importante perché "il regista" crede che il software derivi dalla combinazione di visioni del mondo e abilità di tutti i partecipanti e di un modo unico in cui il gruppo svolge il lavoro insieme. Tutti riconoscono fin dall'inizio l'importanza di far entrare le stelle nell'equipaggio - gli attori stellari aumentano ogni possibilità di successo. Vision guida il budget e attira finanziamenti.

Quando si tratta di risarcimentoLe fabbriche di widget ritengono che il massimo valore derivi dal lavoro svolto dal project manager e dall'analista aziendale che risiedono in cima alla gerarchia e devono essere compensati di conseguenza, il resto del team non importa tanto finché loro ' ho le giuste qualifiche per convertire i requisiti in codice funzionante. PM e BA lavorano duramente per mantenere la loro posizione in cima al pacchetto limitando l'accesso libero alle fonti di informazioni sul progetto al resto del team. Senza un accesso formale alle fonti di informazione primarie, il team lotta per emettere giudizi di valore o trovare buone soluzioni, i programmatori sono relegati a prendere ordini dall'alto e a lavorare sul problema come definito da PM e BA.

In netto contrasto, Film Crew agisce come una formazione più egualitaria; i membri hanno accesso illimitato alle informazioni primarie, sono incoraggiati a formare giudizi di valore e sono liberi di selezionare un corso di azioni per realizzare e contribuire alla visione. La struttura della leadership si basa sull'abilità piuttosto che su un ruolo specifico all'interno del team. La compensazione riflette quanto sia desiderabile ottenere una persona specifica per prendere parte al progetto, spesso legato alla percezione di quanto più prezioso diventerà il risultato finale se quella persona può essere convinta a dedicare le proprie energie alla creazione di quel software. In questo ambiente il ruolo di project manager diventa meno importante in quanto è improbabile che sia il leader creativo; il ruolo si riduce principalmente al supporto amministrativo e alle relazioni esterne.

Ora, non sorprende che la maggior parte dei team di sviluppo software interni e alcune società di consulenza siano gestite come fabbriche di widget che si basano su un processo per produrre software costantemente noioso; sono questi ambienti in cui i responsabili di progetto e gli analisti aziendali sono regolarmente pagati più dei programmatori in base al presupposto che apportano il massimo valore con l'ambiente strutturato di conseguenza, rendendo difficile per i programmatori dimostrare la gestione sbagliata.

Le società di software di successo tendono ad adottare il punto di vista di Film Crew, qualsiasi altra filosofia ostacolerebbe la loro capacità di attrarre grandi persone sulle quali fanno affidamento così tanto per produrre ottimi software. È improbabile che tu abbia mai visto un ruolo di analista aziendale in quel contesto e i project manager sono meno importanti e vengono regolarmente pagati meno dei grandi programmatori.


68
abbiamo bisogno di un elenco di produttori di software "Film Crew" :)
Guillaume,

8
eccellente profilo della situazione
Lurscher,

46
Riepilogo eccellente. Un punto importante da ricordare è che nella maggior parte delle aziende, lo sviluppo del software è trattato come un costo (come, ad esempio, pagare una bolletta) e non come un investimento di base.
dbkk,

3
Buona risposta! Hai dato una buona foto di due diversi tipi di organizzazioni e hai descritto come vedono lo stesso lavoro. Uno sviluppatore di software deve scegliere l'organizzazione in cui il suo contributo sarà un pezzo importante e prezioso nell'output. Proprio come un ingegnere del suono / direttore musicale è un film.
Senthil Kumaran,

39
Amico, questa è una risposta brillante. L'analogia con Film Crew funziona così bene. Ho lavorato per una troupe cinematografica per 9 anni prima che venisse acquistato da una fabbrica di widget, dopo di che sono durato solo 8 mesi. Ho quindi iniziato la mia attività di sviluppo software e siamo così una troupe cinematografica. Penso che tu mi abbia appena dato l'analogia di cui ho bisogno per comunicare come lavoriamo. Grazie!
Daniel Paull,

276

Perché nelle nostre società, pensiamo ancora che lo stipendio sia legato alla posizione nella gerarchia .

Gli analisti o i project manager sono più alti nella gerarchia, quindi dovrebbero essere pagati di più.

Lascia che ti racconti una storia vera che illustri perché questo è un problema.

Un buon amico ha iniziato come programmatore in un grande ospedale. Grazie al suo duro lavoro e alla sua dedizione, è diventato rapidamente Oracle DBA, una posizione critica in un'azienda in cui i dati sono sia sensibili che preziosi.

L'ospedale ha lavorato con livelli. I livelli sono legati alla tua posizione nella gerarchia, eredità e diplomi.

Il mio amico ha ricevuto una proposta per diventare DBA in un'altra società che non utilizzava i livelli salariali. Il suo stipendio potrebbe essere aumentato molto. Poiché gli piaceva e rispettava l'ospedale per cui lavorava, decise di parlare con il capo, chiedendo un aumento.

Il capo ha rifiutato. Era impossibile a causa dei livelli e i sindacati non avrebbero permesso che ciò accadesse.

Il mio amico se n'è andato.

Alla fine l'ospedale ha assunto un consulente esterno (non vincolato ai livelli) e ha pubblicato un lavoro sul loro sito web. Il consulente non sapeva nulla dell'infrastruttura in atto, quindi la sua curva di apprendimento era enorme. L'ospedale ha perso molti soldi a causa di ciò.

L'ospedale ha perso molto di più. Il consulente esterno è stato pagato fino a 5 volte quello che il mio amico ha chiesto e non sono riusciti a trovare un dipendente qualificato per sostituirlo.

Questo è successo quasi tre anni fa. Il mio amico è ancora al suo nuovo posto e sta salendo molto velocemente la scala della gerarchia facendo ciò che ama.

L'ospedale paga ancora 5 volte di più.

IMHO, lo stipendio dovrebbe essere relativo al valore fornito alla società .

AGGIORNAMENTO : quando ci si sposta più in alto nella gerarchia, si verifica l'effetto leva. Quindi, in realtà, sei pagato per il valore che porti. Ma i programmatori brillanti che sono 10 volte più produttivi dovrebbero essere pagati 10 volte di più, indipendentemente dalla loro posizione in quella gerarchia (di solito in fondo). Questo è quello che volevo evidenziare.


73
Che aneddoto meraviglioso.
Alan Pearce,

28
Hai ragione: lo stipendio dovrebbe essere relativo al valore. Spesso non è così. In alcune piccole società private in cui lo stipendio di tutti è tenuto segreto (e negoziato individualmente), solo il grande capo sa chi è pagato. E a volte in quei posti lo stipendio è relativo al valore e alcune persone di supervisione vengono pagate meno delle persone veramente intelligenti che svolgono il lavoro. Questo non succede spesso, ovviamente.
quick_now

16
Pierre, sembra il settore pubblico nel Regno Unito!
ozz,

10
Il dipendente avrebbe forse potuto proporre di lavorare come consulente esterno?
Thomas Stock

4
@Thomas: sì, ricordo che l'ho suggerito, ma non era molto interessato (paura di perdere la sua sicurezza, che è un'illusione l'IMHO), e questo non avrebbe risolto il problema di bilancio dell'ospedale.

84

Prendono più rischi rispetto ai programmatori. Devono prendere decisioni basate sulle informazioni che abbiamo loro fornito, e quindi affrontare le dure critiche degli stakeholder quando le loro aspettative non vengono soddisfatte. Parte del pacchetto retributivo compensa questo rischio.

Un altro fattore possono essere gli anni di esperienza necessari per preparare un project manager in grado di pianificare, stimare e mitigare correttamente. In un certo senso, un manager di progetto sfumato viene addestrato in caso di guasti, rendendolo un'abilità costosa da acquisire . Una volta raggiunto il livello di anzianità, un'azienda potrebbe non essere disposta a lasciar andare personale così prezioso.

Modificare:

Esistono più tipi di rischi rispetto a danni finanziari o fisici. Ad esempio, considerare il rischio di essere rimproverato dal gestore o dal cliente. Anche se non viene fatto alcun danno reale, è ancora abbastanza indesiderabile che adattiamo i nostri comportamenti al fine di evitare questo tipo di risultato. Tuttavia, i manager devono prendere sempre buone decisioni e devono bilanciare diversi tipi di rischi nell'interesse dell'azienda, non secondo le preferenze personali.


42
"Prendono più rischi di quanto non facciano i programmatori." Tipo cosa? Devo ancora vedere un project manager o qualsiasi manager che soffra di serie difficoltà a causa di una decisione sbagliata. (Nel settore del software, cioè.)
biziclop,

83
@ 9000 I cattivi project manager, d'altra parte, sono molto facili da trovare e comandano anche stipendi più alti.
biziclop,

10
Affrontare le dure critiche degli stakeholder non è in realtà un rischio economico e non merita molto di ricompensa extra, fa parte dell'essere ritenuti responsabili di una serie di decisioni sbagliate prese o di nascondere informazioni vere sullo stato di avanzamento del lavoro dalle parti interessate. Un programmatore si trova ad affrontare un rischio simile qualora venisse sorpreso a produrre codice non funzionante estremamente scadente mentre riportava "tutto verde". Nella maggior parte delle organizzazioni i PM non sono criticati per non aver consegnato ciò che è ritenuto impossibile.
Vlad Gudim,

18
Essere licenziati per aver preso la decisione sbagliata e andarsene con un pacchetto multi-milioni di dollari suona sicuramente orribile!
Wooble,

3
@biziclop: Per essere onesti, i programmatori cattivi tendono a rimanere come merda e riempiono le posizioni di rango senza difficoltà neanche per loro. E ce ne sono molti di più.
Matt Joiner,

80

La programmazione può essere più difficile per qualche misura, ma è anche più piacevole. Ti siedi lì e risolvi il bel rompicapo di programmazione mentre i manager affrontano tutti i tipi di schifezze tra i loro subordinati, i loro clienti, i loro capi e le parti interessate. Ecco perché così poche persone sane vogliono davvero essere manager, quindi devi compensare pagando di più.

La programmazione è più difficile, ma la gestione fa più schifo.

Un modo di pensare quale sia il valore di qualcuno per un'azienda è immaginare come sarebbe se quella persona lasciasse l'azienda. Di solito i manager risultano essere più preziosi in questo senso rispetto ai programmatori. James Gosling , il creatore di Java, ha recentemente lasciato Oracle. Si potrebbe pensare che sia una perdita enorme, ma indovina un po '? In realtà non importa. Difficilmente ha alcun effetto su Java o su Oracle. I cani abbaiano, ma la roulotte continua.

A proposito, penso (seriamente) che i pulitori e gli addetti alle pulizie dovrebbero essere pagati molto più dei programmatori. Pulire i rifiuti di altre persone è un lavoro che fa schifo ed è indispensabile.


12
@Joonas - ".... pensa che i bagnini e gli addetti alle pulizie dovrebbero essere pagati molto più dei programmatori" <- Dovrai spiegarmelo! WTF?
ozz,

27
È certamente vero che la pulizia è un lavoro duro fisicamente. Tuttavia, ci sono molte più persone che sono in grado di fare un lavoro decente come più pulito di quanto non ci siano programmatori decenti. Quindi il mercato apprezza i programmatori più bravi.
Péter Török,

13
@Mayank: No, sono solo un umile programmatore, che pensa che i programmatori in genere si
valutino

10
@jpartogi: i programmatori non hanno bisogno di sopportare la puzza e sforzare i muscoli per creare codice. È un lavoro comodo, come sappiamo.
Joonas Pulakka,

9
Sedersi di fronte a un sistema legacy con un design che si è evoluto in un disastro orribile e cercare di creare una patch rapida per la prossima versione senza rompere più codice è un compito programmatore scoraggiante ma comune che fa davvero schifo. Ci sono migliaia di manager felici e migliaia di miserabili programmatori. Quindi la tua risposta non spiega davvero la differenza nei guadagni.
Vlad Gudim,

71

Ridurre la gestione alla creazione di grafici e scrivere documentazione è come dire che la programmazione sta scrivendo.

A ciascuno il suo, ma per me la programmazione è molto più semplice della gestione delle persone.


5
Questo è un forum di programmazione, quindi la maggior parte delle persone qui troverà la programmazione più facile della gestione. Nel complesso, senza la propensione alla selezione, sospetto che la maggior parte delle persone riesca a gestire meglio di quanto possa programmare.
David Thornley,

15
Non sono d'accordo. I bravi manager sono pochi e lontani tra loro, proprio come i bravi programmatori.
Dima,

4
@ Woo4Moo dovresti considerare l'abilità di questa affermazione.
Yahel,

8
@ Woo4Moo in realtà se non riesci a pensare logicamente non puoi essere un buon programmatore. Ora ci sono parecchi programmatori disabili che usano Dragon Naturally parlando e tutti.
Tipo anonimo il

2
Trovo difficile credere che i bravi manager siano più difficili da trovare dei bravi programmatori. Ho lavorato con centinaia di programmatori e mi sono imbattuto in 3 o 4 che giudicherò buoni, eppure riesco a pensare a dozzine di buoni manager con cui ho lavorato.
Dunk il

36

Tutti qui sono concentrati sugli aspetti negativi. Non ho mai incontrato un programmatore a cui piacciono le politiche d'ufficio e buoni manager ti proteggono da quel tipo di immondizia. Avendo interagito con molte persone presso il nostro cliente principale, metà di loro sono pazzi e sono felice di avere il mio PM lì per assorbire quella follia per me. Se li pagano molto, va bene. Ne ha bisogno per l'inevitabile terapia.


Non devi amare la politica dell'ufficio per poter giocare in modo efficace.
Wayne Koorts,

4
Lo so, ma preferisco che qualcun altro faccia il gioco in modo da poter scrivere il codice.
MattC

1
Mi piace giocare, ma non con altre persone.
Tipo anonimo il

3
La cosa più difficile dell'essere un BA è dare un senso ai requisiti contraddittori. Ogni stakeholder ha un'idea diversa di ciò che è richiesto. Quindi i grandi capi sono i più deliranti e pazzi. Estrarre i requisiti che i programmatori possono soddisfare e produrre qualcosa di utile è sufficiente per spingere il BA a bere e costosi prodotti farmaceutici ricreativi.
CyberFonic,

8
Sì, ma i cattivi manager spingono la politica dell'ufficio dal cliente direttamente allo sviluppatore, il che in qualche modo nega il punto.
sevenseacat,

20

Ovviamente è discutibile, ma una ragione significativa alla base di ciò è che portano la responsabilità del progetto se fallisce, non i programmatori. Potrebbero darti un guadagno per aver sollevato qualcosa, ma affrontano critiche da poteri ancora più elevati. Sono i responsabili della pianificazione e della stima .

La gestione richiede un set di competenze molto sfaccettato : abilità delle persone, leadership, capacità di stimare costi e tempi. Per fare tutto ciò, devono anche essere ancora in contatto con il tuo lato delle cose (cioè avere qualche idea di ciò che stai facendo, tecnicamente parlando) o essere degli ottimi giudici di carattere.

Se i requisiti non sono stati definiti correttamente, è colpa loro.

Se i piani di test non sono stati definiti correttamente, è colpa loro.

Se vai in vacanza o ti rompi una gamba o sei sprecato il sabato sera o parti senza dare abbastanza preavviso e devono trovare un sostituto o <qualche motivo qui> e non riesci a fare il tuo lavoro e il prodotto non ottiene consegnato (in tempo o per niente), è ancora colpa loro .

Nota anche che quando intendo che assumono la responsabilità, ciò influisce sulle persone sopra e sotto di loro . Se rovinano le cose, potrebbero essere i lavori della tua squadra che sono in linea. Questo è anche il tipo di pressione per cui sei pagato.

PS: Inoltre, non so se direi che programmare è più difficile che fare grafici di Gantt (per riutilizzare l'esempio che menzioni). Non ti conosco, ma trovo che la programmazione (in generale, per l'80% delle cose che devi fare nel settore) sia abbastanza semplice. Se rovini qualcosa, puoi sistemarlo. Se il tuo capo rovina il diagramma di Gantt o la sua stima dei costi, ora questo sarà un problema molto più grande che invertire un != nullper a == null. Piccoli errori contano su una scala più ampia per loro. Il più delle volte, ovviamente, se hai fallito un test come questo in un'applicazione medica integrata che è andata in onda, anche questo è un grosso problema. Ma avranno più problemi di te!


Potrebbero avere la maggior parte delle responsabilità (la maggior parte, non tutte), ma non porteranno la maggior parte della colpa.
sevenseacat,

@Karpie: Naturalmente i programmatori potrebbero essere ritenuti responsabili per gli svantaggi, ma i manager avranno la maggior parte della colpa. Forse non nel tuo sì, ma per i vertici dell'azienda (o dei suoi stakeholder), i programmatori non sono da biasimare. Sono le persone che li gestiscono che sono. Certo, capisco il tuo punto di vista (e della persona che dice che "i salari sono legati alla posizione nella gerarchia"), e ci sono alcune aziende che si allontanano con gli idioti che gestiscono squadre e danno la colpa ad altri. Non è come dovrebbe essere, e nella mia esperienza non è il caso generale.
Haylem,

@Karpie: E so che agli occhi di alcune persone potrei essere il difensore del diavolo qui, ma mentre vorrei che quel salario ricompensasse il valore aggiunto portato da una persona a un'azienda, non so che molte aziende che avrebbero essere in grado di funzionare solo con programmatori. Alcuni membri del personale apportano un valore indiretto ed è più difficile da quantificare. Ed è spesso fin troppo facile considerare che stanno semplicemente in giro a non fare nulla, puntare le dita e giocare un gioco di colpa quando potrebbero essere molto più sotto pressione di quanto si pensi.
Haylem,

19

L'offerta e la domanda sono un modello economico di determinazione dei prezzi in un mercato. Conclude che in un mercato competitivo, il prezzo unitario per un particolare bene varierà fino a quando non si stabilizza in un punto in cui la quantità richiesta dai consumatori (al prezzo corrente) sarà uguale alla quantità fornita dai produttori (al prezzo corrente), risultando in un equilibrio economico di prezzo e quantità. Le quattro leggi di base della domanda e dell'offerta sono:

  • Se la domanda aumenta e l'offerta rimane invariata, allora prezzo e quantità di equilibrio più elevati.
  • Se la domanda diminuisce e l'offerta rimane invariata, abbassare il prezzo e la quantità di equilibrio.
  • Se l'offerta aumenta e la domanda rimane invariata, abbassare il prezzo di equilibrio e aumentare la quantità.
  • Se l'offerta diminuisce e la domanda rimane invariata, prezzi più alti e quantità inferiori.

In questo caso, uno dei motivi è che ci sono troppi sviluppatori.


3
Ci sono molti sviluppatori di basso livello, ma programmatori competenti sono aghi nel pagliaio
Foo Bah,

10
Questa è certamente la teoria di come gli stipendi dovrebbero funzionare in un'economia di mercato. Il tuo stipendio non è determinato dal valore che porti alla società, ma dal costo marginale della sostituzione. Il problema è che non ci sono mercati veramente liberi. Il nepotismo, il clientelismo, la ricerca di rendita e l'asimmetria della conoscenza sono endemici. In teoria, le organizzazioni che cadono in queste inefficienze dovrebbero essere messe fuori commercio da quelle che non lo fanno, ma quando quasi tutti lo fanno ...
Charles E. Grant,

4
O forse - è difficile determinare la qualità di un programmatore, e quindi il mercato sembra allagato, ma la maggior parte del lato dell'offerta è in realtà inadatta. Questo spiegherebbe un sacco di codice che ho visto ...
Alex Feinman,

Questa è la vera risposta, nonostante tutte le belle risposte sopra.
Nick Hodges,

1
Si noti che il mercato non è simmetrico. Un datore di lavoro può scegliere tra migliaia di programmatori. Un programmatore può scegliere tra diversi datori di lavoro. Le perdite di un datore di lavoro a causa di un programmatore sono trascurabili rispetto alla capitalizzazione totale o ai ricavi di una società. Le perdite di un programmatore sono enormi - di solito ci vogliono diversi mesi per cambiare lavoro, quindi è come la percentuale o diverse percentuali dell'unica risorsa del programmatore - la sua vita. Vedete che i manager hanno più potere qui poiché sono in grado di rendere la loro sostituzione più costosa.
Anton Nazarov,

17

Durante la mia carriera ho spostato i ruoli da sviluppatore a PM. Nel mio progetto ho sviluppatori che realizzano il doppio di me e altri che ne guadagnano la metà. Gli alti salari vengono pagati per quello che sono perché: A) Sono sviluppatori "rockstar". B) Interagiscono con i clienti, spiegano il prodotto in modo che i clienti possano capirlo facilmente e sono gradevoli. C) Dirigono team di sviluppatori che lavorano su più progetti. D) Sono sempre disponibili e desiderosi di piacere.

Eseguono i ruoli di uno sviluppatore, PM e BA in diverse capacità. In generale, se stai spendendo il 90% del tuo tempo a testa bassa, tagliando il codice non sei incredibilmente prezioso e probabilmente sono facilmente sostituibili. Se vuoi fare più soldi, allora devi assumerti più responsabilità ... e probabilmente devi trovare un'altra società che ti pagherà di più.


11

La logica è che l'area di responsabilità di un project manager (spesso) è consegnare l'intero progetto in tempo, con una qualità accettabile, entro un budget pianificato. Spesso ci sono molti soldi in palio, quindi i bravi project manager spesso hanno un compenso maggiore rispetto ai programmatori.

Tuttavia, non credo che gli analisti aziendali guadagnino in media uno stipendio significativamente più alto rispetto ai programmatori. Ed ho la sensazione che stia diventando meno comune che il livello salariale in un'azienda sia determinato dalla gerarchia e non dal valore di un dipendente.


penso che la ragione sia che molti BA sono promossi da programmatori comuni. In molte aziende la promozione non significa più soldi.
IAdapter,

10

La mia esperienza potrebbe essere diversa (o sto vivendo in un universo diverso con le leggi della fisica distorte), ma la maggior parte degli analisti di business e project manager (non programma manager, ma project manager o PMP) le posizioni che ho visto sono a o leggermente sotto lo stipendio medio dei programmatori.

Il divario salariale inizia ad aumentare di più rispetto allo stipendio medio degli ingegneri del software (a favore dell'ingegnere del software). Il divario è ancora maggiore se confrontato con EE senior o ingegneri software senior. Quasi nessun analista aziendale senior o PMP senior farà lo stesso di un EE senior o un ingegnere software senior / principale.

Un manager di programma, tuttavia (che non è lo stesso di un PMP), quella persona renderà molto più di chiunque altro (e le ragioni dovrebbero essere ovvie).


La cosa che mi infastidisce di più quando vedo queste lamentele sugli stipendi è che come programmatori (specialmente come programmatori junior / entry level nell'impresa), siamo (o non eravamo) così speciali. Non c'è davvero nulla in un programmatore entry level appena uscito da scuola che meriti uno stipendio da scienziato missilistico. No .

Tutti noi che lavoriamo sul software sono partiti da zero. Lo abbiamo fatto tutti.

E SE siamo davvero onesti, sappiamo bene che non conoscevamo la merda. Essere in grado di completare il nostro corso di laurea CS carico è solo il punto di partenza. Non ci rende così speciali o ZOMG !!!! uber-Einstenian. Veramente no!

Eppure (e grazie al periodo sfortunato della bolla delle dot-com), ci aspettiamo di fare non solo di più, ma molto di più di un'altra persona istruita solo perché OH WOW, siamo programmatori e sono solo affari analisti e PMP.

Sai sillabare l'arroganza? Newsflash: per la maggior parte delle attività di programmazione in azienda, non è nemmeno necessario un diploma di 4 anni. Davvero, è così serio.

Dedica il tuo tempo e costruisci l'esperienza per passare dalla programmazione all'ingegneria del software (o ingegneria per quella materia) a livello senior. Poi si può pretendere di fare molto, molto, pero mucho mucho molto più di un analista di business e PMP.

Fallo finita: alcuni di noi sono (o erano) pagati in eccesso. Periodo.


A parte: ragioni per un analista aziendale e / o PMP per rendere gli stipendi vicini o simili ai programmatori che non hanno ancora accumulato il tempo e le competenze necessarie per essere ingegneri del software di livello medio / senior (o che non hanno ancora sviluppato competenze in una nicchia molto richiesta la zona):

Un analista aziendale è il collegamento tra gente del software e dei sistemi e persone d'affari / processi aziendali (che sono quelli che giustificano l'esistenza della busta paga, non viceversa). Sono i responsabili della suddivisione dei processi aziendali in modo metodico, maniere analitiche, come input suscettibili di formare requisiti, le cose su cui lavori. Si assicurano che passi la maggior parte del tuo tempo a programmare e a non occuparti della minuzia degli affari.

Molti di voi pensano che gli affari siano una merda facile. Se pensi davvero che sia vero, Dio ti aiuti.

Un project manager è la persona incaricata di destreggiarsi tra più progetti (mentre devi solo destreggiarti con uno o due al massimo in un dato momento.) È il tuo ombrello ed è quello che deve fare il lavoro sporco per lo più le masse rimanenti non lavate non vogliono fare - per inseguire le persone assicurandosi che facciano il loro lavoro o rimuovendo gli impedimenti al tuo lavoro.

È quello che ti chiederà "a cosa stai lavorando? È quello che stai lavorando per aiutare a spostare il progetto? Hai problemi con il tuo lavoro? Quali sono i tuoi ostacoli, di cosa hai bisogno? Chi può dartelo? " ...

e poi andrà dagli altri a fare le stesse domande difficili, assicurandosi che gli ostacoli vengano rimossi e assicurandosi che stia tirando il peso sul progetto (se necessario).

Il problema numero uno che ho visto in molti progetti falliti è la mancanza di PMP o la mancanza di rispetto nei confronti dei PMP (specialmente da parte degli sviluppatori). È raro che io veda i progetti fallire a causa di PMP incompetenti, e tuttavia ci si deve chiedere perché molti programmatori sono più che ansiosi di dire che è il caso.


Solo che i programmatori non richiedono grandi stipendi solo perché siamo speciali (non più di chiunque altro), ma perché possiamo ottenerli. Non è un vero talento comune e c'è molta richiesta.
David Thornley,

@ David - anzi, non è un talento comune ... nemmeno tra i programmatori. E questo è il mio punto. Abbiamo una sovrabbondanza di programmatori nell'impresa (grazie alle università dot-com e java / .net). E molto lavoro di programmazione sull'impresa non è abbastanza sofisticato da richiedere stipendi per missili scientifici. L'offerta e la domanda combinate a requisiti più semplici (e il fatto che non abbiamo ancora migliorato sostanzialmente i nostri modi di scrivere software) ci dice quindi che molti di noi sono così speciali (dal momento che molti non hanno o hanno ancora sviluppato quel raro talento), e sono, ergo, pagati in eccesso.
luis.espinal,

3
@ luis.espinal: la maggior parte delle persone richiede la paga più alta che può ottenere. La domanda non è se hanno un diritto morale ad esso (qualcuno ha un diritto morale di essere pagato più di chiunque altro?), Ma se il mercato è tale da poterli ottenere.
David Thornley,

1
il tuo post è troppo lungo ho smesso di leggere dopo la prima pagina.
Tipo anonimo il

2
@ Anonimo: proverò a smorzare la prossima volta.
luis.espinal,

9

Sono in finanza e penso che la mentalità sia simile nella maggior parte degli abiti non tecnologici:

La retribuzione è proporzionale al rischio professionale

Escludendo un licenziamento completo di un gruppo o di una squadra, i programmatori di basso livello mantengono sempre il loro posto di lavoro. È la natura del lavoro e i programmatori lo affrontano sapendo benissimo che non corrono rischi. Se c'è un bug, non sono le loro teste sul tagliere.

Ai livelli più alti, se qualcosa va storto, sei il primo ad andare. Ho avuto molte esperienze con un subordinato che ha commesso un piccolo errore tipografico che ci ha portato a perdere denaro e ho preso il sopravvento (non il vero programmatore che ha commesso l'errore).

Molto semplicemente, la retribuzione è commisurata al rischio. I programmatori, d'altra parte, non hanno necessariamente alcuna skin nel gioco, per così dire.


5

Se la tua domanda fosse "perché X e Y ottengono salari più alti rispetto ai programmatori della mia azienda " Potrei aver risposto "potresti lavorare in un'azienda sbagliata".

Il successo di un'azienda nel settore del software dipende più dalle capacità dei suoi programmatori che da chiunque altro. Le aziende che non lo riconoscono sono automaticamente in svantaggio rispetto a quelle che lo ottengono. Assumere i migliori programmatori e prendersi cura di loro è la soluzione migliore. La differenza nel lavoro dei grandi programmatori rispetto al resto è enorme; molto più grande della differenza di stipendio che comandano. Ma se insisti per pagare meno i tuoi programmatori, otterrai ciò per cui paghi.

Detto questo, ogni altro ruolo nel business è importante. I grandi manager hanno un impatto enorme. Molto di questo è ottenere grandi programmatori e renderli felici. Qualcosa di simile si può dire sull'analisi aziendale, marketing, vendite, test e supporto.

Se sei un grande programmatore e non sei ricompensato profumatamente, vai altrove. Inoltre, potresti non essere un grande programmatore. Sfortunatamente, se non sei eccezionale, è difficile capire perché. Se sapessi perché, potresti cambiare ed essere eccezionale, giusto?

Sono stato programmatore e sono stato manager di persone. Ho lavorato con molti programmatori fantastici, ma solo pochi grandi manager. Quando ero un manager non ero eccezionale, ma almeno lo sapevo. La mia gente ha ottenuto più rilanci di me, che meritavano.


5

Ha poco a che fare con le competenze e il lavoro, intendo che poco nell'economia è legato a quanto le persone meritano di fare.

Meritare di fare più soldi è un'idea effimera, tutti credono di meritare di fare più soldi.

Anche se potrebbe non essere giusto, i gestori guadagnano di più semplicemente perché i proprietari delle aziende si fidano di più di loro. I manager ottengono spesso stipendi più alti, semplicemente per evitare che un nuovo lavoro diventi improvvisamente in un momento inopportuno.


4

Penso che tutta la tua base per questa domanda sia difettosa.

La gestione deve essere pagata più dei loro subordinati. L'anzianità in un'azienda si basa generalmente sullo stipendio e non c'è modo che un dipendente junior possa avere i mezzi per comandare i propri anziani.

Dirigere le persone è un'abilità specialistica. Non tutti possono essere project manager (PM). Il compito è sempre più difficile all'aumentare del numero del personale. In un ruolo di PM tecnico, il PM deve avere una buona conoscenza della tecnologia per guidare efficacemente, altrimenti non avrà il rispetto e il supporto dei propri subordinati.


6
Penso che il punto dell'OP sia che non solo i manager veramente qualificati e buoni ottengano una retribuzione più elevata rispetto ai loro subordinati, ma (quasi) tutti loro, anche quelli davvero inabili.
Péter Török,

1
Un altro problema: la gestione è un'abilità popolare. Non penso che un buon PM sia davvero necessario per essere molto esperto di tecnologia al fine di avere il rispetto e il supporto dei membri del suo team (né penso che questi membri del team dovrebbero essere realmente subordinati al PM). Concordo pienamente con Peopleware in merito al fatto che un buon manager lavora per rimuovere tutti gli ostacoli davanti alla squadra, e quindi lascia che faccia il loro lavoro.
Péter Török,

11
La gestione deve essere pagata più dei loro subordinati. Non necessariamente. E sicuramente non voglio lavorare in un'azienda con questa regola "indispensabile".
Nikita Barsukov,

1
Non ho mai trovato o sentito parlare di una società o organizzazione in cui non era il caso. Sebbene sia vero, la mia esperienza è in due settori molto vecchi (bancario e governativo).
TZHX,

4
@tzhx: ho lavorato per un paio di aziende serie in cui i miei manager erano pagati tanto quanto me e meno di alcuni dei miei colleghi che erano specialisti migliori di me. No, questo non ha disturbato nessuno di noi, né ci ha fatto considerare i manager come inferiori. Ognuno di noi stava facendo il proprio lavoro, rispettando quello degli altri - i nostri dirigenti hanno svolto un lavoro evidentemente sensato. Lo spirito di squadra dovrebbe superare la gerarchia, imho.
9000

4

In molte professioni, un'abilità principale è la capacità di vendere qualcosa. E per vendere qualcosa lo farà, devi vendere te stesso. Hai bisogno che l'acquirente si fidi di te e apprezzi il prodotto o il servizio che fornisci tanto quanto intendi che sia. Questa abilità è completamente trasferibile alle trattative salariali.


4

Ho esaminato tutti i post e oso dire che la maggior parte di loro sta cercando di confrontare mele e banane.

Innanzi tutto, credo che qualcuno che afferma che "gestire è un gioco da ragazzi" non abbia mai dovuto gestire qualcosa di più del proprio programma. D'altra parte, dire che "chiunque può codificare qualsiasi cosa" è sciocco (ed è nel forum sbagliato, per l'amor di Dio!).

Mi sono piaciute in particolare le domande su rwong e luis.espinal, anche se credo che ci siano anche altri fatti che devono essere notati.

Non credo che la gerarchia sia una risposta - non al giorno d'oggi - anche se si adatta perfettamente agli ultimi 10.000 anni. Abbiamo vissuto per secoli in una società in cui maggiori sono i tuoi profitti, maggiore è il tuo potere (e viceversa). Non credo che si applichi al nostro mondo, così com'è (specialmente nella nostra zona).

Ritornando alla domanda principale, credo che i manager di solito guadagnino di più perché sono più preziosi per un'azienda non perché è più alto nella gerarchia, ma è più alto a causa di

  • tutte le conoscenze che ha già acquisito da esperienze precedenti (di solito i programmatori hanno meno esperienza dei manager in generale)
  • per essere in grado di gestire più cose contemporaneamente (i programmatori hanno un compito - o un elenco di compiti - da compiere, mentre i manager devono gestire i propri compiti
  • sono il contatto principale per il progetto che gestiscono e per questo motivo sono il primo "obiettivo" nel caso in cui qualcosa vada storto. È più facile perdere il lavoro se sei un manager; essendo uno sviluppatore, hai la "licenza per ripetere qualcosa". Questo è il fattore "rischio" menzionato da tutti.
  • gli sviluppatori fanno parte di un intero ciclo di vita del progetto. Credo che quando parliamo qui di "programmatori" pensiamo anche ai tester, agli scrittori tecnici e a tutte le altre persone che sono estremamente importanti per il successo del progetto.
  • e c'è qualcosa che ho visto solo in un paio di post su questo argomento: la leadership. Essere un manager sta per sapere come essere in contatto con le persone, per negoziare, per mantenere tutti motivati, per creare sinergie quando l'umore di tutti è giù.

A mio avviso, il fattore di leadership è il motivo principale per gli stipendi più alti, perché genera un enorme risultato a lungo termine per l'azienda e per tutti coloro che sono intorno al leader.

A proposito, ho avuto solo poche esperienze come team leader (lungi dall'essere un capo progetto!) E tanto so cosa fa un leader, tanto lavoro mi rendo conto di dover fare.

Modifica: ho dimenticato di evidenziare: le abilità comunicative non sono un punto di forza per la maggior parte di noi, ma è un must per un leader. Inoltre, vorrei condividere un ottimo post su Coding Horror, relativo a buoni programmatori e abilità comunicative -> http://www.codinghorror.com/blog/2011/02/how-to-write-without-writing .html


3

Pensaci in questo modo, il numero di gestori qualificati è inferiore al numero di programmatori qualificati, quindi i gestori sono più "preziosi" per le aziende.


Esattamente. Il prezzo del lavoro non è immune alla legge della domanda e dell'offerta.
Nick Hodges,

Tranne che ci sono molti più gestori qualificati rispetto agli sviluppatori qualificati che invalida l'argomento.
Dunk il

3

Dipende da come si definisce la 'difficoltà'. Tuttavia, mi chiedo se tu sappia di cosa tratta il Project Management e cosa dovrebbero fare gli analisti aziendali. Ho letto molta frustrazione dalla tua domanda, quindi penso che tu abbia avuto delle brutte esperienze. Tuttavia, voglio provare a rispondere alla tua domanda.

I project manager e gli analisti aziendali sono generalmente "più anziani" quando soddisfano tali posizioni. Laddove gli sviluppatori iniziano la loro carriera molto giovani (intorno ai 20 anni), la maggior parte dei project manager e analisti ha quasi 30 anni (il che crea già una differenza di pagamento solo per l'età). Sono anche quelli che devono affrontare l'esposizione dei clienti, il che significa che devono viaggiare in loco, trascorrere ore di tortura per ascoltare il cliente (soprattutto quando un progetto va storto) e arruolare i loro desideri / bisogni. Devono stare attenti a ciò che promettono e soprattutto in quale ambito (tempi di consegna). Anche se dal tuo punto di vista ciò che fanno è solo documentare, gli analisti aziendali sono istruiti per analizzare le esigenze del business e i project manager sorvegliano la pianificazione dei progetti.

Agiscono come un firewall tra il cliente e gli sviluppatori. Una prospettiva tecnica è qualcosa di diverso rispetto a una prospettiva di vendita. La maggior parte degli analisti aziendali e dei project manager si trova anche di fronte a una grande varietà di clienti: sono esposti e quindi hanno "contatti". La loro rete è composta da decisori e pertanto le aziende preferiscono tenere a portata di mano le persone con tali reti; dopo tutto una vendita è una vendita.

Per quanto riguarda la difficoltà? Avviare un'azienda, avere dieci sviluppatori e provare a gestire un progetto. Il mal di testa lo accompagna gratuitamente. Fallo per un anno e poi guarda di nuovo la tua risposta. Per BA? Scegli una tale opportunità. Siediti con i clienti che hanno una macchina AIX dal 1974 e il progettista di quel sistema è morto / ritirato / morente / alzeheiming e lo sviluppatore deve sapere se viene generato un certo valore o ha una formula mistica. Cerca di convincere 20 persone con un powerpoint sulla tua soluzione entro 3 giorni. Se documentare fosse "facile", Linux avrebbe già lanciato il mondo nel 1997. Davvero, prova a scrivere un white paper tecnico ogni mese per persone non tecniche (quelle che pensano che Facebook sia una rivoluzione nel campo dell'informatica).

Sono un ingegnere di vendita. Il che significa che sviluppo, ma la mia specializzazione è per prototipi e dimostrazioni. E guadagno più di un analista aziendale o di un project manager. Non perché ho una rete (lo faccio, però), ma perché ho lasciato l'atteggiamento e mi sono concentrato maggiormente sulla prospettiva aziendale, mi sono certificato e mi sono insegnato alcune competenze trasversali. E l'esperienza di apprendere che il "no" è anche una risposta, quando si tratta di straordinari.


Tutta la tua risposta è difettosa. I programmatori che hanno la stessa età di BA e PM otterrebbero comunque meno.
Joshua Partogi,

Una cameriera affronta anche i clienti e ottiene un sacco di schifezze in faccia, ma è lo chef che si sporca le mani e fa ciò che il cliente desidera che otterrà di più alla fine della giornata.
Joshua Partogi,

2
Ora dire che la mia intera risposta è imperfetta, in sostanza sta dicendo alla gente che la tua opinione ed esperienza è l'unica che è verità / fatto. Sto sottolineando che il tuo "fatto" non è sempre la verità, poiché sto sperimentando altre cose.
Shyam,

3

Risposta semplice: sono più preziosi per l'azienda dei programmatori.

Perché? Perché assicurano che i progetti vengano completati, anche se non eseguono la programmazione da soli. Ciò significa che il loro valore (puramente in termini monetari per l'azienda) è più di un singolo programmatore. La società non crede che i programmatori non gestiti siano produttivi e quindi preziosi ... È solo il manager che li rende così.

Fa schifo, e potrebbe non piacerci, ma è per questo che l'azienda li paga di più.

La loro posizione (come altri hanno sottolineato) presenta però degli svantaggi: se non riescono a completare un progetto entro un certo tempo, è colpa loro, non dei programmatori. Si assumono maggiori responsabilità e sono altamente suscettibili di essere licenziati per fallimento (a meno che non ci sia del nepotismo della società BS in corso).

Quindi, in realtà, non sono autorizzati a fare errori, a esercitare più pressioni su di loro e ad avere un lavoro molto più instabile ... ma non confondersi: non è per questo che vengono pagati di più : un'azienda non dà al culo di un topo quanta pressione sei, quanto è instabile la tua posizione, niente del genere. A loro importa solo quale valore porti alla compagnia. Periodo.

Questo è capitalismo, gente.


2

Non so quante volte la conoscenza del diagramma di Gantt debba essere aggiornata in un anno. Ma facendo programmazione devi aggiornarti con nuove tecnologie che non saranno così facili con la tua età.

Imparare una nuova tecnologia ha bisogno di ore di sudore, che se sei abbastanza intelligente da assorbire.

Le competenze acquisite negli anni facendo programmazione non sono molto apprezzate nell'attuale cultura aziendale.

Confrontare lo stipendio dei programmatori neolaureati con uno con oltre 10 anni di esperienza è una storia un po 'triste.

Confrontare un nuovo PM con un PM di 10 anni è una grande storia, il PM potrebbe diventare direttore dopo 10 anni di esperienza.

Allora perché sono ancora così tante le persone che vogliono imparare l'IT all'università? Non capisco. Sono stati adeguatamente informati?

Non capisco come le persone apprezzino l'abilità al giorno d'oggi.



2

La direzione non guadagna sempre di più del personale tecnico. Il personale tecnico di alto livello dovrebbe essere attivamente coinvolto nell'analisi a livello aziendale, nel processo decisionale e nella definizione della tabella di marcia tecnica per l'azienda. In questo caso, il personale tecnico senior può fare molto di più rispetto ai manager aziendali con cui lavora ogni giorno.

Uno dei miti popolari del business è che il manager dovrebbe essere pagato più delle persone che gestisce. IMO, trovi questa idea più profondamente radicata nelle burocrazie che in squadre funzionali e agili.

Per dirla in altro modo: la compensazione dovrebbe riflettere il valore del contributo di una persona all'azienda. Ci sono manager aziendali stellari e manager medi, e ci sono ingegneri stellari e ingegneri medi. Se hai un ingegnere stellare che sviluppa la tecnologia per fare soldi e ha una profonda conoscenza delle tecnologie dell'azienda, non è nel migliore interesse dell'azienda compensare questa persona in modo più aggressivo di un normale dirigente aziendale che gestisce questo ingegnere stellare? Qual è il costo opportunità di perdere quell'esperienza ingegneristica e set di abilità perché hai trascurato questa preziosa risorsa?


"la compensazione dovrebbe riflettere il valore del contributo di una persona all'azienda". Questo definisce il limite superiore del possibile stipendio. Per quanto riguarda il limite inferiore, penso che la spiegazione in programmers.stackexchange.com/questions/45776//45963#45963 sia davvero eccezionale, così come quella in programmers.stackexchange.com/questions/45776//45879#45879 .
Suma,

2

Ho iniziato un mese fa con il mio primo progetto come PM. Prima ho lavorato come programmatore. (a proposito, ho gli stessi soldi di prima.)

Ho scoperto che essere un buon PM significa essere un buon programmatore con una vasta esperienza. Dovresti essere in grado di passare da un membro del team a un altro e discutere dei problemi che hanno usando la tua esperienza pratica per aiutarli a capire i problemi fornendo un diverso punto di vista. Il tuo compito è, oltre ad altri, gestire le interfacce. Un PM è come un direttore d'orchestra. Puoi avere i migliori musicisti ma se non hai un buon direttore che sa suonare bene l'orchestra dei meta-strumenti, avrai solo un casino.

La controparte è lo specialista. Questo è il programmatore che è in grado di risolvere problemi difficili perché ha una profonda conoscenza del dominio del problema. Queste persone con esperienza spesso pagano molto anche se sono abbastanza brave nelle negoziazioni. Purtroppo gli specialisti sono spesso secchioni e non sono così interessati ai soldi o bravi a fare un buon affare ...


1

I programmatori non attribuiscono lo stipendio alla massima priorità (supponendo che sia a un tasso ragionevole). Immagina due offerte di lavoro in cui uno ha uno stipendio più elevato, impegno nello stesso momento, ma richiede supporto tecnico, orari di lavoro rigorosi, codice di abbigliamento, scrittura della documentazione per l'utente, gestione del codice legacy in una lingua antiquata che speravi non dovessi mai più usare, come molto più stipendio avresti bisogno?


1

Se lavori per un'azienda che rispetta la programmazione, la matematica, la risoluzione dei problemi, qualunque sia la tua competenza, potresti guadagnare di più per due cose:

  • Fare lavori più difficili
  • Assumersi più responsabilità

Solo perché un ospedale non paga molto il proprio DBA qualificato (vedi l'esempio nella prima risposta) non significa che questo sia lo stesso in ogni azienda.


-1: un ospedale non paga molto un DBA qualificato? Dimmi quale quindi so di non andare. Non voglio che le cartelle cliniche della mia famiglia siano compromesse o perse.
Jim G.

1

Va bene sono leggermente sorpreso dalle risposte, quindi eccolo qui. Ma prima, vorrei solo chiarire che sono un programmatore e non c'è niente che mi piace di più della programmazione. Detto questo, ho un salutare rispetto e rispetto per i PM e le BA competenti . Mi rendo conto che molti di noi risentono dei PM e dei BA perché a differenza della programmazione è possibile eccellere in essi senza il livello richiesto di competenza (politica dell'ufficio, bei semi, ecc.).

Tuttavia, sia la gestione del progetto che l'analisi aziendale sono componenti fondamentali dello sviluppo del software.

Ogni volta che pensiamo allo sviluppo del software molti di noi hanno la tendenza a concentrarsi solo sulla programmazione per escludere tutto il resto. Eppure c'è di più oltre alla programmazione.

Primo obiettivo dello sviluppo, che è quello di creare un software che risolva e risolva effettivamente i problemi dei clienti. Ciò implica prima di tutto effettivamente capire i requisiti del cliente (poiché il cliente potrebbe non essere veramente sicuro di ciò che vuole), ciò è possibile solo attraverso un'analisi dettagliata del dominio in cui opera il cliente e la struttura dei vari artefatti (siano essi persone, infrastrutture tecniche o processo) e successivamente sviluppare una soluzione aziendale adeguata (e la sua integrazione con la tecnologia) per soddisfare tali requisiti.

Allo stesso modo, qualsiasi progetto di dimensioni significative non può assolutamente funzionare senza una gestione efficace. Ora non so come sia in altri luoghi, ma finora la mia esperienza è stata che i PM di solito sono promossi da ranghi di programmatori, quindi hanno qualche idea su ciò che serve per organizzare ed eseguire il progetto.

Riassumendo sia le BA che i PM sono un livello di astrazione per lo sviluppo .


1

Molte persone hanno affermato qui che la programmazione è più difficile ed è per questo che dovrebbe guadagnare di più. Questa è una visione molto romantica. La verità è che in un'azienda normale e sana il pagamento è secondo la responsabilità , ciò significa il valore aggiunto di quella persona e anche il rischio .

Il rischio verrà spesso dimenticato. Normalmente se il programmatore fallisce nel suo lavoro difficile, ci potrebbero essere dei costi aumentati, ma niente di più. Non come il 10% dei lavoratori perderà il lavoro o qualcosa del genere. Il rischio è piuttosto basso.

Inoltre, non sono d'accordo con l'idea che la maggior parte degli uomini d'affari guadagna di più. Scommetto che il normale ragazzo d'affari guadagna meno della maggior parte della laurea in Scienze / Ingegneria guadagnerà. Per esempio, come un codificatore vacanza undergrad Ho guadagnato quasi la stessa di alcuni a tempo pieno roba affari lavoratori della stessa azienda.

E, ultimo ma non meno importante, perché il project manager non è un ingegnere? Normalmente il project manager è un ragazzo con molti anni in primo piano nell'argomento del progetto che gestisce, il che significa che nella programmazione dei lavori sarà un programmatore esperto che è il project manager.


1

Esistono ambienti aziendali in cui domina il modello di comando e controllo o il modello di comunicazione hub- speak. In queste organizzazioni, il manager e il capo comunicatore sono spesso la stessa persona. Questo rende il manager un unico punto di errore : vengono amplificati gli effetti lugubri di errori di comunicazione o smarrimento delle traduzioni. Quindi questi ambienti richiedono persone con un vasto background tecnico come manager per garantire l'accuratezza.

Squadre meglio organizzate di solito nominano un capo comunicatore per scaricare questa responsabilità. Le organizzazioni che praticano la gestione della conoscenza non hanno alcun singolo punto di errore nella comunicazione. In queste organizzazioni, i dirigenti e i principali comunicatori sollecitano informazioni e facilitano le discussioni. Queste informazioni verranno acquisite ed elaborate per la condivisione interna. È richiesto un diverso insieme di abilità sociali.

Allo stesso modo, gli analisti aziendali sono spesso il punto di contatto unico tra i clienti e il personale tecnico dell'azienda.


1

Questo non è sempre il caso. Quando lavoravo per Computer Sciences Corporation (CSC), la maggior parte dei manager guadagnava meno delle "persone che producevano qualcosa di utile". Nel caso di CSC, penso che sia stato così perché la società era stata avviata da un gruppo di programmatori.

All'epoca (1970) c'era un'altra società di software a Los Angeles, il cui nome dimentico con un programma salariale interessante. I programmatori sono stati pagati $ 25.000 / anno e il personale di supporto è stato pagato $ 15.000 / anno. L'idea era che se tu fossi il programmatore peggiore non dovresti essere sorpreso di essere sostituito.

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.