Come posso passare a un lavoro utilizzando lo stack Microsoft? [chiuso]

10

Mi sono laureato all'università con una laurea in informatica (BSc), avendo fatto alcuni C, C ++, Java, Python e Oracle lungo la strada. Ho fatto un po 'di freelance mentre ero all'università e ho svolto questo lavoro a tempo pieno quando mi sono laureato, e ho lavorato a tempo pieno per un anno.

PHP non è proprio ciò che voglio fare, e penso che limiterà le mie opportunità più a lungo rimarrò su questa strada. Non è un linguaggio che mi piace usare quotidianamente, e mi piacerebbe lavorare in un'organizzazione più grande, dove PHP non sembra molto utile.

Voglio rimanere nello sviluppo web e sembra che ci siano molti lavori per lo stack Microsoft: C #, SQL Server e ASP.NET MVC. Ma oltre la metà del semestre scrivendo C ++ in linea comune in Visual Studio, non ho esperienza con la tecnologia Microsoft.

Dove posso iniziare la transizione verso l'atterraggio di un lavoro in un negozio Microsoft? Ci sono delle certificazioni specifiche su cui dovrei concentrarmi o corsi universitari che dovrei prendere? Cosa cercano i datori di lavoro o i reclutatori?

Cosa posso fare oltre a creare un progetto per animali domestici nel mio tempo libero?

    
posta Keyo 19.12.2010 - 05:30
fonte

11 risposte

12

È improbabile che la certificazione ti dia notizia. In realtà, la soluzione migliore potrebbe essere semplicemente creare qualcosa di interessante usando lo stack MS e gettandolo sul web, un po 'come un progetto di portfolio. Un'altra cosa sarebbe iniziare a rispondere alle domande Stack Overflow in C # e ASP e quindi applicare attraverso SO Careers (ho notato che hai risposto per lo più Domande PHP e JS).

    
risposta data 19.12.2010 - 05:49
fonte
9

Keyo, penso che non dovresti concentrarti su ciò che i cacciatori di teste vogliono. Francamente, se vogliono PHP o un linguaggio che secondo te è ancora più mal concepito, allora sarai in grado di seguirlo per tutta la vita?

Il mio suggerimento non è quello di innamorarsi della trappola tecnologica semplicemente imparando linguaggi e tecniche di programmazione senza alcuna comprensione di un dominio. Guardati intorno un po '- guarda cosa ti interessa. Potrebbe essere la programmazione di giochi, l'elaborazione ad alte prestazioni, i driver di dispositivo, lo sviluppo del kernel, i compilatori ... la lista potrebbe continuare.

Una volta scelto un campo o 2, guarda in che cosa c'è nel dominio open source in queste aree. Contribuisci pesantemente, saresti notato a credermi.

    
risposta data 19.12.2010 - 06:57
fonte
6

Il mio consiglio: trovare un lavoro come sviluppatore C #. Non devi avere lo skillset esatto elencato in un annuncio di lavoro per ottenere un lavoro: se dimostri di essere uno sviluppatore capace dovresti essere in grado di fare un lavoro sul presupposto che prenderai la lingua.

Sto parlando di esperienza qui. Il mio background è principalmente Lotus Notes e Oracle PL / SQL, con bit di .NET, Java e Adobe Flex. Ho deciso di concentrarmi su .NET, quindi sono andato a intervistare per i lavori .NET. Non avevo fatto alcun .NET in 3+ anni, ma ora sono al mio collo in MVC, WCF e lambda: -)

Fondamentalmente: non sottovalutare le tue abilità esistenti e non aver paura di imparare sul posto di lavoro. In realtà, non c'è alcun sostituto per l'esperienza di sviluppo del mondo reale.

Modifica: sono anche in Aus. Ci sono opportunità se le segui.

    
risposta data 22.12.2010 - 04:32
fonte
2

