2010-08-16 16 views
12

Come sviluppatore ASP.NET con oltre 5 anni di esperienza. Mi piace misurare il mio livello di competenza in ASP.NET & SQL Server. Fondamentalmente il mio obiettivo è aumentare il mio livello di competenza e il set di abilità in ASP.NET; prima che ho bisogno di sapere qual è il mio livello considerando ASP.NET corrente e le relative tecnologie ...Come posso misurare il mio livello di competenza o il set di competenze in ASP.NET?

Quindi, si prega di fornire alcune indicazioni ...

  • è che ci sono tutte le abilità-set di misurazione Quiz o esame, quale esperienza di conto e tecnologia?
  • Come si misura la capacità o la competenza degli sviluppatori juniores o del proprio junior?
+2

Questa domanda è un buon candidato per wiki comunità - la cura per renderlo così? – Oded

+0

Ti interessa ASP.NET 4, ASP.NET MVC, ad esempio? Esistono molte tecnologie diverse, potresti voler limitare la tua domanda. –

+0

@James Black - Sto cercando di comprendere le basi di ASP.NET e quindi specifiche versioni ASP.NET 3.5 e 4. Analogamente Nozioni di base SQL e versione specifica 2005 & 2008. – CoderHawk

risposta

2

Immagino di poter snocciolare alcuni esami, come gli esami MCP o BrainBench, ma per questi devi pagare molti soldi.

Se sei stato davvero venduto per sostenere un esame per valutare la tua competenza, potresti ottenere una delle guide di preparazione all'esame MCP per ASP.NET, C# e SQL Server e vedere quanto bene comprendi e assimili quel materiale . Non sono sicuro che sia il modo più accurato per misurare la competenza.

È possibile ottenere una buona valutazione qualitativa delle competenze di SQL Server semplicemente leggendo i libri Itzik's o Kalen's e vedendo come li comprendi. Per .NET, leggi Richter e valuta te stesso in base ai concetti che trovi in ​​quel libro. Questi concetti hanno senso?

Probabilmente il modo più valido per ottenere feedback è chiedere ai tuoi sviluppatori senior una valutazione franca delle tue capacità.

Se mi stai chiedendo come valuto i miei sviluppatori junior, è piuttosto facile quando vedo il loro codice e ottengono un track record per alcuni mesi, ma non credo che l'analisi quantitativa sia il modo migliore. Invece, faccio domande come:

  • Possono consegnare?
  • Stanno scrivendo good code?
  • Stanno prendendo l'iniziativa per saperne di più?
  • Cosa hanno portato in tavola?
  • Capiscono il ciclo di vita dello sviluppo del software?
  • Si rompono le build?
  • Sono bravi giocatori di squadra o codificano in solitudine?
  • Fanno suggerimenti?
  • Sono aperti ai suggerimenti di altri?
  • Le loro decisioni di progettazione hanno senso per i progetti in cui sono state?

Chiediti come i tuoi dirigenti risponderebbero a queste domande su di te. Se sei seriamente sicuro che risponderanno positivamente, ti sarà più facile "valutare te stesso".

+0

grazie sottolineando il server sql e libri .net.Penso che le domande che hai menzionato siano troppo generiche e non destinate a una tecnologia specifica, ad esempio ASP.NET o SQL Server, ma vale la pena quando valutiamo un buon giocatore o dipendente di squadra. – CoderHawk

1

Onestamente, è tutto relativo. Ho lavorato su team in cui gli sviluppatori junior di una squadra superano in ogni modo gli sviluppatori senior dell'altra squadra. Ambienti diversi valuteranno diversi set di abilità in modi diversi.

Per quanto riguarda un "test" delle tue capacità, uno piuttosto pratico sarebbe proprio qui su StackOverflow. Cerca le domande .NET, prova a rispondere. Quelli a cui non puoi rispondere, impara da quelli che ti rispondono. Risciacquare, ripetere. Non è molto strutturato, ma può sicuramente essere utile.

È anche utile seguire semplicemente lo some of the major blogs e vedere se è possibile tenere il passo con ciò di cui stanno parlando e provare a implementare alcuni di questi progetti personali per imparare e fare pratica.

L'unico modo per misurare realmente il tuo livello di abilità è quello di spingerlo in avanti. Trova cose che non riesci a strappare e imparare. Uno sviluppatore veramente esperto non è mai un esperto, ma piuttosto solo un esperto più di quanto non fosse ieri.

+0

sì, suo parente; ma, penso che ci sarà una sorta di benchmark, da dove potremo migliorare le competenze necessarie? – CoderHawk

