Joel on Software

Joel a szoftverről szoftvermenedzsment egyszerűen

 

Joel lapja

Gerilla magyar fordítások

Hivatalos fordítások

 

Az interjúztatás gerilla-taktikája

Írta: Joel Spolsky (2000. március 23.)
Fordította: Nagy Balázs (2004. július 13.)
Lektorálta: Berta Krisztián (2004. szeptember 23.)
Az eredeti cikk

A Fog Creek Software-nek roppant fontos, hogy a megfelelő embereket vegye föl. A skála egyik felén vannak a mosdatlan tömegek, akiknek még a legalapvetőbb képzettségük sincs meg a munka elvégzéséhez. Ezeket könnyű kirostálni, elég csak ránézni az önéletrajzukra, és kérdezni tőlük egy-két gyors kérdést. A másik végpont a ragyogó elmék, akik Lisp értelmezőt írnak szórakozásból egy hétvégén, assembly-ben, Palm Pilot-ra. Aztán ott van a közepe, a rengeteg „talán”, akik úgy tűnik, épphogy hozzá tudnak nyúlni valamihez. Az a trükk az egészben, hogy észrevedd a különbséget a ragyogó elmék és a talánok között, mivel a Fog Creek Software-nél csak a ragyogó elmékre van szükség. Van is erre néhány technika.

Előszöris az egyes számú követelmény a Fog Creek-nél:

Ügyes, és
meg tudja oldani a feladatot.

Ez az egész. Csak ennyire van szükségünk. Memorizáld. Ismételgesd magadban minden este, mielőtt elaludnál. Olyan ember felvétele a célunk, akiben megvan a rátermettség, nem valami megadott tudáshalmaz. Szinte az összes tudáshalmaz elavul néhány éven belül, amit az ember az új munkahelyére hoz. Szóval inkább olyat vegyél fel, aki képes bármilyen új technológiát megismerni, mint olyat, aki most rögtön tud SQL-ben programozni.

Az ügyességet nehéz meghatározni, de néhány lehetséges interjúkérdéssel meglátjuk, hogy tudjuk kiszűrni. A feladatok megoldásának képessége szintén alapkövetelmény. Azok, akik ügyesek, de nem tudják megoldani a feladatot, gyakran rendelkeznek doktori címmel, és nagy cégeknél dolgoznak, ahol senki sem figyel rájuk, mivel egyáltalán nem praktikusak. Inkább rágódnak elméleti dolgokon, minthogy időre kész legyenek. Ezeket az embereket könnyű észrevenni, mert szeretnek hasonlóságot észrevenni homlokegyenest ellentmondó elgondolások között. Például olyanokat mondanak, hogy „a számolótáblák tulajdonképpen a programozási nyelvek egy speciális formája”, majd elnyammognak egy hetet a számolótáblák és az elméleti számítástechnikai nyelvezet összefüggéseinek megrázó, brilliáns tézisbe foglalásával. Ügyes, de semmi gyakorlati haszna nincs.

Aztán azok, akik meg tudják oldani a feladatot, de nem elég ügyesek, sok hülyeséget is megcsinálnak, látszólag át sem gondolva azokat, hogy aztán valaki más rendet rakjon utánuk. Ezek kárt okoznak a vállalatnak, mert ők nem hogy nem vesznek tevékenyen részt a munkában, de még hátráltatják is a jó emberek munkáját. Ezek képesek másolgatni hatalmas programrészleteket ahelyett, hogy az egészet beraknák egy szubrutinba. Végülis így is el lesz végezve a munka, bár nem a legügyesebben.

Az interjúztatás legfontosabb szabálya:

Dönts

Az interjú végén már tudnod kell, hogy mit akarsz a jelölttől. Csak két lehetséges eredménye lehet a döntésnek: felveszed, vagy nem veszed fel. Menj a számítógépedhez, és írj azonnali választ a felvételizőnek. Az e-mail első sora legyen felveszünk vagy nem veszünk fel. Aztán írj kb. két bekezdést döntésed megtámogatandó.

