Vigasztaló a világ ellen - beágyazott bloop - közepes
Hogyan lehet az interjúban megkülönböztetni egy meredek szakembert a félelmetes bullshittertől vagy a haszontalan szeszesitaloktól? A sok interjúra készült módszerek: házi feladat, jegyzetfüzet programozás, tesztproblémák, mesélj magadról szórakoztatás me 2 percig, így vettem, hogy a munka, de szinte minden vállalat, ahol jártam sobesedovatsya, az egyik vagy másik formájában kérték rejtvények vett Quizful. Ma arról beszélünk!
- Milyen mintát lát ebben a kódban?
- Csak vért látok! Vér!
- Ok, próbáljuk ki a következő kérdést
Miért bérelünk embereket egyáltalán? Például, van egy testüzletünk, és minden olyan jelölt, aki megkülönbözteti egy tömböt a naplózótól, napi + 500 dollárt hoz. Vagy komoly cég vagyunk és szükségünk van rá, hogy átmehessen az arcfelügyelettel (a szoftvereket az emberek öltözködve írják). És talán keressük azokat. egy vezető, aki kódokkal trükköket mutathat.
De azt mondjuk, hogy olyan Java fejlesztőt keresünk, aki valódi szoftvert ír majd (nos, valódi, ami működik és valakinek szüksége van rá). Szeretnénk, hogy ha ez megoldja a valós problémákat povsednevnevnye, valamint hogy elkerüljék a helyzet, mikor kell hívni egy vízvezeték-szerelő azonnal válaszolt, amely szerint GOST nyomás a 3/4”, majd elővette a rozsdás pasatizhi lecsavarni a csapot, a víz lesz képes blokkolni a felejtés.
Néhány probléma megoldódik magukat specificitása nyelv - erősen típusos, automatizálása minden, ami lehetséges, és a tesztelés. Minden az ő képességeit: a számítógép nem amit csinál a legjobban, mint egy ember, és az ember - az összes többi (turmixok, kávé, rock'n'roll).
Az interjúk azonban gyakran a "Kasparov vs Deep blue" stílusában zajlanak. Vegyünk néhány példát erre az egyenlőtlen küzdelemre.
Ezt megadják. 120 kérdés a kvízes "Java alapok" tesztből.
Cél. Határozza meg, ki fogja megoldani ezeket a kérdéseket a való életben.
Lehetséges válaszok:
- A fordító és / vagy IDE - amikor az IDE nem rossz tanácsot, és a fordító lehetővé teszi, hogy a legtöbb erős gépelés és megtalálja az összes hibát, mielőtt lett volna ideje, hogy kapcsolja be az agyba
- Refactoring - amikor a kódot könnyebben átírni, mint megérteni, hogyan működik
- Egységvizsgálat - ha a kódot már átírták, de még mindig semmi sem világos, és támaszkodni a módszer figyelmet szigorúan
- Egy személy - ha semmi sem segített, vagy éppen ellenkezőleg, a törpék olyan egyszerűek, hogy akár egy személy azonnal láthatja a helyes választ
Minden kérdésre több osztályozási lehetőség is lehetséges.
Játszunk a fordítóban
U a Refactoring esetében
Amit látok. Két tevét repülünk - egy piros, a másik pedig balra. Mennyibe kerül egy kilogramm aszfalt, ha a sün 24 éves?
Korunkban a skizophia megtalálható:
- pszichiátriai kórház
- funkcionális követelményeket
- kérdések az interjúban
- régi kód
Az utóbbi esetben a refactoring és a tesztelés segítséget nyújt.
Tegyük fel például, hogy a fenti példa nemcsak csekélynek tűnik, de rosszul működik. Például írnia kellett "578" -t. Őszintén szólva, azt szeretné, ha a kollégája a következőképpen javítaná:
A besorolás lefolytatása:
Vegye ki a problémát, és lássuk, hogyan oldja meg a problémát az életben lenne írás teszt kód nem lenne másolni, támaszkodott IDE utasításokat, vagy csak egyenesen látná magát a problémát.
Ennek eredményeképpen a kérdés a következő volt:
- A válaszhoz szüksége van egy személyre - ha más lehetőségek nem működnek. Alapvetően olyan kérdésekre derült fény, mint például: "melyek a hozzáférés-módosítók". Igen, tesztet írhat, de az életben azt feltételezzük, hogy a választ azonnal meg kell adni.
- A válaszhoz egy személynek nincs különösebben szüksége - amikor tesztet vagy refaktort írhat, de szemmel is látja a problémát (például egyszerű típusrészletek
vagy egy egzotikus elmélet, például a túlterhelt összeg (szám) és az összeg (egész szám) módszerek). - Válaszolni nem kell egy ember, amikor a kód már elég zamorochennye, err - egy szelet tortát, és az életben, amikor a termelés a tét, mi lenne őszintén töltött idő legalább debug.
A tesztek népszerűségét egyszerűen megmagyarázhatja az eredmény ellenőrzésének egyszerűsége, de ha egy kissé eltérő "eredményre" vagyunk kíváncsiak, azt javaslom, hogy keressen jobban a részleteket.
Például megkérheti a jelöltet, hogy írjon teszteket egy adott kódra, és nézze meg, milyen határeseményeket fog ellenõrizni. Vagy adj egy refactort egy osztálynak vagy egy módszernek. Ellenkező esetben holnap, jelöltje megy dolgozni és azt mondja: "Mi van a refactorhoz?" A normál kód. Mindig ilyeneket írok. "