Dato che hai appena iniziato la tua carriera, potrebbe non essere così difficile come credi di ottenere un lavoro usando lo stack tecnologico MS con pochissima esperienza. Devi solo essere disposto a sparare per i lavori junior.

Ho assunto molte persone e ho aspettative diverse sulla loro esperienza in base alla posizione che sto cercando di riempire. Se guardo a un ruolo di livello senior o architetto, mi aspetto di vedere una buona dose di esperienza. Ma non tutto deve essere nella tecnologia esatta o nel set di abilità che sto cercando. Se voglio qualcuno con esperienza in C # ma hanno 5 di Java e 3 di C ++, so che non avranno molta difficoltà a prendere una nuova lingua. A proposito, man mano che avanzi nella tua carriera, ti renderai presto conto che imparare una nuova lingua spesso non è un grosso problema. Imparare tutte le librerie e gli idiomi della lingua è ciò che richiede tempo.

Quando guardo una posizione da junior, conferisco molta meno importanza alla loro esperienza. Voglio davvero capire che hanno la capacità di imparare. Ottenere il tuo grado CS (o qualsiasi altra cosa) è un buon passo in quella direzione, perché dimostra che sei stato in grado di imparare qualcosa. Se hai esperienza lavorativa nel campo CS, bene. Qualcuno pensava che fossi abbastanza intelligente da assumere. Ho intenzione di lanciarti alcune domande di programmazione (magari su carta, magari su una lavagna) e chiederti di risolverli nella tua lingua preferita. Sì, nella lingua della tua scelta . Quello che sto cercando di vedere è se riesci a superare un problema, e sarò in grado di seguire abbastanza la tua lingua qualunque che scegli per vedere se hai la risposta giusta o meno.

Ovviamente se sai qualcosa sulla tecnologia che richiederà il lavoro, tanto meglio. Trascorri le tue ore libere disossando le materie in modo da essere almeno in grado di riconoscere le parole chiave importanti che potrebbero lanciarti.

Per darti un po 'di speranza, ho assunto un ragazzo che aveva qualche esperienza in C ma non molto. Era per un lavoro da junior C. Il ragazzo era ovviamente intelligente, ben parlato e poteva ragionare sul problema. Sfortunatamente, era ancora un po 'debole sul lato C. Abbiamo detto "ti dico cosa, lavoro sul tuo C, torna tra un paio di settimane, e proveremo di nuovo". L'ha fatto, gli abbiamo fatto domande diverse (ovviamente), ed era decisamente meglio. Non buttarlo fuori dal parco meglio, ma un deciso miglioramento. Abbiamo deciso di assumerlo e non ce ne siamo pentiti. Ha lavorato sodo, e quando non era sicuro, ha fatto domande.

Quindi il risultato di questa passeggiata lunga e sinuosa è, se vuoi cambiare ciò su cui stai lavorando, provaci. Soprattutto all'inizio della tua carriera. Spara per i lavori e guarda cosa succede. Se puoi, ottieni un feedback su dove hai fatto bene, e non così bene. Alla fine, ne varrà la pena.

    
risposta data 22.12.2010 - 05:05
fonte
1

Se vuoi muoverti in quella direzione, devi concentrarti sulla costruzione dell'esperienza con le tecnologie. Puoi farlo in molti modi. Il primo è lavorare sui propri progetti usando i prodotti Microsoft. Per fortuna hanno fornito almeno un numero di strumenti gratuiti come Visual Studio Express, in modo che tu possa almeno bagnarti i piedi. Se non hai in mente nulla su cui vuoi lavorare, trova solo alcuni libri e leggi e analizza tutti gli esercizi o gli esempi che forniscono. Puoi anche controllare se ci sono gruppi di utenti .NET nella tua zona e iniziare a frequentarli e fare networking. Se non ci sono gruppi di utenti, magari cercare conferenze vicino a te. In terzo luogo, vedi se riesci a trovare un'azienda che fa uso di più tecnologie in cui puoi utilizzare le tue competenze esistenti, ma avere l'opportunità di essere esposto ad altre tecnologie e acquisire esperienza aggiuntiva sul lavoro. Molte delle abilità che hai appreso si applicano comunque indipendentemente dalla tecnologia e dalla lingua che stai utilizzando. Quindi continua anche a concentrarti sul continuare a sviluppare quelle capacità.

    
risposta data 22.12.2010 - 03:05
fonte
1

