Állásinterjú - felvételi teszt

Nyilván nem pont a cégek vagy egy adott cég által használt felvételi feladatlapokat szeretném beszerezni, de érdekelne, hogy Java fejlesztői vonalon lehet találni valahol ilyen "gyűjteményt"? Sok meglepetés ért már ezeken a teszteken, tehát nyilván valamelyest, részben ismerek már kérdéseket, azonban mint tudjuk mindig lehet újat mutatni.

Hozzászólások

Itt találhatsz egy csomó Java-s interjúkérdést:
http://bfy.tw/99Z

Nekem ez egy tök hasznos oldal volt, amikor ilyet kerestem.

Torolve, latom ugyanezt belinkeltek mar. :D

----------------------
"ONE OF THESE DAYS I'M GOING TO CUT YOU INTO LITTLE PIECES!!!$E$%#$#%^*^"
--> YouTube csatornám

Nem tudom, milyen szinten (junior, senior, etc.) érdekel. Személyesen juniorként voltam 2-3 interjún, azokról tudok mesélni.

Effective Java, és Java Puzzlers mindenféleképpen. Kaptam már belőle interjúkérdést. (főleg az utóbbiból szeretnek kérdezni, de szerintem az előbbit is érdemes egyszer végigolvasni.)

Továbbá nekem személyes véleményem, hogy nem szabad engedni, hogy bevigyenek a káoszba. Például jött már szembe ilyen, interjún, hogy:


Set set = new HashSet();
for(short s = 0; s < 100; s++) {
    set.add(s);
    set.remove(s - 1);
}

System.out.println(set.size());

A kérdés, mit ír ki a végén a sor.
Az első gondolatom azt volt, hogy nekem nem tetszik a nyers generikus használat, de erre azt mondták, hogy jah, jó észrevétel, de ne írjuk ki a generikus típust - s itt elengedtem azt, pedig a fordító le se fordítaná a kódot, s onnantól triviális a megoldás. Őszintén bevallva, így nem esett le az interjú-stressz alatt.

Ezenkívül volt többszálú környezetben, synchronized-es móka, s abban bugkeresés. De voltam már olyan helyen is, ahol azt mondták, írjak valaki egyszerű UI-t, ahol a felhasználó egy input-textbe számokat üthet be, s azok megjelennek alatta egy táblázatban.

szerk.: mindezek mellett gyakorlás, gyakorlás, gyakorlás. saját projekt, valami, ami érdekel. ott úgyis előjön ezeknek a többsége, s sokkal-sokkal többre fogja bárki értékelni, mintha csak megtanulnál 100 interjúkérdésre a sablonválaszokat.
--
blogom

elírtam a kódot elsőre, így helyes. szóval lehet, hogy nem valid a kérdés. (sry)

Másrészt, ha kirakod a

Set<TÍPUS>

után a generikus típust (és nem

Object

-et, vagy

? extends Number

-t, hanem valami értelmeset írsz oda), akkor nem fordul le a kód.

kérdezhettem bármit, arra válaszoltak - ha dokumentáció jellegű, vagy implementációs kérdés lenne. olyan szempontból nem rossz példa, hogy meg lehet figyelni, hogyan oldanál meg egy problémát, pl.:

én: megnézném a dokumentációt
ő: ott ezt találod
én: erre, meg erre mennék tovább
...

azt nyaltam be, hogy engedtem, hogy az egyszerű segítséget (rakjuk ki a típust, s a fordító adjon több infót) hagytam elvetni.
--
blogom

"Valójában szinte mindent csak pár kattintás megnézni vagy találni rá egy példát"
Sajnos nem egészen. Mondjuk jó kódstruktúrát, architektúrát, kódszervezést, modularizálást nem fogsz pár kattintás után megtanulni. Pedig ezt kéne állásinterjún kérdezni, ez inkább dönt a hozzáértésről, mint az, hogy mennyire tudsz fejből egy API-t.
Az API-k olyanok, mint az évszámok a történelemben. Tényanyagok. De attól még nem fogod érteni a történelmet, hogy tudod, mi mikor történt.

Mondjuk ezeket egy junior pozícióhoz elvárni elég nagy ugrás lenne az egyetemi oktatáshoz, ahol DFA/NFA-val, hátizsák feladatokkal, esetleg Turing gépekkel foglalkozunk szakmai tárgyak alatt. Persze szabadidőben gyakorolni kell, csak azért minden nem fér bele, hiába.

Junior pozícióban is lehet kérdezni junior szinten lévő architekturális ismereteket, például alapvető tervezési mintákat. Vagy mondjuk egy nagyon alapszintű code review, ahol mondja el, milyen hibákat lát a program felépítésében. Vagy mondjuk meg lehet kérni alapszinten kódírásra, amihez nem kell komoly API ismeret (sőt, mondjuk tetszőleges nyelven is megírhatja). Tipikus példa a FizzBuzz. Vagy mondjuk bármilyen más alap programozási probléma lekódolása.
Hiszen nem annyira az a kérdés, hogy értesz-e egy API-hoz, hanem az, hogy tudsz-e szoftvert fejleszteni.

API-t kérdezni csak annyit jelent, hogy tapasztalt vagy-e egy adott technológiában, de semennyire nem méri azt, mennyire vagy jó szoftverfejlesztő.
Az API teszt arra jó, hogy ha te mondjuk expert XYZ technológiához értőt keresel (mert mondjuk előírás, hogy XYZ technológiával kell megoldani valamit, és hiányban vagy), akkor ki tudd szűrni a kevésbé tapasztaltakat.

Mindkétfajta interjúkérdésnek van célja, csak mást mér.