Ci sono ragioni diverse dal budget per l'assunzione di programmatori "entry-level"? [chiuso]


27

Ci sono ragioni diverse dal budget per assumere programmatori "entry-level"?


7
un giorno non eri un programmatore "entry-level"?
Andrey,

Vedo 2 alternative, ma probabilmente ce ne sono altre: 1) I programmatori senior soffrono della sindrome per cui gli anziani si avvicinano alla morte, quindi se quel giorno non vengono sostituiti da un programmatore entry level (aka code monkey) la professione sarebbe estinta. 2) Secondo lo scienziato, per gli sviluppatori senior aggiornare le proprie conoscenze e apprendere nuove tecnologie è molto più difficile che assumere semplicemente qualcuno con meno esperienza; dato che entrambe le alternative ottengono l'effetto desiderato di sentirsi superiori, quest'ultima alternativa è generalmente preferita.
Trinidad,

1
Ricordo di aver letto da qualche parte che Microsoft assume nuovi laureati perché sono liberi da ogni particolare mentalità - che hanno gli sviluppatori esperti. NOTA: Non ho assunto né assunto per MS né sono stato assunto da MS. Tutto quello che so è cosa leggere.

Perché se nessuno li assume, tu (io sono ancora a scuola) finirai rapidamente i programmatori. Quindi, prima o poi si deve
Blackbear

Dove vanno i vecchi? C'è solo un numero in costante aumento di posti di lavoro per sviluppatori? I programmatori di Soylent Green?
Armand,

Risposte:


92

Anche i grandi sviluppatori non avevano esperienza.

I grandi sviluppatori non sono solo costosi ma anche difficili da trovare. Quindi, se hai un processo di screening e assunzione di alta qualità, assumere sviluppatori entry-level può essere un ottimo modo per trovare quei promettenti e trasformarli in grandi sviluppatori .


23
+1 per una risposta positiva ... non si tratta solo di avere qualcuno che fa un lavoro grugnito, è un investimento.
HappyCodeMonkey

Non potrei essere più d'accordo
Brett Ryan

Alcune aziende per cui ho lavorato hanno programmi di reclutamento "junior dev" che impiegano un paio di mesi ad addestrarli tutti per assicurarsi che siano tutti sulla stessa pagina e che i padawan siano inseriti in vari team attorno all'azienda tra i più esperti colleghi in modo che possano assorbire la saggezza dell'esperienza e delle migliori pratiche.
JBR Wilkinson,

+1 è quello che ho deciso di fare. Tuttavia richiede molto più tempo ma ne vale davvero la pena (aspetto sociale)

1
Il posto che mi ha assunto fuori dall'università ha fatto la maggior parte del loro reclutamento da nuovi laureati perché volevano addestrarli nella propria cultura dell'organizzazione. Sentivano che assumere qualcuno con esperienza significava che dovevi sconfiggere le cattive abitudini.
Joel Brown

27

Ci sono molte altre ragioni:

  • Crescere il tuo talento. A volte è più facile assumere una persona di livello base e addestrarli nelle tecnologie e nelle attività richieste.
  • Ci vuole meno tempo per trovare una persona entry level rispetto a una persona Sr.
  • Rifornisci la tua forza lavoro. Poiché molti sviluppatori si trasferiscono in un'azienda, spesso non scrivono tanto codice. Qualcuno deve essere disponibile per colmare questa lacuna.
  • Risparmio di tempo. Anche se uno sviluppatore senior sta ancora scrivendo codice, è probabile che non abbia tempo di fare tutto. Devono delegare, quindi hanno bisogno di qualcuno a cui delegare.

Perché gli sviluppatori senior non scrivono codice? Stanno gestendo gli sviluppatori junior e stanno rivedendo il loro codice?
Armand

@Alison: dipende dalla struttura del team. A volte più sviluppatori senior sono più coinvolti nella progettazione, nell'architettura, nella pianificazione e più quelli più piccoli devono effettivamente implementare.
FrustratedWithFormsDesigner

3
@Alison, ho lavorato in team in cui ho lavorato così tanto per progettare funzionalità tecniche, stimare e comunicare ciò che era tecnicamente fattibile ai product manager che avevo poco tempo per programmare.
Nicole

1
@Alison - Gestione e progettazione, tra le altre cose. Ad esempio, attualmente sto lavorando a 3 progetti nella mia azienda attuale, ma sono attivo solo nella codifica per 1. Gli altri 2 Sto gestendo le persone che eseguono la codifica b / c Conosco il design e i requisiti, ma non Non ho tempo.
Tyanna

@Renesis ti sei divertito? Pensi che un non sviluppatore avrebbe potuto occupare in modo ragionevole questi ruoli?
Armand

13