Come altri hanno detto, con 1 anno di esperienza dovresti essere in grado di trovare un nuovo lavoro che ti consenta di codificare .Net. Sono passato anche da PHP a ASP.Net/C#, ma il mio percorso era diverso. Dopo aver lavorato in PHP per circa un anno, ho fatto i miei Master, internato in una società, programmando principalmente in .Net e poi sto lavorando in .Net a tempo pieno.

Altrimenti nel caso in cui la tua azienda sia una startup (o non una società come dici tu), perché non convincerli a iniziare / cercare anche i progetti ASP.Net? Naturalmente, questo dipende dal fatto che ci sono persone che sono abili nel gestire / lavorare in progetti .net o che la tua azienda dovrebbe essere pronta ad assumere persone con esperienza .net per i nuovi progetti? Anche questa risposta può sembrare irrealistica ...

    
risposta data 22.12.2010 - 05:53
fonte
1

Penso che la risposta sia in più parti: competenze, certificazioni e auto-promozione / branding.

Abilità: Non sembra che tu sappia quale parte del "web" ti interessa. Quindi scegli qualcosa con cui troppe persone non lavorano (perché è appena uscito) e inizia a giocarci usando lo stack C #. Ad esempio, il motore del rasoio è appena uscito in MVC3 beta. O qualcosa intorno alla tecnologia Deep Zoom, anche se questo è principalmente legato a Silverlight :-( Questo ti darà tutte le competenze di base, ma anche tutte le idee e le opportunità più recenti.

Auto-promozione / di branding: Imparare la più recente (beta) tecnologia non è sempre facile. Bug, funzioni incomprese e altro divertimento accadrà lungo la strada. Crea un blog (sul tuo dominio) per documentare quelle avventure e in particolare le tue soluzioni. Scrivi un piccolo tutorial o cammina attraverso, forse piccoli progetti di esempio da scaricare per altri neofiti. Ciò dimostra agli altri che stai lavorando con le ultime tecnologie, che stai imparando e che, si spera, puoi persino insegnare qualcosa agli altri. Se puoi, crea piccoli portfolio dimostrativi per sfoggiare il tuo lavoro

Certificazioni: Guarda le cose da acm.org o O'Reilly. Le iscrizioni offrono accesso a più corsi di apprendimento e in alcuni casi certificazioni. Non ne so molto di questi, ma quella sarebbe la mia direzione da investigare.

Il progetto specifico in un modo non ha importanza, ma cerca di non reinventare la ruota (ancora un altro clone di CMS o Tetris). Scegli una cosa nuova semplice intorno ai tuoi altri hobby da fare o prova ad aiutare un progetto open source esistente. O semplicemente rifare un progetto demo .Net esistente da Microsoft (o da un popolare libro .Net ) usando la tecnologia più recente e gli approcci HTML5 / jQuery. Si noti che il rifacimento di un progetto demo già esistente è diverso da "ancora un altro XYZ" poiché i requisiti della demo originale sono vincolati e quindi possono essere effettivamente confrontati all'implementazione originale come le mele alle mele. Ti dà anche la possibilità di indicare dove qualcosa è ora più / meno efficiente / chiaro / leggibile.

Con i progetti open source, non devi guadagnare i diritti di commit per essere utile, puoi semplicemente scegliere uno scenario e creare un progetto di esempio che mostri una particolare configurazione / configurazione / ecc. Solo cercando di spiegarlo agli altri imparerai molto anche te stesso. Probabilmente scoprirai molte informazioni mancanti nella documentazione del progetto open source che ti insegnerà molto a leggere il codice degli altri per ottenere risposte.