Nincs más lehetséges válasz. Sose mondd azt, hogy „Felveszünk, de nem a mi részlegünkbe”. Ez durva, és azt sugallja, hogy a jelentkező nem elég ügyes ahoz, hogy veled dolgozzon, de annyira azért még igen, hogy egy másik, gyengébb csapatba bekerülhessen. Ha úgy érzed, mégis azt kéne írnod, hogy „felveszünk, de nem a mi részlegünkbe”, egyszerűen fordítsd le mechanikusan „nem veszünk fel”-re, és így rendben is van. Még ha a jelentkező egy megadott dologban tökéletes is lenne, de nem lenne jó más dolgokban, ne vedd fel. Az ilyeneknek nem lenne jövője a Fog Creek-ben.

Sose mondd, hogy „Talán, nem tudom megmondani”. Ha nem tudod megmondani, az azt jelenti, hogy nem veszed fel. Ez sokkal egyszerűbb, mint hinnéd. Nem tudod eldönteni? Csak mondj nemet! Hasonlóan, ha rezeg a léc, ne vedd fel. Sose mondd, hogy „úgy gondolom felveszünk, de azért aggódom amiatt, hogy…”. Ez is egy ne vedd fel eset.

Ne felejtsd el azt a fontos dolgot interjúztatáskor, hogy sokkal jobb nemet mondani egy jó jelentkezőre, minthogy igent mondanál egy rossznak. Egy rossz jelentkező sok pénzedbe, erőfeszítésedbe fog kerülni, nem beszélve a kollégái többletmunkájáról, amit a rossz munka után kell végezniük. Szóval ha bármilyen kétséged felmerül, ne vedd fel.

Az interjúztatáskor ne törődj azzal, hogy sok embert fogsz elutasítani, és így a Fog Creek sosem lesz képes megtalálni bárkit is, akit felvehet. Ez nem a te problémád. Ez a munkaerőtoborzó problémája, a HR problémája, Joel problémája, de nem a te problémád. Kérdezgesd magadtól, hogy melyik a rosszabb – ha egy nagy, órmótlan szoftvercéggé válunk sok semmirekellővel, vagy kicsik maradunk, de megtartjuk jó minőségünket? Természetesen az fontos, hogy jó jelentkezőket találjunk és mindenki feladatának érezze, hogy ügyes, problémát megoldani képes embereket kutassunk fel és alkalmazzunk. Ám mikor épp interjúztatsz, tégy úgy, mintha a Fog Creek-nek rengeteg jó jelentkezője lenne. Sose ereszd lejjebb a lécet, akármilyen nehéznek tűnik jó jelentkezőket találni.

De hogy hozd meg ezt a nehéz döntést? Csak kérdezgesd magadtól: ügyes ez az ember? Vajon meg tudja oldani a feladatokat? Hogy ezekre válaszolni tudj, a jó kérdéseket kell feltenni neki az interjún.

Csupán a móka kedvéért álljon itt a világ egyik legrosszabb interjú kérdése: „Mi a különbség a varchar és a varchar2 között Oracle 8i-ben?” Elég borzasztó kérdés. Nincs bármilyen lehetséges, elképzelhető korreláció az ilyen használhatatlan kvízkérdést megválaszolni képes ember, és az olyan közt, akit a Fog Creek fel kívánna venni. Kit érdekel, mi a különbség? Az egészet kb. 15 másodperc alatt megkeresheted a hálón!

Tulajdonképpen vannak ennél rosszabb kérdések is, de azt inkább csak később.

El is érkeztünk a legizgalmasabb részhez, az interjú kérdésekhez. Az én interjú kérdéseim a Microsoft-os első munkámból adódnak. Ezernyi ismert Microsoft interjúkérdés van. Mindenkinek megvan egy csokorral abból, amit szeret. Te is kifejlesztesz majd egy saját kérdéscsokrot és interjú stílust, ami a felveszem / nem veszem fel kérdést segíti eldönteni. Íme néhány technika, amit eredményesen használok:

Az interjú előtt elolvasom a jelentkező önéletrajzát, és leskiccelem az interjú tervet egy papírfecnire. Ez csak egy kérdéslista, amit meg akarok kérdezni. Egy programozó esetében általában ilyen a listám:

  1. Bemutatkozás
  2. Kérdés a jelentkező legutóbbi projektjéről
  3. Lehetetlen kérdés
  4. C függvény
  5. Meg vagy elégedve?
  6. Tervezési kérdés
  7. Vitatkozás
  8. Van-e valami kérdése?

