Programmazione noleggio di test – Test sviluppatori conoscenza di C# / ASP.NET

Stiamo assumendo un .NET developer presto, e mi è stato assegnato per creare un test, che avrebbe preso circa: 1h da risolvere. Una prova che avrebbe test programmatori conoscenze (soprattutto) di C# e ASP.NET.

Questo è quello che ho creato finora:

  • Utilizzare il progetto #1 per la lettura dei dati(HTML) da un URL specificato e di uscita di tutti i collegamenti(ancore) contenente nome ancora “xxxxxxxxx”. Siete liberi di usare la 3 ° festa di librerie. Il mio principale pensiero è stato quello di testare come sviluppatore vorrei andare sulla risoluzione del problema. Per esempio:
    • Creare una regex che vorresti analizzare tutti i dati necessari.
    • Creare un albero DOM e utilizzo di XPATH per trovare tutti i nodi di ancoraggio.
    • Scorrere l’intera stringa e eseguire manualmente la stringa confronta.
  • Creare una nuova soluzione in cui è possibile dimostrare l’uso di .NET masterpages.
    • Collegare la soluzione per il ******** database. E di uscita di tutti i clienti dal “********_customers” tabella.
    • Creare un nuovo pulsante che aggiorna tutti gli utenti che utilizzano AJAX.

      Roba abbastanza di base. Però, ho anche aggiunto il seguente. Principalmente per testare gli sviluppatori OO conoscenza. Pensi che questo è troppo “eccessivo”, o che tipo di test si propone? Se si dovesse assumere un ASP.NET sviluppatore, quale sarebbe il tuo obiettivo principale sarà? ADO.NET? IO? la gestione delle stringhe?

  • Creare un’interfaccia/classe astratta attuazione dimostrare la funzionalità di Fabbrica, Fabbrica di Metodo, di Comando o di pattern Decorator. Voi non implementare funzionalità, basta usare i commenti di classe astratta.

Grazie in anticipo!

  • Overkill??? E ‘ possibile avere un overkilled con roba del genere? per favore???? }:)
  • HtmlAgilityPack e ASP.NET Dati Dinamici!
  • Può dirci di più su ciò che la persona vorrebbe fare il loro lavoro?
InformationsquelleAutor | 2009-07-09



