Elérés álmaid állásához: 10 pont a HackerRank Challenge legyőzéséhez.

Sara Choi
Sara Choi

Follow

Február 5, 2018 – 3 min read

Egyre több vállalat használja a HackerRank kihívást a mérnökjelöltek feldolgozásához. Ha nem ismered a HackerRankot, akkor az olyan versenyképes programozási kihívásokat kínál, ahol a fejlesztők úgy versenyeznek, hogy megadott specifikációk szerint próbálnak programozni. A résztvevők beadványait a kimenet pontossága alapján osztályozzák.

A természetéből adódóan számos problémával jár, ha a vállalat túlságosan a HackerRankre támaszkodik a szűrés során. A HackerRank olyan, mint a szabványosított teszt – inkább a “vizsgaképességedet” teszteli, mint az érdemi tudásodat.

Belebotlottam egy Linkedin cikkbe, amely ékesszólóan megfogalmazta a HackerRank (egyik) fő hátrányát (hátrányait):

Az én tanulságom mindebből az, hogy a HackerRank rossz mutatója egy fejlesztő problémamegoldó képességének, és mint oly sok ilyen dolog, csak egy dolog értékelésére igazán jó, nevezetesen arra, hogy a jelölt mennyire jó a HackerRank tesztek kitöltésében. – Be ware of HackerRank, Richard Linnell

Ugyanez vonatkozik a Kaggle-re is. Épp most beszéltem egy jelölttel arról, hogy jóval az átlag feletti kihívást teljesített anélkül, hogy valójában egyáltalán értett volna az adattudományhoz.

Még sok más cikk is foglalkozik a HackerRank használatának hátrányaival (köztük egy arról, hogy a HackerRank (és más hasonló platform) használata hogyan teheti tönkre az esélyét annak, hogy jó vezető fejlesztőt vegyen fel).

Ezzel együtt érthető, hogy a vállalatok miért fogadják el ezt a kezdeti teszteléshez: gyors, a legkevésbé költséges és kiszűrheti azokat, akik nem is vesződnének vele.

Mivel ez továbbra is megmaradna és valószínűleg tovább fog nőni, mint a vállalatok tehetségek szűrésének módja, a csapatunk összeállított egy listát azokról a dolgokról, amelyeket megtehetsz, hogy felkészülj a HackerRank kihívásra:

  1. A kihívások időzítettek, győződj meg róla, hogy nem vagy zavart és koncentrálsz.
  2. A sikered 20-30%-a a rendszer ismeretéből ered. Mielőtt belekezdenél a tényleges kódolási kihívásba, próbálj ki mást, pl. algoritmusok bemelegítését. Győződjön meg róla, hogy tudja, hogyan kell végrehajtani és beküldeni a kódját.
  3. Ismerje meg a teszthez megengedett programozási nyelveket. Ha az Ön által választott nyelv nem áll rendelkezésre, gyakoroljon egy másikat.
  4. Minden kihívásban általában több problémát kell megoldani, és hiba a legnehezebbel kezdeni. Jó megközelítés, ha a feladatokat növekvő nehézségi/időbeli sorrendben oldjuk meg. Először olvassa el őket röviden, és döntse el a megvalósítás sorrendjét.
  5. Próbálja minimalizálni a problémák közötti váltási időt a megvalósítás után. Több időt fordíthatsz arra, hogy megbizonyosodj arról, hogy ez egy “végleges” megvalósítás, és ne térj vissza hozzá újra.
  6. Minden problémának vannak nyilvános és privát tesztesetei. A pontszámod mindkettőn alapul. Ha a kód megvalósítása átment az összes nyilvános teszteseten, az nem jelenti azt, hogy átmenne az összes privát teszteseten. Gondolj élhelyzetekre, pl. üres bemenet, egy elemes bemenet, két elem, sok elem, stb. A HackeRank környezet lehetővé teszi a kód futtatását az egyéni teszteken.
  7. Minden problémára legalább valamit küldjön be. Könnyű rögzíteni néhány pontot akkor is, ha nem tudja, hogyan kell megoldani a problémát. Ha azonban nem tudja, hogyan oldja meg az összes problémát, próbáljon meg legalább egyet kitalálni.
  8. Az otthoni felkészülés sokat számít: néhány sablon segíthet, mivel a kihívás során copy-paste módon beillesztheti őket. Például BFS/DFS/Bináris keresés.
  9. Előbb gyakorolj, amennyit csak tudsz. Minden algoritmikus részterületről megpróbálhatsz legalább egy feladatot megoldani.
  10. A jó eredmény nem varázslat, hanem gyakorlat és verejték.

Az erő legyen veled! 💪

Bónusz:

  1. Hogyan szerezd meg a legjobb gépi tanulási jelvényt a HackerRankon (a mi Kirill Pavlovunk által!)
  2. Cracking the HackerRank Test: 100% score made easy – the HFT guy .

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.