CommitStrip.com

Po třech letech jsem se rozhodl změnit práci. Oběhal jsem pár firem, máte-li zájem, tak se na násle­dujících řádcích podělím o své zkuše­nosti a podám zprávu o stavu IT trhu. Líčení je to značně subjek­tivní, zúžené na svět Javy, ale dost možná platí i pro vás.

Tak za prvé, práce je mraky. Paradox volby: je takových možností, že si nebudete moc vybrat. A i kdybych se deset­krát naklo­no­val, tak všechny klony zaměst­nám. Nicméně firmy zájemce pečlivě přebírají. Nesetkal jsem se s tím, že by najímaly, tak jako někdy dříve, každého z ulice (ale může to být zkres­lené mým předvýběrem). Tím, že máte možnost si vybrat, apeluji na vaši morálku: Zvažte, pro koho chcete dělat. Třeba loterijní společnosti?

Kde vzít práci

Jestli trochu dbáte o svůj obraz a snažíte se být vidět (ve smyslu článku Třídění programátorů quicksortem), tak práci nemusíte moc chodit naproti, najde si vás sama. Jistě dostáváte mnoho zpráv na LinkedIn (některé programátory může uspoko­jo­vat, že konečně mají šanci odmítnou hezkou holku). V mém případě je to většinou balast, ale za rok se objeví tak dva až tři zajímavé kontakty, které je dobré vytěžit. Slyšel jsem o lidech, kteří sice práci nehle­dají, ale využijí každé příleži­tosti nechat si zaplatit oběd.

Javisti se neprávem povyšují nad PHP programátory. PHP má nízkou bariéru, takže mnozí začínají právě u něj. Někdo v něm napíše Facebook a někdo jen bastlí. Podobně asi přišli ke špatné pověsti HR agentury a lovci hlav. Vidina velkého zisku (kdy jediné, co potře­bují, je telefon) přitáhla spoustu průměr­ných až podprůměr­ných. Nezat­ra­cujte tedy všechny, ale pečlivě vybírejte, s kým budete jednat. Za sebe, i když nakonec nemám práci od ní, můžu doporučit Luu Ly Nguyen Bach, mrkněte na její blog Ze života recruiterky.

V neposlední řadě se hodí mezi vašimi kamarády a bývalými kolegy rozšířit infor­maci, že hledáte práci.

A taky doporučuji přednášku How to get any job worth getting, kterou měl Richard Fridrich na WebExpo.

Velikost firmy a forma spolupráce

Jedno z vašich rozho­dujících kritérií nejspíš bude velikost firmy. Bude to startup? Neexi­s­tuje jeho ucelená a uznávaná definice. Jedna z mých asociací je výmluva na mizerný plat. I když najde se jich několik, které peníze mají (zdá se mi, že jsou v menšině). Podrob­něji o odměňování v Neberte práci jen kvůli penězům (Prog­ramátorem po čtyřicítce).

A ještě jednou Riki Fridrich, tentokrát na téma Prečo startupy nemajú šancu získať senior­ných vývojárov.

Říkejte mi třeba homo hypotecus, ale většina startupů je pro mladé a svobodné. Ovšem zajímavé startupy hledají někoho zkušenějšího, takže starší a stále svobodné nebo už se splacenou hypotékou.

Práce na IČO (švarc systém) stále frčí. Někde nabízejí HPP i IČO, někde jen jednu možnost. V té souvis­losti bych připom­něl, že kromě známých věcí (nemo­censké pojištění, ručení veškerým svým majet­kem, obvykle nepla­cená dovolená), přijdete (uplatňu­je­te-li náklady paušálem) o slevu na dani na manželku a děti.

Práce z domova

Jelikož bydlím dál od Prahy, je pro mě důležitá možnost práce z domova. Mohl bych zkusit oslovit firmy třeba v USA, ale kromě větší konku­rence mi přijde jako překážka časový posun, jiná menta­lita a to, že se s kolegy uvidíte málo nebo vůbec. Naštěstí už je to u nás s prací z domova výrazně lepší než před třemi lety. Firmy už práci z domova více prakti­kují a jsou ochot­nější se domluvit.

Náborový proces