Az interjú előtt nagyon, nagyon körültekintően elkerülök bármi előítéletre okot adható dolgot a jelölttel kapcsolatban. Ha az előtt gondolod úgy, hogy egy jelölt ügyes, mielőtt egyáltalán bemennél a tárgyalóba, csak azért, mert a M.I.T.-n szerzett doktori címet, akármit is mond az egy órában, semmi sem fogja túlszárnyalni az előítéletet. Ha azt gondolod, hogy hülye, semmivel sem tudja bebizonyítani az ellenkezőjét. Egy interjú nagyon, nagyon finom mérce – nagyon nehéz egy órás interjúval megítélni bárkit is, mivel a lehetséges értékek nagyon közel esnek. Ám ha már előre tudsz valamit a jelentkezőről, az könnyen elbillentheti a mérleget az egyik irányba, az egész interjút fölöslegessé téve. Egyszer pont interjú előtt a fejvadász bejött az irodába, mondván, „egyszerűen imádni fogod ezt az embert”. Majdnem felrobbantam. Olyasmit kellett volna válaszolnom, hogy „ha annyira biztos vagy benne, hogy imádni fogom, akkor miért nem veszed fel anélkül, hogy pazarolnád az időmet?”. Ám akkor fiatal voltam és naív, és meginterjúztattam. Amikor nem túl ügyes dolgokat kezdett mondani, mondtam is magamban, „ej, hát itt a kivétel, ami erősíti a szabályt”. Mindent rózsaszín szemüvegen át néztem. A végén úgy döntöttem, felvesszük, mégha egész gyenge kis jelölt is volt. Aztán tudod, mi történt? Mindenki más, aki szintén meginterjúztatta, nem vesszük fel-ot mondott! Szóval ne hallgass a fejvadászokra! Ne kérdezd körbe az embert, mielőtt meginterjúztatod, és soha, de soha ne beszélj a többi interjúztatóval a jelentkezővel kapcsolatban, amíg külön-külön meg nem hoztátok a döntéseiteket. Ez a tudományos módszer!

A Bemutatkozás fázisban könnyen kell fogni a jelentkezőt. Kb. fél percben elmondom, hogy ki vagyok, és hogyan fogom interjúztatni. Mindig biztosítom a jelentkezőt, hogy arra leszünk kíváncsiak, hogyan oldja meg a feladatot, nem a tényleges válaszra. Egyébként az interjú alatt mindig győződj meg, hogy nem ülsz az asztal a jelentkezővel ellentétes oldalán. Ez formai akadályt képez köztetek, amitől a jelentkező kényelmetlenül fogja érezni magát. Jobb, ha az asztalt a falhoz állítod, vagy körbemész, és a jelentkező melletti helyet foglalod el. Ez jobb interjút eredményez, mert kevésbé fogja zavarni az idegesség.

A második rész a jelentkező egy nem régi projektjéről szól. Főiskolás gyerekeket interjúztatva kérdezd a diplomamunkájukról, ha már van, vagy egy olyan tárgyukról, amiben olyan hosszabb projektben vettek részt, amit nagyon szerettek. Például néha azt kérdezem, hogy „az utolsó szemeszterben melyik tárgyat szeretted a legjobban? Nem muszály csak számítógépekkel kapcsolatosakra gondolni”. Tulajdonképpen nagyon örülök, ha egy nem számítógépes tárgyat választanak. Néha, mikor bepillanthatsz az órarendjükbe, olyasmiket láthatsz, hogy csak a legkevesebb időt töltenek számítástechnikával, míg minden nagyobb tárgyuk valahogy a zenével kapcsolatos. Ezek után ha azt mondják, hogy az objektumorientált adatbázisok a kedvenc témájuk, hát persze. Ilyenkor jobban örülnék, ha elismernék, hogy jobban szeretik a zenét, mint a számítógépeket, ahelyett, hogy hazudnának.

Tapasztalt jelentkezők interjújánál rákérdezhetsz előző munkájukra.