Allena la prossima serie di sviluppatori nel modo che tu e i tuoi metodi permettete.


ma potresti assumere uno sviluppatore senior che già condivide questi valori, vero?
Armand

@Alison, molte risposte hanno già affermato che è difficile trovare sviluppatori senior di qualità nel mercato del lavoro. L'aggiunta di ulteriori vincoli minuscoli significa che cercherai di riempire quella posizione per molto tempo.
Ben L

11

Supponendo che "entry-level" significhi approssimativamente "nuovi laureati", possono esserci motivi sinistri.

Un nuovo laureato molto probabilmente NON saprà molto sui suoi diritti in virtù del fatto che non ha ancora lavorato da nessuna parte. A meno che suo zio non sia un avvocato o una persona delle risorse umane, non lo farà sicuramente.

Un programmatore esperto potrebbe conoscere i suoi diritti semplicemente perché ha attraversato alti e bassi in altre società.

È facile trovare scappatoie, ingannare, manipolare e imbrogliare nuovi laureati quando si tratta di complicati problemi legali e delle risorse umane. Non puoi farlo facilmente con un programmatore esperto che ha lavorato in alcune aziende. Perché, anche se non ha memorizzato tutte le leggi, saprà per esperienza su ciò che sta accadendo in altre società e si accorgerà immediatamente se qualcosa è sospetto.

In breve: un programmatore esperto è già caduto nella fossa (creata da precedenti datori di lavoro) e sa meglio che entrarne di nuovo. Un nuovo laureato non ha e non lo farà.

Alcune cose che i datori di lavoro astuti vogliono ingannare i nuovi laureati su:

  • Merda di tirocinio non retribuita
  • Tutto ciò che riguarda l'assunzione o il licenziamento
  • Risarcimento e bonus
  • Lavoro straordinario
  • Stupidi accordi di non divulgazione e contratti di servizio
  • Far rispettare gli stupidi accordi di non divulgazione e contratti di servizio

I neolaureati presumono che le cose dovrebbero essere così perché non conoscono meglio. Quindi lui / lei è un jackpot per il datore di lavoro.

NOTA BENE: conosco queste cose non perché le faccio, ma perché le persone me l'hanno fatto.


8

Perché assumeresti un programmatore senior se avessi solo bisogno di qualcuno per svolgere compiti di lavoro grugnito?

Personalmente, se fossi un programmatore senior a cui non mi veniva chiesto di fare altro che semplici compiti tutto il giorno.


5
Non ho lavorato in un team in cui gli sviluppatori intelligenti non potevano sottrarre il "lavoro grugnito" a quasi nulla.
Nicole

Non potresti assumere uno sviluppatore senior, automatizzare il lavoro grugnito e poi licenziarlo?
Armand

3
@Alison: normalmente assumeresti un appaltatore a breve termine per farlo (se possibile).
FrustratedWithFormsDesigner

6

A volte hai compiti che richiedono di fare ma che non richiedono l'ampiezza dell'esperienza che avrà un programmatore più esperto. Questi compiti sono spesso ripetitivi e non molto significativi come programmatore, ma sono utili per i nuovi assunti che si tagliano i denti da latte.

Ci sono anche considerazioni riguardanti le persone che possono essere insegnate. Spesso un programmatore esperto che non è abbastanza anziano, ma chiaramente non è un nuovo assunto, ha acquisito una certa esperienza, ma non è riuscito a perdere "So già tutto", "Perché dovrei cambiare", "Non mi piace imparare nuovi modi "atteggiamenti che non troverai prevalenti in un nuovo assunto.


Hmm ho il tuo secondo punto, ma sicuramente c'è un modo costruttivo di superare questa fase piuttosto che ricominciare da capo? Altrimenti il ​​mondo sarebbe pieno di programmatori di medio livello che non possono lavorare in nessun posto nuovo ...
Armand

@Alison - Come ho visto funzionare, queste posizioni noiose tengono le persone solo per circa un anno. Di solito la persona trova una nuova posizione con un po 'più di flessibilità all'interno della stessa azienda o passa a una nuova società usando l'ultima come trampolino di lancio.
Joel Etherton

6

Idee originali? le cose che insegnano all'università cambiano costantemente, potrebbe anche essere che il neolaureato che hai assunto abbia alcune idee che i tuoi programmatori esperti non prenderebbero in considerazione perché sono bloccati in un certo modo di pensare.

Altruismo, penso che qualsiasi azienda debba apprezzare il fatto che tutti iniziamo da qualche parte, e se non iniziamo non continuiamo a essere sviluppatori.