Fondamentalmente, iniziare a pensare oltre il semplice codice e altro su come poter essere un membro utile della comunità anche a livello di conoscenza e su come rendere più visibile il contributo continuo alla comunità. I datori di lavoro sono alla ricerca di persone che sono già utili e se inizi a svolgere queste competenze in anticipo, pagheranno per continuare a pagare per tutta la tua carriera.

Acclamazione amico.

    
risposta data 22.12.2010 - 06:19
fonte
1

È sempre difficile effettuare questo passaggio dopo aver lavorato su una tecnologia specifica per alcuni anni. Il tuo lavoro diurno non ti permetterebbe di concentrarti sull'apprendimento della nuova tecnologia e non avresti un lavoro su di esso, non almeno con una stessa scala retributiva in quanto non hai molta esperienza su di esso.

Fortunatamente, passare alle tecnologie MS non dovrebbe essere troppo difficile in quanto ci sono molte buone risorse disponibili da cui imparare e moltissimi posti di lavoro disponibili. Ma dovresti lavorare su piccoli progetti ottenere una conoscenza reale, questo è il modo migliore per imparare. Non che io sappia troppo, ma tutto ciò che ho imparato è dovuto alle sfide che ho affrontato, lavorando ai progetti.

Oltre a lavorare da solo su un progetto per animali domestici, puoi probabilmente provare a collegarti con un amico sviluppatore, che sta già lavorando su dotnet. Chiedigli di assegnarti piccoli compiti per assisterlo nel suo lavoro. Puoi anche aiutarlo a trovare soluzioni ai problemi con cui rimane bloccato. In questo modo, imparerai a conoscere le caratteristiche della lingua e come e quando usarle.

Leggere libri è un'altra attività che dovresti fare, ma che dovrebbe essere sempre aggiornata con alcune mani, altrimenti non usare.

Vorrei anche aggiungere che le Certificazioni possono sembrare un bel addon per il tuo curriculum, ma questo non ti aiuta davvero a migliorare le tue abilità, e i reclutatori lo sanno.

    
risposta data 22.12.2010 - 05:46
fonte
1

Dato che hai già esperienza con PHP molte delle abilità di sviluppo web che hai acquisito saranno di grande utilità, se sposti lo sviluppo web di asp.net. Personalmente preferisco il mvc asp.net perché è più strutturato e Microsoft lo consiglia quasi su Web Forms. Quindi le tue abilità CSS, JavaScript e HTML ecc non andranno perse in questa transizione.

Raccomando la certificazione, con una parola di cautela sul fatto che una certificazione non autorizza a nulla. Ma sarebbe una prova che tu abbia capito di asp.net/microsoft stack. Puoi facilmente giustificare la tua ricerca di lavoro in tecnologie Microsoft. In cima, una preparazione di certificazione ti esporrà molti concetti. Ottenere una certificazione è meglio che sedersi e mangiarsi le unghie, a meno che non si abbia un interessante progetto per animali domestici in asp.net o in qualsiasi altro strumento in microsoft stack.

Se sei un dipendente di un'azienda, ti aspetti che tu sia produttivo, il livello varia, ma l'intera idea è ora quanto sei esperto nello stack Microsoft? Personalmente mi piace www.tekpub.com per molti cast di buona qualità e il buon lavoro di Rob Conrey, per la dissezione di cose in unità di tutorial semplici e comprensibili. Ciò renderebbe più facile il processo di apprendimento. Consiglio vivamente di farlo anche se ha un abbonamento mensile che è nominale se vivi nei paesi dell'OCSE.