Ebben a kérdésben egy dolgot keresek: a szenvedélyt. Ha egy friss projektről beszél a jelentkező ezek mind jó jelek:

  • Nagy izgalommal beszélnek róla: egyre gyorsabban beszélnek, és gesztikulálnak. Ez azt jelzi, hogy valami nagyon érdekli őket, szenvedélyesek lesznek a témában. Túl sok ember van, aki anélkül tud dolgozni, hogy érdekelné, hogy mit miért tesz. Még ha ez a szenvedély negatív is, szintén jó jel lehet. „A Foo Bar Mark II-t kellett installálnom az előző munkaadómnál, de ő csak egy pojáca!” Ilyen jó jelentkezőt akarok felvenni. A rossz jelentkezőket egyszerűen nem érdekli, és nem lelkesednek be az egész interjú alatt. Nagyon jó jel, ha a jelentkező annyira belelendül abba, amit mond, hogy egy pillanatra el is felejti, hogy ő éppen interjún van. Néha idegesen jönnek be a jelentkezők, ami természetes is, és nem is veszem figyelembe. De ha aztán ráveszed őket, hogy a számításos monokromatikus művészetről beszéljenek, annyira izgatottak lesznek, hogy az idegesség teljesen eltűnik. Jó. Szeretem a szenvedélyes embereket, akik érdeklődnek (ha látni akarsz egy példát a számításos monokromatikus művészetről, húzd ki a monitorod).
  • Figyelmesen magyarázzák a dolgokat. Utasítottam már el jelentkezőt, mert míg előző projektjéről beszélt, nem magyarázta el mindenki számára érthetően. Mérnökök gyakran feltételezik, hogy mindenki ismeri a Bates tételt, vagy tudják, hogy mik is Peano Axiómái. Ha elkezdik, állítsd meg őket, azt kérvén, hogy „megtennéd-e azt a szívességet, csak a gyakorlat kedvéért, hogy elmagyaráznád úgy is, hogy még a nagyanyám is megértse?”. Ha még ezután is zsargonban beszél, és nem tudja megértetni magát, akár le is fújhatod a meccset!
  • Ha a projekt csapatmunka volt, keresd annak jelét, hogy mennyire vezette a csapatot. A jelentkező pl. mondhatja azt, hogy „X-en dolgoztunk, a főnök Y-t mondott, és a kliens meg Z-t”. Ilyenkor azt kérdezem, hogy „és te mit tettél?” Egy jó válasz ilyesmi lehet: „Leültünk a csapat többi tagjával, és készítettünk egy indítványt…”. A rossz válasz pedig ilyen: „Én semmit sem tehettem. Lehetetlen szituáció volt”. Emlékezz, ügyes, és meg tudja oldani a feladatot. Egész jól meg lehet állapítani valakiről, hogy meg tudja oldani a feladatot, ha a múltban már meg tudott oldani feladatokat. Akár egyenesen még azt is kérheted, hogy mondjon példát a közelmúltból, amikor átvette a vezetést, és megoldott valamit – például felülkerekedve az intézményes tehetetlenségen.

A harmadik sor a lehetetlen kérdésről szól. Ez megint csak egyszerű. Az ötlet az, hogy olyat kérdezz, amire nincs lehetséges válasz, csak hogy lásd, hogy oldja meg a feladatot. „Hány szemvizsgáló szalon van Seattle-ben?” „Hány tonnát nyomhat a Washington Szobor?” „Hány benzinkút van Los Angeles-ben?” „Hány zongorahangoló van New York-ban?”

  • Ügyes jelentkezők észreveszik, hogy nem a tudásukra vagy kíváncsi, és izgatottan ugranak neki a kapcsoltam-kérdés kiokoskodásának. „Tegyük fel, hogy LA körülbelül 7 millió lakost számlál. Mindenkinek kb. 2,5 autója van…”. Persze semmi baj, ha nagy bakot is lőnek. A lényeg az, hogy lelkesen válaszoljanak. Talán a benzinkút kapacitását kezdi el találgatni. „Legyen 4 perc egy teljes tankolás, működjön tíz kút, és legyen nyitva mondjuk 18 órán keresztül…”. Lehet, hogy a terület alapján próbálják kiszámolni. Időnként meg fogsz lepődni találékonyságukon, vagy kérni fognak egy Los Angeles yellow pages-t. Mind jó jel.
  • A nem annyira ügyes jelöltek nyugtalanok és csalódottak lesznek. Csak bámulnak rád, mintha a Marsról jöttél volna. Ilyenkor támpontot kell adnod: „Mondjuk egy új várost kell építened, ami körülbelül Los Angeles méretű lenne. Hány benzinkutat telepítenél bele?” Aztán kis ötleteket is adhatsz: „Mennyi ideig tart egy teljes tankolás?” A nem ügyes jelentkezők még így is bután néznek rád, azt várva, hogy mentsd meg őket. Ezek az emberek nem problémamegoldók, és nem akarunk ilyen embereket foglalkoztatni.

