Come rispondi alla domanda "Spiega l'architettura attuale del tuo progetto" nelle interviste? [chiuso]


10

L'applicazione su cui sto lavorando attualmente è un po 'enorme. Non può essere spiegato in circa 15 minuti.

L'ultima volta ho finito per disegnare alcuni diagrammi di classe e come sono collegati, ma ho potuto vedere che l'intervistatore non era contento della risposta.

Quali sono le cose principali che dovrebbero essere evidenziate quando si risponde a questa domanda?

Ad esempio, come viene gestita la sessione, come si raggiunge la persistenza sono poche cose.

Quali sono le altre cose da non perdere?


2
Siamo spiacenti ma è attualmente coperto dalla NDA. I miei precedenti progetti sarebbero stati soddisfacenti?
SF.

Se non riesci a spiegare l'architettura di alto livello in 5 minuti, allora non hai l'architettura. Hai una grande palla di fango.
Euforico,

Risposte:


16

Personalmente penso che andrai in profondità (per un'intervista) se inizi a disegnare diagrammi di classe, a meno che non lo chiedano.

L'ultima volta che ho avuto questa domanda ho finito per disegnare i diversi livelli (app a 3 livelli), ho spiegato come sono stati mappati gli assemblaggi (perché secondo me questo era qualcosa di "strano" per il progetto), in quale direzione i livelli avevano dipendenze e il direzione del flusso di dati.

Puoi approfondire componenti specifici se ritieni di doverlo fare. Ma non sono mai andato molto più in profondità di "abbiamo usato Workflow Foundation per questa parte della logica aziendale, per questo motivo". Questo mi ha dato la possibilità di sottolineare che abbiamo usato una certa tecnologia utilizzata , senza perdere tempo con cose banali come semplici oggetti POCO.

Più importante è mostrare che hai capito l'architettura e perché è fatto così. Ancora meglio è sottolineare i punti di miglioramento (se possibile) e spiegare perché. Se invece pensi che il design sia "perfetto", puoi indicare una parte particolare del design che non sembra logica per un outstander e spiegare perché si adatta a questo progetto.


Concordato. Ho praticato il mio discorso di cinque minuti su familiari e amici a caso. Immagino che nessuno di loro sia particolarmente esperto nell'informatica rispetto al reclutatore o al responsabile delle risorse umane medio.
Christopher Bibbs,

14

Se non sei in grado di fornire una panoramica di alto livello dell'architettura del tuo progetto o di spiegare il progetto in 5 minuti (per non parlare di 15) a qualcun altro, allora molto probabilmente il motivo è che sei troppo vicino alla superficie del carbone.

Devi prendere una certa distanza, così puoi vedere il tuo lavoro come lo vedrebbero gli altri. Proprio come un pittore, allontanati e guarda il tutto. Quindi vedrai quali sono le cose importanti in una panoramica di 5 minuti.


3

Tutte queste risposte sono eccezionali, ma ho notato che un diagramma di componenti di livello molto alto, un elenco dello stack tecnologico (ad esempio Java, JSF, Primefaces, ecc ...) e un sorriso fiducioso e un atteggiamento aperto sono i migliori rispondere a questa domanda.

Se non stai sorridendo o sei anche un po 'eccitato quando spieghi l'architettura del tuo progetto attuale, l'intervistatore potrebbe vederti distaccato e disinteressato al tuo duro lavoro. Mi comporto entusiasta e ne parlo come penso che sia la cosa "più bella" del mondo e che dia l'intervistatore sorridente e a suo agio, e inizia a porre domande più dettagliate.


2

Pensa a rispondere a questa domanda come se lo spiegassi a un cliente. Il tuo cliente non si preoccupa dei dadi e delle viti che vuole solo conoscere la struttura generale.

Allo stesso modo, l'intervistatore vuole solo che la visione d'insieme veda da che tipo di ambiente vieni e come si correla al proprio progetto. Non vogliono farti parlare del tuo progetto e non dovresti mostrare diagrammi di classe nell'intervista.

Quindi dai loro una panoramica di 10.000 miglia dell'architettura. Se vogliono maggiori dettagli su qualcosa, lo chiederanno. Quindi inizia ad andare più in profondità.


1

Inizia dal livello più alto che puoi e procedi. Vorrei iniziare con uno schema a blocchi funzionale di base sulla lavagna. Ricorda che l'intervistatore (si spera) sarà tecnicamente qualificato, ma non sa nulla del tuo progetto.

Qualunque sia il progetto, dovresti essere in grado di tracciare uno schema dell'operazione di base in pochi (<10) blocchi. È quindi possibile espandere i blocchi che si conoscono bene e aggiungere ulteriori dettagli. Ad esempio, menzioni la persistenza: potrebbe trattarsi di un singolo blocco nel primo diagramma, ma può coprire un'intera lavagna se devi approfondire i dettagli.

Se stanno chiedendo informazioni sull'architettura, si aspetteranno una visione d'insieme per vedere se in realtà sai come si adatta insieme o se hai appena lavorato su un piccolo pezzo del progetto. Assicurati di fornire questo prima di iniziare il drill down su una piccola area.

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.