Arrivati ad Amazon e insegui i libri su asp.net/microsoft.net di solito scegli un libro con 5 stelle e ti impegni. Ultimo ma non meno importante, impara a installare tutto il software richiesto Visual Studio, SQL Server e altre cose necessarie sul tuo personal computer (l'edizione rapida dovrebbe andare bene). Fallo da solo, cercando su internet o su un libro. Questa è un'abilità molto importante, che sarebbe utile e semplice nella maggior parte dei casi, ma ci sono alcune lezioni che possono essere apprese lì.

Assicurati almeno di aver implementato il piccolo mini carrello della spesa o il mini-progetto del motore per i blog per vedere come si inserisce tutto.

    
risposta data 23.12.2010 - 20:46
fonte
1

Non ti piace il PHP, quindi evitare i lavori in quell'area è abbastanza facile. Molti lavori nel settore web / Microsoft, ma questi sono i tipi di aziende per cui vuoi lavorare?

Esistono tre tipi di lavori:

  1. Software / Web Service Company
  2. Consulenza
  3. Azienda in qualche altro settore che desidera assumere programmatori interni.

Non sei sicuro che # 1 faccia un sacco di C #, ma dovrai scoprirlo da solo. Hai preso in considerazione Python o Ruby?

Hai un lavoro, quindi non dovresti essere troppo disperato. Scegli una società per cui vuoi lavorare e guarda cosa richiedono. Con la tua educazione ed esperienza, l'autoapprendimento è l'opzione migliore. Non dovrebbe essere troppo difficile convincere i datori di lavoro che sai cosa stai facendo e sono in grado di raccogliere nuove lingue. Non ci sono percorsi definitivi; preparati a vendere le tue abilità.

    
risposta data 24.12.2010 - 00:51
fonte
0

Ho fatto progressi tecnologici con successo più di una volta nella mia carriera. Il primo progetto su cui ho lavorato era un'applicazione ColdFusion (basti pensare a tutto ciò che non va in PHP, ingrandirlo e ora hai ColdFusion). Ho odiato quell'applicazione, che è stata spinta a odiare quando ho dovuto distribuirlo su una scatola Solaris indurita.

Abbiamo dovuto inventare uno strumento per eseguire qualche elaborazione in background, il che è qualcosa su cui ColdFusion non era assolutamente all'altezza. Dato che era una piccola azienda, e volevo imparare Java, ho scritto l'utilità in Java. Ho imparato un lotto sulla programmazione nel processo. Ho anche costruito la mia reputazione per aver fatto il lavoro giusto.

Poiché Java era orientato agli oggetti e avevo un'esposizione al C ++, è stato chiesto di mantenere alcune delle applicazioni C ++ di questa azienda. Di nuovo un cambiamento tecnologico.

Per un po 'sono tornato su Java sia sul desktop che sul server. Ho pagato le mie fatture per un buon periodo lungo . Recentemente, ho avuto un altro passaggio di tecnologia allo stack .Net. La conoscenza che ho sviluppato per quanto riguarda la progettazione delle applicazioni e la risoluzione dei problemi è ciò che mi ha dato il lavoro anche se non avevo scritto una riga di codice C #. C # è stato abbastanza simile a Java. L'ho raccolto fino a un livello in cui potevo essere utile mentre stavo aspettando che le pratiche HR fossero passate.

Alla fine della giornata, devi dimostrare di possedere abilità tecnologiche al di fuori del buco dei piselli dove ti senti adesso. Questa dimostrazione è più efficace con un'applicazione o un'utilità funzionante. Più persone possono vedere quell'applicazione, meglio è. Tuttavia, come dimostra la mia ultima transizione, non devi avere quell'applicazione per atterrare un lavoro. Devi sapere come risolvere i problemi in modo compatibile con la tecnologia dell'azienda.

Quando sono seduto nella posizione dell'intervistatore, i certificati non mi impressionano molto. Il motivo è che ho avuto fortuna 50/50 con sviluppatori certificati. Alcuni erano veramente buoni, e alcuni erano davvero cattivi. Non c'è stata una tendenza apprezzabile in entrambi i casi, quindi è un non-problema. Ciò che è più importante è capire quanto bene puoi capire i problemi e articolare le soluzioni.

    
risposta data 23.12.2010 - 18:12
fonte

Leggi altre domande sui tag