La manodopera a basso costo, non solo il fatto di avere un lavoro di reclutamento per ottenere un lavoro a buon mercato, può anche favorire i rapporti con le università locali e portare a un lavoro ancora più economico se non libero sotto forma di tirocini estivi (non sono d'accordo di non pagarli però).

Non pagare per uno scavatore quando tutto ciò che serve è una pala, se hai bisogno di una latrina scavata perché pagare migliaia per uno scavatore, quando puoi ottenere una pleb con una pala. Sicuramente la pleb con la pala potrebbe avanzare fino al punto di essere una scavatrice, ma fino a quel punto perché pagarla.

Anche gli sviluppatori esperti potrebbero annoiarsi con cose che considerano umili dove un laureato recente può imparare molto da esso.


6

Non so se sia più vero (ma era circa 10 anni fa) nel mondo dei contratti con il governo (probabilmente anche in altri settori) le società ricevono le cancellazioni fiscali per l'assunzione di nuovi laureati.


Bella risposta :-)
Armand

5
  • Abbiamo bisogno di qualcuno che faccia le cose sulla piastra, hanno bisogno di esperienza.
  • Possiamo insegnare loro buone abitudini e con alcuni tentativi ottenere un buon programmatore in pochi anni.

Evviva il codice del boilerplate!
Armand

5

La compagnia per cui lavoro assume "entry-level" per un motivo specifico. I suoi prodotti più maturi e redditizi sono stati sviluppati su un framework di terze parti di cui nessuno ha mai sentito parlare o altrimenti passerebbe il tempo ad imparare. La posizione è pubblicizzata come nessuna esperienza o laurea richiesta, poiché tutta la formazione sarà fornita internamente alle persone con il desiderio di apprendere. È anche una scusa per pagare stipendi pateticamente bassi e funziona dal momento che non c'è praticamente alcun rischio che questi nuovi programmatori portino le loro abilità acquisite da qualche altra parte.


4

Molte aziende vogliono qualcuno il cui stampo in grado di formare per fare le cose come vogliono, non nel modo in cui altre società hanno fatto le cose. Anche queste posizioni tendono a riconoscere che ci sarà una curva di apprendimento a causa della mancanza di esperienza e che la società è d'accordo. La società è essenzialmente fiduciosa che quella persona alla fine diventerà una risorsa davvero buona per la sua azienda nel tempo.


Quindi stanno giocando a lungo, sperando alla fine di avere un senior dev che può pagare di meno?
Armand

No ... se sono una buona compagnia all'aumentare delle capacità dell'impiegato, anche la loro retribuzione dovrebbe essere. Se sono una compagnia squallida che potrebbe essere esattamente quello che stanno facendo ...
Kenneth

Vorrei anche aggiungere che potrebbero sperare che trovandoli quando saranno freschi nel settore probabilmente saranno in grado di trattenerli per lunghi periodi di tempo e ridurre la necessità di sborsare i costi aggiuntivi per l'assunzione e la riqualificazione di altri dipendenti in un secondo momento ...
Kenneth

2
+1 in grado di modellare .. Sì .. è più facile insegnare a qualcuno che non sa molto che discutere con una persona esperta e farli cambiare.

4

Molte volte è più semplice disegnare su un foglio bianco che aggiornare uno schizzo esistente.

Nel software questo è generalmente chiamato sviluppo greenfield vs brownfield.


3

Se fatto bene, alla fine puoi trovare qualcuno che capisce meglio la tua attività ed è entusiasta.

In realtà devi assicurarti di avere una risorsa professionale che possa portare il nuovo arrivato sotto la loro ala. Finché ti trovi qualcuno che è entusiasta e proattivo riguardo al proprio sviluppo, brillerà. Se li trovi armeggiare con qualche idea, spingerlo e incoraggiarlo, sentiranno di poter dare un contributo.

Devi trattarli come un apprendista in una carrozzeria, farli fare lavori di merda, ma allo stesso tempo dare loro il loro tempo per sperimentare, è il modo migliore che ho trovato. Finisci per scoprire che vengono a lavorare il giorno dopo con qualcosa che hanno fatto a casa e sono entusiasta di dirti cosa hanno fatto.


3

Oltre ai motivi già menzionati, dovremmo notare che questo è uno schema intrinseco alla natura umana. Nel corso della storia possiamo vedere il lavoro specializzato organizzato in un certo modo, con i maestri che guidano un gruppo di apprendisti e un gruppo più piccolo di addetti ai lavori (artigiani di livello intermedio) per costruire insieme le cose.

Si apre ripetutamente, con nomi e dettagli diversi, ma generalmente lo stesso schema di base, perché funziona bene con il modo in cui i nostri cervelli sono collegati. Quindi non dovremmo essere sorpresi di vedere un'organizzazione simile nella programmazione informatica, che è un'altra forma di lavoro specializzato. Possiamo chiamare i maestri Architects, i giornalisti Senior Developers e gli apprendisti Junior Developers, ma lo schema è lo stesso.