Programozási kérdésekre rövid programot iratok a jelentkezőkkel C-ben. Íme néhány tipikus kérdés:

  1. Fordíts meg egy stringet helyben
  2. Fordíts meg egy láncolt listát
  3. Számold meg az egyes biteket egy bájtban
  4. Bináris keresés
  5. Keresd meg a string leghosszabb egybefüggő részét
  6. atoi
  7. itoa (ez nagyon jó, mert szükség van stack-re vagy strrev-re)

Ne akarj olyan feladatot adni nekik, amit több, mint öt sorban kell leírni: nincs elég időd arra.

Lássunk néhányat részleteiben. Vegyük például az elsőt: szövegmegfordítás helyben. Akit csak eddig interjúztattam, elsőre rosszul csinálta. Kivétel nélkül helyet akartak foglalni egy másik puffernek, és abba akarták berakni a megfordított stringet. A baj ezzel csak az, hogy ki foglalja le a helyet? Ki szabadítja majd fel? Tucatnyi jelentkezőnek feltéve a kérdést nagyon érdekes tényre lettem figyelmes: a legtöbb C programozó valójában nem érti a mutatókat és a memóriafoglalást. Egyszerűen nem fogják. Igen különös, hogy ezek az emberek programozóként dolgoznak, de ez az igazság. Ezzel a kérdéssel sok mindent lemérhetsz a jelentkezőről:

  • Gyors lett a függvény? Nézd meg, hányszor hívja meg a strlen-t. Láttam már O(n2) algoritmusokat strrev-re, miközben az símán lehetne O(n), csak azért, mert a ciklusban újra és újra meghívták az strlen-t.
  • Használnak-e mutató aritmetikát? Ez egy jó jel. Sok „C programozó” egyszerűen nem tudja, hogy kell a mutató aritmetikát működésre bírni. Én általában nem utasítok vissza egy jelöltet csak azért, mert nincs meg egy bizonyos tudása. Ámde úgy vettem észre, hogy a mutató aritmetika ismerete nem egy bizonyos tudás, hanem adottság. Az informatikus gólyák közt mindig volt kb. 200 kölyök a szemeszter elején, akik mindegyike bonyolult kalandjátékokat írt BASIC-ben még az Atari 800-asukra, négy éves korukban. Aztán megtanulták a jó öreg Pascal-t a fősulin, mígnem egy nap a professzor bemutatta a mutatókat, amit már nem fogtak agyilag. Innentől kezdve egyszerűen nem értettek meg semmit. Az évfolyam 90%-a végül mérnök-menedzser lett, majd azt mondták a haverjaiknak, hogy azért váltottak, mert nem volt jó felhozatal az ellenkező nemből náluk. Valamilyen oknál fogva a legtöbb ember olyan aggyal születik, amiből hiányzik a mutatók megértéséhez szükséges rész. Ez adottság dolga, és nem a tudásé – ehhez duplán indirekt gondolkodás egy bonyolult formájára van szükség, amire a legtöbb ember nem képes.

