In realtà, uno sviluppatore gestisce anche DBMS e sistema? [chiuso]


21

Davvero non so dove altro chiedere. Quindi eccolo qui.

Sto lavorando in un'azienda molto piccola che produce software e siti Web ERP.

1 sviluppatore con + 10 anni di esperienza.
2 sviluppatori con + 3 anni di esperienza.
3 sviluppatori con + 1 anno di esperienza.

Questo è tutto.
Nessuna squadra, nessun DBA, nessun amministratore di sistema.
Qui non c'è nessuno che abbia esperienza nello sviluppo web, quindi mi è capitato di occuparmi dello sviluppo web. Ma ho solo 3 anni di esperienza! come sviluppatore!


So che in una piccola azienda, ti viene chiesto di fare molte cose diverse, ma è troppo, se devo fare l'amministratore di sistema, l'architettura del database, la progettazione e lo sviluppo del software? Inoltre, mi viene chiesto di fare tutto ciò su piattaforme diverse.
Attualmente sto lavorando con JSP, ASP, MSSQL, MySQL, Oracle, Windows Server e Linux.
Nel database, faccio dalla scrittura di query al backup e al recupero.
Configurazione del server, ripristino di crash del sistema, migrazione anche di DB e server.
Plush HTML, Javascript e CSS :)
Numero di progetti di cui sono responsabile: 5

Non sono affatto un esperto!
Devo cercare in Internet, leggere tutorial e porre domande in StackOverflow per fare tutto!

Quindi ti chiedo, è normale?
È una pratica normale?
Dovrò affrontare la stessa situazione qualunque piccola compagnia vada?
Sto lavorando in Corea del sud.
Com'è nel tuo paese?

PS Grazie a tutti per la vostra opinione. Avrei votato a tutti voi perché tutti voi mi avete aiutato a vederlo in un modo diverso, ma a quanto pare avete bisogno di 15 reputazione per votare :(


36
Considerati molto fortunato. Hai l'opportunità di apprendere una vasta gamma di abilità e di essere pagato per farlo.
Robert Harvey,

2
Sì, penso in questo modo. Non mi lamento particolarmente, ma chiedo se è una pratica normale. Oh forse dovrei aggiungerlo alla domanda.
Ascendente

Se è troppo dipende davvero da te. Come altri hanno affermato nelle risposte, non è raro che le piccole aziende facciano raddoppiare le persone in altri ruoli. Se ritieni che sia travolgente nella misura in cui il tuo lavoro ne soffre, allora è qualcosa che devi affrontare con il tuo manager. Allo stesso modo se fai così tante altre cose che non vuoi fare così come le cose che vuoi fare (e per cui sei stato impiegato), quindi di nuovo discuti con il tuo manager o inizia a cercare altri ruoli. Personalmente mi piace fare cose da amministratore di sistema e mi manca quando sono in una grande azienda dove non mi lasciano ai server. ;-)
Chris,

3
Non sei solo. Faccio tutto (e intendo tutto ) anche nella mia azienda. DBA, amministratore di sistema, programmatore, sviluppatore web, supporto utenti, networking, opere.
MikeTheLiar,

Risposte:


33

Nella mia esperienza, sì, è perfettamente normale che gli sviluppatori di piccole aziende possano ricoprire una vasta gamma di ruoli. È certamente normale per un'azienda così piccola che ha solo tre sviluppatori che non hanno un DBA specializzato o un amministratore di sistema.

Tuttavia, troverei insolito che un'azienda così piccola utilizzasse una gamma così ampia di tecnologie. JSP e ASP? Windows e Linux? SQL Server, MySQL e Oracle ?? Di solito, le piccole aziende si concentreranno su una piattaforma tecnologica per evitare di diffondersi troppo sottili.

Se il tuo lavoro riguardasse lo sviluppo full-stack su una piattaforma, ad esempio ASP.NET + SQL Server + Windows o Java + Oracle + Linux, ti sentiresti ancora sopraffatto?

Comunque, se vuoi specializzarti in misura maggiore, sì, dovresti cercare aziende più grandi. Più è grande la squadra, più è plausibile e vantaggioso avere specialisti.


Grazie. Solo per aggiungere un'altra cosa, se mi chiedessero di sviluppare e mantenere anche il software ERP in SAP PowerScript, sarebbe ancora una pratica normale? o si diffonderà troppo sottile?
Ascendente

Mentre @PerfectGundam non ha spiegato perché il suo datore di lavoro abbia una tale varietà di piattaforme; finire con un uso significativo di diversi non è così difficile se non si ha il vantaggio di riscrivere i sistemi legacy quando si cambiano le piattaforme per un nuovo sviluppo. I casi in cui i valori anomali rappresentano solo una piccola parte del totale possono verificarsi quando una nicchia occasionale non ha una buona opzione sulla piattaforma preferita dalle aziende. E se la società sta sviluppando software per terze parti; la creazione di materiale adatto allo stack preferito dai clienti può comportare un enorme miscuglio di piattaforme usate una o due volte ciascuna.
Dan Neely,