2

Potresti desiderare programmatori di inesperienza in modo da poterli addestrare a fare a modo tuo. Questo presuppone:

  • Li addestrerai; e
  • Hai un modo migliore della media di fare le cose.

Potresti anche voler un programmatore inesperto, perché non hai bisogno di programmi che potrebbero sfidare o interessare un programmatore esperto. Inoltre, se hai programmatori esperti, potresti essere in grado di sfidarli facendoli guidare dal programmatore inesperto.

Un programmatore di inesperienza può avere una prospettiva di cui hai bisogno. NIH (non inventato qui) e WADITW (lo facciamo sempre così) non sono sempre i migliori. Scegli qualcuno che farà domande di sondaggio. Preparati a cambiare i tuoi modi.

Potresti stare meglio con un programmatore esperto, poiché potrebbe avere una maggiore produttività per dollaro. I rapporti di produttività documentati sono circa 26 a 1. Potresti essere fortunato e ottenere un programmatore inesperto altamente produttivo.

Se il tasso di turnover dei dipendenti è elevato, potresti essere in grado di assumere solo programmatori inesperti.

Se il tuo budget è pro capite, i programmatori inesperti potrebbero essere tutto ciò che puoi permetterti. Questo non significa che il tuo progetto avrà un costo inferiore. È molto più probabile che costino di più. Un numero inferiore di programmatori esperti potrebbe essere più conveniente.

I programmatori esperti portano il bagaglio da progetti precedenti. Alcuni di questi andranno bene e altri saranno cattivi. Se non hai le risorse per minimizzare il male e massimizzare il bene, potresti voler un programmatore inesperto. Avranno un bagaglio diverso.

Potresti aver bisogno di competenze o conoscenze che i tuoi programmatori esperti non hanno, ma che un programmatore di inesperienza ha. Assumili e fai un po 'di allenamento incrociato con i tuoi programmatori esperti.

È bello far crescere il talento. Trova almeno un programmatore di inesperienza per la tua squadra. Allenali e guidali. Sfidali e supportali. Impara dalla loro nuova prospettiva mentre imparano dalla tua prospettiva stagionata.


2

Molte aziende negli Stati Uniti oggi vogliono che qualcuno entri, faccia un compito e vada via. Non vogliono qualcuno che impiegherà del tempo per capire qualcosa, né vogliono che qualcuno abbia bisogno di spiegazioni. Di conseguenza, la maggior parte degli annunci per gli sviluppatori richiede / richiede quindici anni di esperienza in tutto.

Quello che penso dovrebbe cambiare è cambiare in una diversa cultura aziendale. Il Daily WTF aveva un saggio chiamato " Up or Out ". Mentre il modello menzionato in quel saggio è quello usato nella professione legale (così come in alcune società di consulenza), quel modello non si adatta bene alla cultura aziendale esistente.


1

Il budget non dovrebbe quasi mai essere il motivo per cui dovresti assumere più fresco.

Il motivo principale per cui recluti matricole è quando:

  1. hai bisogno di energia fresca e talento che renda l'organizzazione più vibrante

  2. Devi lavorare in innovazione all'avanguardia o dirompente dove non vuoi assumere persone della vecchia scuola di pensiero

  3. Sei tu stesso una giovane azienda che vuole esplorare il mondo e vuoi impostare la propria ideologia e il proprio stile.


1

Tutte queste risposte con ottime e nobili ragioni per assumere persone entry level sono simpatiche e tutte.

La vera risposta è: un'azienda ottiene la migliore risorsa possibile per la quantità di denaro che è disposta a spendere. Sono affari. Se non è disposto a spendere molto, fa pubblicità a qualcuno che non costerà molto. "Entry level" è una frase di segnalazione di annuncio di lavoro destinata a provocare tale risultato. Le risorse umane non perderanno tempo a intervistare gli sviluppatori del dio del rock che non possono permettersi.

Se sono fortunati, trovano qualcuno che sottovaluta il loro valore, sottovalutandosi come "entry level" quando in realtà sono più senior di così. Riesci a immaginare una società che non sta presentando un'offerta così allettante? Ovviamente no. Tutto il "riusciamo a svilupparli a nostra immagine" "energia fresca ci rende più vibranti" le cose escono dalla finestra in quel momento.

Così. Sfoglia la maggior parte di queste risposte per vedere le belle giustificazioni del mondo felice per questo. La vera risposta è: sì, quella decisione è quasi sempre di bilancio.


0

Suppongo che l'altro motivo sia la mancanza di programmatori migliori disponibili / disponibili.


Haha buon punto. Immagino di voler dire quando si fa pubblicità a un ruolo piuttosto che ricoprirlo.
Armand
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.