A harmadik feladatból azt tudhatod meg, hogy mennyire tanulták meg a bitorientált operátorokat C-ben. Ám ez mindenképpen ismeret, és nem adottság, szóval ezen még lehet javítani. Az ebben az érdekes, hogy láthatod, hogyan írja a függvényt, ami megszámolja a biteket egy bájtban, majd megkérheted, hogy sokkal, de sokkal gyorsabban működjön. A nagyon ügyes jelöltek egy adattáblát készítenek (végülis csak 256 elemből áll), amit csak egyszer kell felépíteni. Jó jelöltekkel nagyon érdekes vitába bocsátkozhatsz a különböző hely/sebesség arányokról. Gyakorolj rájuk még nagyobb nyomást: mondd nekik, hogy nem akarsz időt pazarolni az adattábla elkészítésére inicializáláskor. A brilliáns jelentkezők javasolhatják a gyorstárat is, ahol a biteket minden első alkalomkor számolják csak ki. Az eredményt aztán elteszik az adattáblába, és többet már nem kell újra kiszámolni. Nagyon, nagyon brilliáns jelöltek olyan módszert eszelhetnek ki, amivel a táblát valami egyszerűsített eljárással számolhatják ki, bizonyos minták alapján.

Mások kódírásának figyelésekor érdemes figyelembe venni néhány dolgot:

  • Mindig biztosítsd őket, hogy tudod, mennyire nehéz szövegszerkesztő nélkül kódolni, és így megbocsátod nekik, ha a kód rendetlen lesz. Valamint azt is megérted, hogy fordító nélkül igen nehéz hibamentes kódot írni, és ezt is figyelembe veszed.
  • Néhány jel, hogy jó a programozó: a jó programozók a { jel után közvetlenül odaírják a papír aljára a lezáró } párját, az üres helyet később kitöltve. Használnak még változónév-szabályokat is, egyszerű, de talán… a jó programozók rövid neveket adnak ciklusváltozónak. Ha olyan ciklusváltozót írnak, mint CurrentPagePositionLoopCounter, az biztos jele, hogy még nem írtak elég kódot életükben. Néha, amikor azt látod, hogy a C programozó olyat ír, mint if (0==strlen(x)), a konstanst írva bal oldalra, az egy nagyon jó jel. Ez azt jelenti, hogy már rengetegszer belefutott az = és == közötti hibába, és azért vette fel új szokását, hogy mindenképpen elkerülje a csapdát.
  • A jó programozók terveznek kódírás előtt, főleg, ha mutatók is szerepelnek. Például ha azt kéred, fordítson meg egy láncolt listát, a jó jelöltek mindig rajzolnak egy kis ábrát a papír szélére, hogy merre mozognak a mutatók. Mert kell. Emberileg lehetetlen láncolt listát megfordító kódot írni anélkül, hogy kis dobozokat és nyilakat rajzolnál. A rossz programozók azonnal elkezdenek kódot írni.

Elkerülhetetlen, hogy hibát ejtsenek a függvényben. Így elérkeztünk az ötös kérdéshez: Elégedett vagy a kóddal? Már a nyelveden van, hogy „OK, hol lehet a hiba?” Ez a Minden Nyitott Kérdések Horrorának kvintesszenciája. Minden programozó vét hibákat, ezzel nincs semmi baj. Csak meg kell találniuk azokat. A string függvényeknél szinte mindig elfelejtik null-lal lezárni az új stringet. Szinte az összes függvénynél vannak szinte mindig elkövetett hibák. Néha lefelejtik a pontosvesszőt. Függvényük nem működik nulla hosszúságú string-eknél, vagy GPF-ezik, ha a malloc() nem sikerül… Nagyon, nagyon ritka, hogy olyan jelöltet találsz, akinek először sincs hiba a kódjában. Ebben az esetben a kérdés még érdekesebb. Ha azt mondod, hogy „van egy hiba a kódodban”, tüzetesen átnézi a kódot, és a végén kapsz egy diplomatikus, de határozott választ, hogy a kód tökéletes… Általában mindig jó ötlet megkérdezni, hogy elégedett-e a kóddal, mielőtt tovább lépsz. Légy precíz.