+0

@Sandy: Forse, ma anche quei benchmark saranno relativi. Forse puoi superare alcuni test, qualificarti per alcuni certificati, ecc. Ma quelli sono più circa le società di testing/cert che cercano di venderti (o il tuo datore di lavoro, ecc.) Qualcosa. Un punto di riferimento implica qualcosa da raggiungere, e sono generalmente dell'opinione che la padronanza di un mestiere sia un viaggio, non una destinazione. – David

+0

Sono d'accordo, sono un MCPD; ma, non mi sembra il modo giusto o completo di benchmarking. Sto cercando qualcosa di simile - un controllo di qualità in cui le domande si basano su esperienze rilevanti in tecnologia specifica e il risultato indicherà quali campi dobbiamo concentrare in futuro ... – CoderHawk

1

Alla domanda su linee simili, l'ho letta da qualcuno qui sul SO che

he will try to answer the questions on SO. 

Mi permetta di riformulare che,

cercherò di misurare la mia prestazione con domande e risposte di qualcuno.

Detto questo, non confronterò la mia competenza con la conoscenza collettiva qui su SO.

+0

@Srinivas - grazie, ma sto cercando un modo efficace e più breve per valutare; la misurazione basata sul QA sembra essere relativa alla persona che chiede e alla persona che misura. – CoderHawk

1

Questo di solito è piuttosto specifico per l'azienda. Ci saranno un sacco di criteri che lo sviluppatore deve soddisfare prima di ottenere una promozione o avanzare a un livello superiore.

La gerarchia è in genere piuttosto simile; con criteri generali (cumulativi) per il progresso al livello successivo. Nella mia esperienza è qualcosa di simile al seguente:

1 laureato/recente esperienza di lavoro

  • Fiera comprensione dei concetti di linguaggio di base (agnostico).
  • Buona conoscenza tecnica a tutto tondo. Dimostrabile
  • Capacità di problem solving. Abilità numeriche e verbali. Generalmente competente
  • Mostra la passione per una certa parte del dominio.
  • Non è una persona pazza.

2 Junior/Allievo Developer

  • buona conoscenza della lingua principale che utilizzano.
  • Fa uso di strumenti e tecnologie di fatto per fornire software.
  • Ha consegnato il software in tempo e programma.
  • Affidabile per fornire componenti con la guida di più sviluppatori senior.
  • Può (e fa) partecipare a riunioni di progettazione e revisioni di codice.
  • Ha una buona comprensione di come l'azienda funzioni nel suo complesso.
  • Comprende i test delle unità e lo sviluppo basato sui test.
  • Comprensione equa del controllo della sorgente e dell'integrazione continua.

3 Developer

  • conoscenza avanzata della lingua principale.
  • Dimostra abilità in almeno un'altra lingua.
  • Dimostra la passione per saperne di più sulla loro lingua.
  • Fa un buon uso di schemi di progettazione durante lo sviluppo di software per scrivere codice gestibile.
  • Cerca attivamente di migliorare il processo e l'efficienza.
  • Fornisce componenti di alto livello qualitativo.
  • Ha la capacità di guidare un piccolo team di sviluppatori per produrre componenti.
  • Buona conoscenza dello sviluppo basato su test, test di unità, derisione e stub.
  • Buona conoscenza di gestione del controllo sorgente: ramificazione, unione, tag.
  • Può condurre una revisione del codice con uno sviluppatore junior e supervisionare il loro lavoro.
  • Richiede una guida minima da parte degli sviluppatori senior.
  • Storia di fornire software di qualità, in tempo

4 Sviluppatore Senior

  • eccellente comprensione della loro lingua primaria
  • Buone capacità in altre lingue utili nel dominio. In generale, ha una passione per l'apprendimento di altre lingue e di come l'azienda potrebbe trarre beneficio dall'impiego di questi/questi per aiutare lo sviluppo
  • Ottima conoscenza del dominio, di tutti i componenti al suo interno e di tutte le interazioni tra. Questa conoscenza può essere facilmente trasferita a sviluppatori meno esperti.
  • È in grado di progettare un bel software
  • Cerca attivamente di migliorare il processo di sviluppo e l'efficienza. Dimostra le lingue e le tecnologie in quest'area.
  • Capisce perfettamente il processo di sviluppo dall'inizio alla fine.
  • Può condurre un grande team di sviluppatori al completamento del progetto di successo e tempestivo.
  • Storia della fornitura di software e progetti eccellenti.

5 Sviluppatore

  • Re
+0

King ?! WTF!? !!!! –

Problemi correlati