9 Replies
  1. 22

    Il compito che hai dato è essenzialmente un giorno o due la pena di codifica, se si desidera avere ragionevolmente codice leggibile. Entro un’ora credo che mi piacerebbe fare, ma dovresti leggere il codice che ha cripticamente metodi denominati, illeggibile espressioni regolari, strano richiamate, nessun errore di manipolazione e in generale è maledettamente brutto. A guardarla non assumerli.

    Prima di dare la tua domanda ai candidati, prima assicurarsi che i vostri coetanei/i programmatori possono farlo prima. E che è possibile scrivere il codice in meno di 60 minuti in modo tale da soddisfare.

    Che ha detto, non so se il test è la scelta migliore per l’assunzione a chiunque. Un paio di interviste blogger ha scritto circa la loro esperienza provenienti dalla conduzione di tonnellate di interviste:

    Sono totalmente d’accordo con loro. Dopo aver condotto su una marea di interviste me, trovo che chiedere la tecnologia di base relative domande non è quasi buono come chiedendo di implementare un po ‘ di ricorsione o puntatori (se qualcuno sostiene di conoscere il linguaggio C/C++).

    Da assumere qualcuno che capisce la ricorsione/algoritmi si ottiene un ragazzo intelligente che può imparare la nuova tecnologia. Quando si assume qualcuno che sa come connettersi a un database, che sa come connettersi a un database, ma non necessariamente qualificato per fare molto di più.

    Ci sono alcune fonti di buona programmazione domande che sono da qualche parte tra codificazione e algoritmi che possono ispirare. Non prova .NETTO a tutti, ma sono molto buon indicatore di smart programmatori.

    • “trilione”! lol
    • Anch’io d’accordo con Marcin, Tesing programmatore di logica è una grande qualità, piuttosto che essere specifico circa la tecnologia u r cercando. Io la persona che può creare la logica è sicuramente una persona intelligente che capisce i concetti di base delle strutture Dati. Dare alcuni problemi logici che possono essere un vero e proprio tempo. Check out sapients intervista pattern. Secondo me questa azienda seleziona la crema programmatore
  2. 4

    Entro 1 ora si può solo provare la sua abilità di programmazione, ma non è sufficiente scrivere il codice di esempio.

    Dare un’occhiata a questo C# /ASP.NET MVC test:

    http://tests4geeks.com/test/asp-net-mvc-c-sharp

    Dopo che il richiedente ha superato il test e il risultato sarà buono, quindi lo invita per l’intervista e parlare della sua esperienza. Chiedete più difficile, che ha implementato nei suoi progetti. In altre parole, si deve capire, se lui sa e può fare abbastanza per prendere parte nel progetto.

    Se si vuole ancora di chiedere a lui di scrivere del codice. Che è un’idea:

    Ci sono gli studenti e i soggetti. Si prega di chiedere per scrivere 3 pagine (asp .net mvc o web-form). Di primo e secondo per modificare il dizionario degli studenti e dei soggetti. Terzo modulo deve contenere la tabella. Gli studenti sono nella colonna di sinistra. I soggetti sono nella riga superiore. I marchi sono all’incrocio. Ogni marchio può essere modificato (casella di testo) e salvate. Il risparmio potrebbe essere implementato cliccando il comune pulsante “Salva”. O si potrebbe risparmiare ogni cella automaticamente utilizzando Ajax.

    Questo è un esempio molto semplice, ma sarebbe mostrare come utente scrive il codice, che tecniche usa.

  3. 3

    Avrei pensato che sarebbe meglio semplicemente creare un test che vorresti rendere più facile per voi a mettere gli sviluppatori in diverse abilità secchi’.

    Perché non hanno tre o quattro sezioni o funzioni che lo sviluppatore deve ‘strato’ di caratteristiche sopra l’un l’altro per mostrare la loro programmazione e capacità di progettazione.

    • Parte 1: Implementare x difficoltà: facile
      caratteristiche.
    • Parte 2: Implementare x media difficoltà
      caratteristiche.
    • Parte 3: Implementare difficile x
      caratteristiche.
    • Parte 4: Implementare x molto difficile che funzioni.

    E dare allo sviluppatore di 1 ora a scrivere la domanda. Rendere realistici che si possono implementare le funzioni in un determinato lasso di tempo.

    Come Joel e Jeff dire su Stackoverflow podcast, c’è una correlazione diretta tra sviluppatore di abilità e velocità.

    Pensare al modo in cui gli esami sono strutturati? Tutti noi possiamo ottenere il 100% delle domande corrette in qualsiasi esame ci sediamo se abbiamo avuto tempo infinito, ma in 1 ora?

    In questo modo, Se uno sviluppatore vuole il test e solo implementa caratteristiche di Sezione fino a 2 nel periodo di tempo, allora si dovrebbe avere un sicuro indizio del fatto che essi non sono adatti per il lavoro. Sezione 3 caratteristiche tutto fatto quindi sono abbastanza buoni e la sezione 4 indica che essi sono molto esperto e un leggero taglio sopra il resto.

    Tuttavia vorrei anche guardare il generale polacco che lo sviluppatore ha dato il codice. Se hanno implementato tutte le funzioni di sezione fino a 4, ma poco, non sono andando essere qualcuno che si desidera. SE uno sviluppatore solo fatto di sezione fino a 3, ma implementato il tutto molto finemente, quindi vorrei assumerli.

    Anche io penso che 1 ora è forse un po ‘ troppo a lungo. Vorrei obiettivo per 10-40 minuti, ovviamente, potrebbe essere necessario tagliare la sezione 4, che ho proposto.

    • A volte c’è un buon coder, ma non ha imgination, si incontrano una grande difficoltà: “l’inferno quello che posso pensare, solo di farmi i compiti!”
    • Se essi non hanno fantasia, quindi non vorrei chiamare un buon programmatore. La programmazione è un problema da risolvere e se si, fondamentalmente, non può risolvere problemi quindi direi che c’è qualche problema c’è.
  4. 2

    Si dovrebbe verificare
    GeekInterview — una buona fonte per le domande di intervista
    Ci sono centinaia di domande.

    • A colpo d’occhio il sito sembra avere un sacco di curiosità-il tipo di domande che non vi dirà molto circa un candidato capacità profonde. Come intervistatore io non sto cercando un sacco di domande, ma un paio di domande efficaci che richiederà informativo risposte.
  5. 2

    Penso che sarebbe molto meglio a venire con una sola domanda che vi permetterà di vedere oltre il proprio sviluppo capacità di utilizzo del vostro target di tecnologie. Spiccata capacità di problem solving sono importanti quanto di competenza in una tecnologia specifica stack.

    Vorrei anche raccomandare di esplorare i due aspetti di un candidato in diverse parti del processo. Io di solito chiedo un sacco di domande circa la pila di tecnologia che stiamo usando il nostro progetto per valutare i candidati di livello di conoscenza, in quanto si riferisce a quello stack.

    Allora io chiedo un puro problema di domanda di soluzione dei problemi e consentire loro di utilizzare qualsiasi tecnologia sono più confortevoli per risolvere il problema (per loro scelta della tecnologia può essere un indicatore importante).

    Mi piace particolarmente La Teoria Dei Grafi i problemi correlati. I candidati soluzioni vi dirà una tonnellata su come approccio, risolvere i problemi così come il modo in cui convalidare le loro soluzioni.

    Come parte della risoluzione del problema, parte dell’intervista si dovrebbe essere alla ricerca per:

    • Corretta progettazione di strutture di dati
    • Attuazione delle OO migliori pratiche
    • Soluzione adeguata (e ‘ possibile eseguire il debug di problemi in modo efficace… un ottimo modo per vedere questo è di non consentire l’uso di un computer, fare loro codice su una lavagna e debug in testa),
    • Soluzione adeguata validazione (si arriva con casi di test)
  6. 2

    I miei 2 cents:

    Abbiamo una programmazione di prova nella mia azienda che è facile. Fondamentalmente, è necessario implementare l’ascoltatore modello che estende la classe ArrayList, creare test unitari (in base almeno che cosa abbiamo bisogno di), documento angolo casi, il documento di programma stesso, se lo si desidera, e quindi inviare la prova di nuovo a noi.

    Uno sviluppatore ha 48 ore di tempo per completare il test. Chiediamo per la produzione di qualità del test. Vogliamo verificare i seguenti elementi:

    • Era lo sviluppatore abbastanza intelligente per coprire l’angolo casi?
    • È lo sviluppatore implementazione del multi-threading soddisfacente?
    • Sono gli unit test abbastanza buono? Coprono un numero di casi sufficiente?
    • Il codice è ben scritto e documentato? Qualcuno può essere in grado di mantenere quel codice in futuro?
    • Egli non si cura circa il suo codice? L’ha spiegato perché lo ha fatto “Un” e non “B”?

    Non credo che a breve i test sono in grado di valutare uno sviluppatore. Si può chiedere per uno strumento o tecnologia che qualcuno non state usando in questi mesi, e chiunque è in fase di test per la tecnologia avrà bisogno di qualche tempo per arrivare fino a velocità, ma se uno sviluppatore è stato lavorare con che il giorno prima, lui saprà a memoria come usarlo, e lui/lei sembra più intelligente di altri sviluppatori, ciò che non può essere vero.

    Ma se chiedi qualcosa che è difficile e si sta intervistando lo sviluppatore, è possibile controllare come sta andando a risolvere il problema – io non credo che davvero le cose, se lui/lei non può ottenere il 100% risposta giusta, fino a quando lui/lei può parlare di problemi che hai trovato sul codice e vedi che effettivamente imparare tutto ciò che è spiegato.

    • 48 ore voglio dire davvero??
    • Che cosa vuoi dire? Che non è abbastanza tempo, o che è troppo tempo?
    • secondo me è troppo tempo!!!
  7. 1

    In passato abbiamo utilizzato i problemi da Google code jam. i problemi nei primi giri sono più facili, e diventano progressivamente più difficile. Essi sono di tipo algoritmico, in natura, si possono risolvere in qualsiasi lingua. Come ottenere di più c’è spesso un evidente ‘forza bruta’ tipo di risposta che non funziona a causa della dimensione dei dati. Quindi bisogna pensare a qualcosa di più che ottimale.

  8. 0

    Il primo test che mi hai consigliato dovrebbe prendere 10min-40min una base di dev – vorrei utilizzare un web-crawler che ho nella mia biblioteca che converte in HTML a XML quindi facilmente utilizzare Linq to XML.

    Farei il test per le espressioni lambda, prestazioni di modelli di mantenere i file, o la scrittura di un oggetto di diversi file in modo dinamico.

    Forse si vorrebbe provare unmanged codice, puntatori, ecc.

    Io donno, im solo la scrittura-jabbering, mentre le cose sono comin up per la mia mente, ho scritto le cose che è stato difficile per me da implementare.

    • Che è esattamente il tipo di soluzione che stiamo sperando di vedere! Ma invece di risolverlo, che tipo di test si aggiunge, per verificare la conoscenza dello sviluppatore? Qualcosa di base (non troppo di base) e .NET specifici. Tutte le idee?
    • Se stai cercando cose di base penso che la scrittura di file, LINQ comportamenti sarà un buon test. Ma nota, si potrebbe chiedere a lui di scrivere 10 righe di codice di quello che vuole e quindi verificare se il suo schema di codifica senso. stringa x; x = “aaaaa”; Che non è quello che stai lookin per… ti ho dato un duro esempio, ma penso che mi avete capito.
    • Che è quello che sarò io a cercare dopo. E im abbastanza duro quando si tratta di utilizzo di codice al meglio. Ma LINQ è un buon suggerimento! Probabilmente reviele un sacco di cose 🙂
    • lieto di essere stato utile, buona fortuna con il tuo compagno…
  9. 0

    pochi giorni fa sono stato invitato a passare di programmazione C# prova a skillbox sito c’era di 30 domande a quiz e 45 tempo per passare. Qui di seguito alcuni di loro:

    1) Ciò che verrà stampato eseguendo il programma?

     
    #if DEBUG 
    Console.WriteLine("DEBUG"); 
    #else 
    Console.WriteLine("VERSIONE"); 
    #endif 
    

    2) Quale sarà il risultato della chiamata SomeMethod():

     
    public static void SomeMethod() 
    { 
    string s1 = "a"; 
    string s2 = "b"; 
    Swap(rif s1, rif s2); 
    Console.WriteLine(s1); 
    Console.WriteLine(s2); 
    } 
    
    public static void Swap(ref Oggetto a Oggetto di riferimento b) 
    { 
    Oggetto t = b; 
    b = a; 
    a = t; 
    } 
    

    Ecco un link di riferimento, penso che si possa trovare più C# quezzes ci http://skillbox.io

Lascia un commento