Hatodik kérdés: a tervezési feladat. Kérd meg a jelöltet, hogy tervezzen valamit. Az Excel eredeti tervezője, Jabe Blumenthal azt akarta, hogy a jelöltek tervezzenek házat. Jabe szerint voltak olyanok, akik kapásból odaléptek a táblához, és rajzoltak egy négyzetet. Négyzetet! Ezek kapásból nem veszük fel esetek. Tervezési kérdésben mit is keresünk?

  • Jó jelöltek további információkat próbálnak szerzni a problémáról. Kinek kell a ház? Nem veszünk fel olyat, aki nekikezd tervezni anélkül, hogy megkérdezné, kinek is lesz az. Sokszor ez annyira zavar, hogy okozok néhány kellemetlen percet megszakítva mondókájukat azt mondva, hogy „elfelejtetted megkérdezni, de ez a ház egy 14 és fél méteres vak zsiráfcsaládnak kell”.
  • A nem annyira ügyes jelöltek úgy gondolják, hogy a tervezés olyan, mint a festés: van egy üres vásznad, és azt teszel, amit csak akarsz. Az ügyes jelöltek megértik, hogy a tervezés kompromisszumok bonyolult sorozata. Jó tervezői kérdés: tervezz városi utcasarokra szemeteskosarat. Egyszerűen kell tudni kiüríteni, de nehéz legyen ellopni. Könnyű legyen beledobni valamit, de ne fújja ki egy nagyobb széllökés a bedobott szemetet. Legyen stabil, mégis olcsó. Bizonyos városokban külön tervezetteknek kell lenniük, hogy terroristák ne tudjanak bombát elrejteni bennük.
  • Kreatív jelöltek gyakran meglepnek érdekes, nem egyértelmű válaszokkal. Az egyik kedvenc kérdésem a Tervezz fűszertartót vakoknak. Elkerülhetetlen, hogy a fűszerdobozokra Braille-írással rá ne írják a jelöltek a tartalmát, és rendszerint mindenféle okokból kifolyólag a doboztetőre kerül ez a felirat. Ha már százszor feltetted a kérdést, ez egyre nyílvánvalóbbá válik. Volt egy olyan jelöltem, aki azt mondta, hogy jobb fiókba tenni a fűszert, mert sokkal kényelmesebb vízszintesen végigfutni a Braille-n, mint függőlegesen (próbáld ki!). Ez annyira kreatív volt, hogy meglepett – több tucat interjú alatt egyszer sem hallottam ezt a választ. Aztán ez egy valódi kreatív „ugrás” volt a problémán kívülre. Csak ennek a válasznak erősségére, és a negatívumok hiányára alapozva felvettem a jelöltet, aki az egyik legjobb programmenedzser lett az Excel csapatban.
  • Figyeld a döntésképességet. Ez a meg tudja oldani a feladatot része. Néha a jelölt oda-vissza hánykolódik, képtelen döntést hozni, vagy megpróbálja elkerülni a nehezebb kérdéseket. Néha megválaszolatlanul hagy nehéz kérdéseket, és tovább próbál lépni. Nem jó. Jó jelöltekben benne van a tendencia, hogy természetesen haladnak előre, még ha vissza is akarod őket tartani. Ha a beszélgetés kezd körbemenni, és a jelölt olyanokat mond, hogy „nos, erről napokat beszélgethetnénk, de legyen esetünkben X”, az nagyon jó jel.

Ami elvezet a hetes ponthoz, A Vitatkozáshoz. Ez is jó móka. Az egész interjú alatt keress a jelölt állításai közt olyat, amiben teljesen, pozitívan, megkérdőjelezhetetlenül igaza van. Aztán mondd azt, hogy „várj csak egy percet”, és két percig legyél az ördög ügyvédje. Vitatkozz vele, miközben tudod, hogy igaza van.

  • A gyenge jelöltek feladják. Ne vedd fel.
  • Az erős jelöltek megpróbálnak meggyőzni. Nagy repertoárral rendelkeznek Dale Carnegie techinkáiból, hogy lemossanak. „Talán félreértelek”, mondják, de kiállnak igazukért. Vedd fel.

Az interjú kétségkívül nem két egyenlő fél között zajlik. Ezért megvan a veszélye annak, hogy a jelölt fél vitatkozni veled, mivel alacsonyabb pozícióban van. Ám a jó jelöltek elég szenvedélyesek lesznek a vitában, és akár még azt is elfelejtik egy pillanatra, hogy interjún vannak, annyira meg akarnak győzni. Ezeket az embereket akarjuk mi felvenni.