@DanNeely - oh, non ho dubbi che sia esattamente così. C'è sempre il rischio, per una piccola azienda di tipo agenzia, di dire "sì" a qualsiasi cosa perché ottenere la vendita è più importante dei piccoli dettagli come "abbiamo qualcuno che è effettivamente in grado di fare questo lavoro?" :-)
Carson63000,

14

Per esperienza, posso dire che dal vivo come sviluppatore di software varia ampiamente in base alle dimensioni dell'azienda in cui lavori.

I negozi più piccoli tendono a richiedere più multi-tasking e assumere più ruoli, mentre le grandi aziende di solito hanno un ruolo molto rigorosamente descritto per ogni persona.

Un estremo è un one-man-show, in cui (ovviamente) devi fare tutto il lavoro, che si adatti o meno alle tue aree di forza.

L'altra è la grande multinazionale con diverse sedi nella tua città: qui tendi ad avere una descrizione precisa della posizione che ti dice esattamente su cosa stai lavorando.

Allo stesso modo, presumo, varia anche in base alla tua esatta area di attività e posizione geografica / culturale.


13

Nella tua enumerazione delle attività che uno sviluppatore deve svolgere, puoi anche inserire:

  • Design interattivo,
  • Progettazione visiva,
  • usabilità,
  • Sicurezza,
  • Raccolta dei requisiti,
  • Test e QA,
  • Distribuzione,
  • Manutenzione,
  • Gestione di progetto,
  • Gestione della squadra,
  • eccetera.

In sostanza, questa è la differenza tra un programmatore e uno sviluppatore .

  • Il compito di un programmatore , non importa quanto abile, è scrivere codice , eventualmente pensando un po 'ai diversi approcci (ovvero progettazione preliminare).

  • Il compito di uno sviluppatore è quello di essere in grado di eseguire un progetto su piccola o media scala , che richiede una conoscenza molto più ampia (e quindi allo stesso tempo meno profonda).

Al fine di superare il fatto che un singolo sviluppatore non sarebbe in grado di conoscere tanto quanto una singola persona che ha trascorso anni imparando solo una cosa, i progetti vengono realizzati da un team. Ecco come sono organizzati (o almeno dovrebbero essere) i progetti. Il più delle volte, un piccolo progetto non richiede troppe competenze in nessun dominio, mentre quelli più grandi lo fanno.

  • Se sbaglio, come sviluppatore, con la sicurezza di un sito Web di e-commerce di una piccola azienda, beh, è ​​un male, perché la società potrebbe perdere alcune centinaia o, raramente, migliaia di dollari, ma non è critica. Se rovino la sicurezza o un sistema che controlla il traffico aereo, è davvero un male.
  • Se la progettazione dell'interazione del prodotto software di contabilità interna eseguita per una piccola azienda e utilizzata solo da due ragionieri che vi lavorano è cattiva, di nuovo, ciò non è troppo dannoso. Se la progettazione dell'interazione di un nuovo prodotto Apple è scarsa, ciò può avere conseguenze importanti sulle vendite e sulla reputazione dell'azienda.
  • eccetera.

Ciò significa che lavorando in piccole aziende su progetti su piccola scala, ti troverai spesso a fare molte cose . Queste aziende non possono permettersi specialisti in tutti i centinaia di settori legati all'IT, quindi cercano invece un tuttofare .

Inizia a lavorare su grandi progetti e vedrai che il tuo ruolo sarà più ristretto, ma allo stesso tempo più profondo. Il tuo intero lavoro potrebbe essere quello di scrivere codice CSS, ma ti verrà richiesto di conoscere qualsiasi stranezza CSS ed essere in grado di progettare un'applicazione web molto velocemente, in base al lavoro di un visual designer. Non avresti scuse se non riesci a spiegare i vantaggi di Sass rispetto a MENO o se non sai quali sono gli sprite CSS.

Sta a te scegliere quello che preferisci.

  • Non c'è niente di male nell'essere tuttofare, soprattutto perché ti permette di essere abbastanza flessibile: se c'è una domanda per gli amministratori di sistema, hai le competenze. Se, qualche anno dopo, nessuno ha bisogno di amministratori di sistema, ma ora gli sviluppatori web sono pagati bene, puoi fare domanda anche tu.
  • Non c'è niente di male nel concentrarsi su un campo stretto. Se hai una profonda conoscenza di un campo, le grandi aziende con un sacco di soldi possono essere interessate ad assumerti, perché ci sarebbero pochi specialisti del tuo livello di abilità.
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.