Celý náborový proces začíná už samotným oslovením. Když mi v prvním e-mailu přijde něco podob­ného, je to mě stopka (připom­nělo mi to článek Lukáše Křečana Jak nepsat framework).

Zajímavostí může být vlastní framework podobný Hibernate.

Je dobré si všímat podpra­hových signálů. Když HR slečna začne na první schůzce sama mluvit o přesč­a­sech, nevěští to nic dobrého. Jiné firmy zase mají asi sedmi­ko­lové výběrové řízení. Jaké pak budou jejich vnitřní procesy? Nejen kandidáti chodí pozdě či vůbec, někdy i zástupci firem na domlu­venou schůzku nedorazí.

Na WebExpo měl Tomáš Baránek zajímavou přednášku Jak sbalit ženu. Přijde mi, že některé zásady lze uplatnit i na lovce hlav. Třeba to, že byste neměli působit zoufale (i kdybyste náhodou byli) a neodpovídat na e-maily okamžitě (nechat je odležet třeba do druhého dne). Náborový proces jsou vlastně námluvy a schůzky rande, ne?

Jak už jsem naznačil v úvodu, při hledání práce mi výrazně pomohl můj blog. Jednak jsem vidět, jednak je tu větší prostor, než u pohovoru, vysvětlit svoje postoje. Takže blogujte!

Otázky

Chtěl bych vypích­nout otázky, které jsem dostával na technic­kých pohovo­rech. Některé považuji za velmi dobré, u některých nechápu smysl a přijde mi, že se plýtvá časem.

Za dobré otázky třeba to, jaký je v RESTU rozdíl mezi metodami Post a Put. Mrkněte na Micro­soft REST API Guidelines. Jak byste v RESTu reali­zovat částečný update - patch? Jak fungují trans­akce ve Springu (včetně inter­cep­torů a AOP)? Jaký je vztah entity­ma­na­geru a trans­akce? Vysvět­lete ACID a CAP.

Jsou pointery a rekurze latinou softwa­rového inženýrství? Dřív se testo­valo z pointerů, dnes se vyžívají ve vláknech, ale skutečně to potře­bují? Je násle­dující úloha, kterou máte vyřešit na pohovoru, nejlépe využitý čas k poznání kandidáta?

Write a method that receives an array of integers as an argument. The method needs to find indexes of elements of the array, 
such that sums of elements before and after that element are equal. The method needs to return indexes sorted in a descending order. 
 
Method signature: 
void int[] equalSum(int[] data){ 
 
Example 1 
Input: 
[1, 2, 3, 4, -1] 
Output: 
[2] 
 
Example 2 
Input: 
[1, 2, 3, 4, 5] 
Output: 
[] 
 
Example 3 
Input: 
[1, 1, -1, -1, 3] 
Output: 
[2, 1] 
 
Example 4 
Input: 
[1, 1, -1] 
Output: 
[0]

Domácí úkoly

Ve většině případů chtěli zaměst­na­va­telé vidět nějakou ukázku vaší práce nebo přímo zadali domácí úkol (obvykle v rozsahu tak 3 až 8 hodin). Těší mě, že se to celkem rozmohlo, ale náborový proces už je i tak náročný na čas, tak si člověk nesmí nabrat moc příležitostí.

I když se vám úlohy budou zdát triviální, jejich cílem je zjistit, jakým způsobem pracu­jete. Při pohovoru může dojít i na diskusi nad kódem. Doporuč­oval bych zaměřit pozor­nost na organi­zaci projektu, logování, testy, javadoc, commit message a readme. Nemusím snad zdůrazňo­vat, že projekt musí jít zbuil­dit. Může se vám stát, že dosta­nete šablonu (tedy nepíšete na zelené louce). Nevím, jestli šablona byla v nepěkném stavu jakože chyták, ale tím, že kód začis­títe, nic nezkazíte.

Závěr

Práce je dost, což je pro nás programátory jedině dobře. Můžete vybírat z různých velikostí firem, domén i možností spolu­práce (HPP nebo IČO). Trh se kulti­vuje. Často jsou vyžado­vané ukázky vaší práce a/nebo domácí úkoly. Fimy jsou otevřenější práci z domova. Zvidi­tel­něte se (Linke­dIn, GitHub, StackO­verf­low, blog…) a buďte v kontaktu se serióz­ními lovci hlav.

Související