Végül meg kell kérdezned a jelölttől, hogy van-e valami kérdése. Néhányan látni akarják, hogy a jelölt intelligens kérdéseket tesz fel, ami az interjúról szóló könyvek szokványos technikája. Személy szerint nem érdekel, milyen kérdéseket teszek fel. Ekkorra már meghoztam a döntésemet. A baj az, hogy a jelöltek egy nap 5-6 emberrel találkoznak, és nehéz mindegyiknek különböző, brilliáns kérdéseket feltenni, szóval ha nincs kérdésük, az sem baj.

Én mindig hagyok öt percet az interjú végére, hogy eladjam a Fog Creek-et. Ez még akkor is fontos, ha nem akarod felvenni őket. Ha elég szerencsés vagy, és kifogsz egy igazán jó jelentkezőt, mindent meg akarsz tenni azért, hogy a Fog Creek-hez jöjjön dolgozni. Még ha rossz is a jelölt, azt akarod, hogy érdekelje őket a Fog Creek, és pozitív benyomásaik legyenek, mikor elmennek. Gondolkodj erre úgy, hogy ezek az emberek nem csak lehetséges alkalmazottak, de lehetséges vásárlók is. Ők lehetnek a toborzási erőfeszítéseink kereskedői: ha úgy gondolják, a Fog Creek-nél jó lehet dolgozni, barátaikat is rávehetik, hogy jelentkezzenek.

Á, eszembe jutott, hogy megígértem, mondok még néhány példát az igazán rossz, kerülendő kérdésekre.

Legelőszöris kerüld a tilos kérdéseket. Minden fajra, felekezetre, nemre, nemzetiségre, életkorra, katonai alkalmasságra, harci tapasztalatra, szexuális érdeklődésre vagy fizikai fogyatékosságra vonatkozó kérdés tilos. Ha az önéletrajzukban az áll, hogy 1990-ben a hadseregnél szolgált, ne kérdezz rá, még ha csak csevegni is akarsz, hogy részt vett-e az Öbölháborúban. Ez a törvényekkel ellentétes. Ha azt írják az önéletrajzukban, hogy a Technion-on tanultak Haifában, még csak említés szintjén se kérdezd meg, hogy izraeli-e. Ez is törvényellenes. Van egy nagyon jó értekezés a weben arról, hogy mi tilos (de az ott felsorokt interjú kérdések elég idióták).

Aztán kerüld azokat a kérdéseket, amik úgy tűnhetnek, hogy érdekel bennünket, vagy amik diszkriminatív dolgokon alapulnak, ám egyáltalán nem érdekelnek bennünket, és egyáltalán nem zavarnak. A legjobb példa erre megkérdezni valakit, hogy vannak-e gyerekei, vagy hogy házas-e. Ezek hamis benyomásokat keltenek bennük, hogy azt feltételezzük, a gyerekek mellett már nem tudnak elegendő időt szánni a munkájukra, vagy hogy majd elmennek szülési szabadságra.

Aztán végül kerüld az olyan agyra gyúró kérdéseket, mint azt, hogy helyezzen el hat egyenlő hosszúságú gyufát úgy, hogy pontosan négy egyenlő oldalú háromszöget kapjunk. Ezek az ún. „aha!” kérdések, amiből az „ügyes / meg tudja oldani a dolgokat” kérdésekre nem tudsz válaszolni, pusztán arra, hogy képes volt-e a mentális ugrásra.

Az interjúztatás inkább művészet, mint tudomány, de ha nem feleded az ügyes / meg tudja oldani a dolgokat alapelvet, már egész jól állsz. Ha alkalmad van rá, kérdezd meg egy munkatársadat, hogy mik a kedvenc kérdései, és hogy milyen válaszokat várnának. Redmondban, a 16. épület ebédlőjében ez a társalgás állandó témája.


Joel lapja | Fog Creek Software | Hibakövetés | Tartalomkezelés | Személyes oldal | Archívum
Ezen oldalak egy személy véleményét tükrözik.
Minden itt megjelent tartalom Copyright© 1999-2004 Joel Spolsky. Minden jog fenntartva.