Obsese algoritmických otázek na pohovoru

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #45 kdy: 25. 03. 2022, 06:14:57 »
Popravdě, moje zkušenost je taková, že stačí zadat něco triviálního jako načíst soubor a vypsat ho pozpátku v libovolném oblíbeném jazyce.

s tim bych mel problem, musel bych priznat ze to nedokazu, protoze to neni jednoznacne zadane.

to se rozepis, protoze jsi bud mdleho rozumu nebo kverulant. co z toho plati?

blbec nepochopi jednoduche zadani, nebo nedokaze implementovat nejjednodussi priklad.
kverulant je chytry az dost, ale zase si vymysli specialni pripady, ktere pri jednoduchem testu nenastanou,
napriklad co kdyz je soubor obrovsky 100 TB, jak velky buffer se muze pouzit, jestli to ma mit GUI atd.


Re:Obsese algoritmických otázek na pohovoru
« Odpověď #46 kdy: 25. 03. 2022, 06:58:38 »
Popravdě, moje zkušenost je taková, že stačí zadat něco triviálního jako načíst soubor a vypsat ho pozpátku v libovolném oblíbeném jazyce.

s tim bych mel problem, musel bych priznat ze to nedokazu, protoze to neni jednoznacne zadane.

A co je na tom nejasne?

Jednoducha uloha na 5minut pre toho kto vie prikazy z hlavy, na 10-15minut pre toho kto to nevie z hlavy a musi si vygooglit prikazy. Postup musi byt jasny kazdemu kto niekedy programoval, pretoze sa to uci v kazdom jednom jazyku (nejake sialene exotiky ako LOLCODE a pod nepocitam ak by si sa v tom zasa chcel vrtat ze co znamena kazdy jazyk), a ma IQ > 90.

Ak ale mienis spekulovat na pohovore nad jednoduchou otazkou a umyselne ju stazovat, tak si obycajny spekulant, ktory vie toho akurat tak viac nakecat ako realne urobit.

Ono ked ma trvat test (programovacia cast pohovoru) hodinu a skusajuci ma pripravene este dalsie dve ulohy ktore chce prejst, a tato je len taka uvodna na zahriatie a odpadnutie tremy, tak asi tazko prejdes uspesne pohovorom ak natiahnes 5minutovu ulohu na celu hodinu a budes totalny hnidopich.

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #47 kdy: 25. 03. 2022, 07:07:30 »
Popravdě, moje zkušenost je taková, že stačí zadat něco triviálního jako načíst soubor a vypsat ho pozpátku v libovolném oblíbeném jazyce.

s tim bych mel problem, musel bych priznat ze to nedokazu, protoze to neni jednoznacne zadane.

Jenže doptat se na případné nejasnosti také patří k práci programátora.

kverulant je chytry az dost, ale zase si vymysli specialni pripady, ktere pri jednoduchem testu nenastanou,
napriklad co kdyz je soubor obrovsky 100 TB, jak velky buffer se muze pouzit, jestli to ma mit GUI atd.

To jsou samozřejmě naprosto správné doplňující otázky, když kandidát zvládne tu triviální variantu.

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #48 kdy: 25. 03. 2022, 07:13:11 »
Popravdě, moje zkušenost je taková, že stačí zadat něco triviálního jako načíst soubor a vypsat ho pozpátku v libovolném oblíbeném jazyce.

s tim bych mel problem, musel bych priznat ze to nedokazu, protoze to neni jednoznacne zadane.

Jenže doptat se na případné nejasnosti také patří k práci programátora.

kverulant je chytry az dost, ale zase si vymysli specialni pripady, ktere pri jednoduchem testu nenastanou,
napriklad co kdyz je soubor obrovsky 100 TB, jak velky buffer se muze pouzit, jestli to ma mit GUI atd.

To jsou samozřejmě naprosto správné doplňující otázky, když kandidát zvládne tu triviální variantu.


je otazka co bych si o tom cloveku myslel, ze je od neho pekne, ze se dokaze zeptat na doplnujici informace,
nebo naopak, ze je natvrdly a potrebuje k tomu dalsi omacku.

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #49 kdy: 25. 03. 2022, 07:35:30 »
Popravdě, moje zkušenost je taková, že stačí zadat něco triviálního jako načíst soubor a vypsat ho pozpátku v libovolném oblíbeném jazyce.

s tim bych mel problem, musel bych priznat ze to nedokazu, protoze to neni jednoznacne zadane.

A co je na tom nejasne?

Ze zadani je jasne jen to, ze se ten soubor ma nacist (ok, muze byt, sice pro mnoho ucelu je to divne reseni, ale co uz). Ale ja bych se tedy zeptal na par "malickosti":

1) otaci se binarni soubor po bajtech nebo textovy soubor po radcich?
2) jestli textovy soubor, tak resime ruzne konce radku?
3) jestli textovy soubor obecne (tedy ruzne unicode varianty), resime BOM?

Ok, to posledni je perlicka, mozna kverulanstvi, ale neco podobneho nas uz jednou nakopalo... (takze kandidat ukazuje, ze si necim prosel v praxi).


L..

  • ***
  • 236
    • Zobrazit profil
    • E-mail
Re:Obsese algoritmických otázek na pohovoru
« Odpověď #50 kdy: 25. 03. 2022, 07:42:31 »
je otazka co bych si o tom cloveku myslel, ze je od neho pekne, ze se dokaze zeptat na doplnujici informace,
nebo naopak, ze je natvrdly a potrebuje k tomu dalsi omacku.

To záleží. Pokud se ptá na věci jako "A jak načtu soubor?", tak je to samozřejmě špatně. Zdeněk Tomeš tu dal pěkné příklady smysluplných otázek.

Za mě jsou smysluplné otázky jednoznačné plus, u kandidáta na seniora je dokonce očekávám. Nejhorší jsou lidi, co tři dny kódí podle zadání a pak se zjistí, že ten jejich kód je na vyhození, protože to zadání pochopili blbě (bylo jim něco divného, ale nezeptali se). Nebo naopak stráví den nad něčím, co by se dalo napsat za hodinu, protože oni dělají obecné řešení, zatímco my to potřebujeme pro nějakou podmnožinu případů.
« Poslední změna: 25. 03. 2022, 07:47:26 od L.. »

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #51 kdy: 25. 03. 2022, 08:57:53 »
je otazka co bych si o tom cloveku myslel, ze je od neho pekne, ze se dokaze zeptat na doplnujici informace,
nebo naopak, ze je natvrdly a potrebuje k tomu dalsi omacku.

To záleží. Pokud se ptá na věci jako "A jak načtu soubor?", tak je to samozřejmě špatně. Zdeněk Tomeš tu dal pěkné příklady smysluplných otázek.

Za mě jsou smysluplné otázky jednoznačné plus, u kandidáta na seniora je dokonce očekávám. Nejhorší jsou lidi, co tři dny kódí podle zadání a pak se zjistí, že ten jejich kód je na vyhození, protože to zadání pochopili blbě (bylo jim něco divného, ale nezeptali se). Nebo naopak stráví den nad něčím, co by se dalo napsat za hodinu, protože oni dělají obecné řešení, zatímco my to potřebujeme pro nějakou podmnožinu případů.

Citace
1) otaci se binarni soubor po bajtech nebo textovy soubor po radcich?
2) jestli textovy soubor, tak resime ruzne konce radku?
3) jestli textovy soubor obecne (tedy ruzne unicode varianty), resime BOM?

testovaci ukol znel jasne, reverznout soubor. tyhlety chytre otazky jsou dobre, kdyz se resi opravdovy ukol.
ale kdyz nekomu reknu vypis soubor pozpatku, a on se me zepta na tyhle veci, tak si reknu, ze to je magor,
ktery bude delat z jednoducheho ukolu elektrarnu :-(

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #52 kdy: 25. 03. 2022, 09:08:12 »

Citace
1) otaci se binarni soubor po bajtech nebo textovy soubor po radcich?
2) jestli textovy soubor, tak resime ruzne konce radku?
3) jestli textovy soubor obecne (tedy ruzne unicode varianty), resime BOM?

testovaci ukol znel jasne, reverznout soubor. tyhlety chytre otazky jsou dobre, kdyz se resi opravdovy ukol.
ale kdyz nekomu reknu vypis soubor pozpatku, a on se me zepta na tyhle veci, tak si reknu, ze to je magor,
ktery bude delat z jednoducheho ukolu elektrarnu :-(

Tak to z toho děláš Švejka, který přesně splní úkol, aniž by se ohlížel, jestli to má smysl. Fakt chceš mít takového člověka v týmu? Já naopak očekávám, že se lidi na sprint planningu budou ptát. Mám jednoho, co se neptá, tiše dělá přidělené úkoly (ano nebere si je sám) a podle toho to někdy-hodně často vypadá.

PS: mě to zadání takto zapsané jasné není. Ale neznám kontext, v jakém se Martin ptal. Na 50% chtěl otočit soubor po řádcích, na 50% po bajtech (a na 0% skutečně otočit binárně :p)

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #53 kdy: 25. 03. 2022, 09:09:48 »
je otazka co bych si o tom cloveku myslel, ze je od neho pekne, ze se dokaze zeptat na doplnujici informace,
nebo naopak, ze je natvrdly a potrebuje k tomu dalsi omacku.

To záleží. Pokud se ptá na věci jako "A jak načtu soubor?", tak je to samozřejmě špatně. Zdeněk Tomeš tu dal pěkné příklady smysluplných otázek.

Za mě jsou smysluplné otázky jednoznačné plus, u kandidáta na seniora je dokonce očekávám. Nejhorší jsou lidi, co tři dny kódí podle zadání a pak se zjistí, že ten jejich kód je na vyhození, protože to zadání pochopili blbě (bylo jim něco divného, ale nezeptali se). Nebo naopak stráví den nad něčím, co by se dalo napsat za hodinu, protože oni dělají obecné řešení, zatímco my to potřebujeme pro nějakou podmnožinu případů.

Citace
1) otaci se binarni soubor po bajtech nebo textovy soubor po radcich?
2) jestli textovy soubor, tak resime ruzne konce radku?
3) jestli textovy soubor obecne (tedy ruzne unicode varianty), resime BOM?

testovaci ukol znel jasne, reverznout soubor. tyhlety chytre otazky jsou dobre, kdyz se resi opravdovy ukol.
ale kdyz nekomu reknu vypis soubor pozpatku, a on se me zepta na tyhle veci, tak si reknu, ze to je magor,
ktery bude delat z jednoducheho ukolu elektrarnu :-(

Já dávám rád úkoly, u kterých se musí uchazeč doptávat, vidím totiž dva krajní typy seniorních programátorů, jedni chtějí co nejpřesnější zadání nebo účel a druzí si to udělají tiše po svém. Oba jsou v praxi užiteční a mají své místo, člověk by v první řadě měl vědět koho vlastně hledá. Zvykl jsem si nedbát tolik na konkrétní hard skill, spíš ať mi uchazeč předvede co umí nejlépe. Daleko důležitější je pro mě přístup k práci a řešení úkolů, protože vždy do týmu potřebuji nějakou konkrétní roli. Samozřejmě, když se hledá team leader, je potřeba pečlivě dbát na kombinaci hard a soft skills, to pak člověk tomu věnuje více času a filtruje podle znalostí velice brzy.

Jen taková šťouravá otázka, píšeš libovolný programovací jazyk, pokud bych tam přišel s řešením bash -c 'tac ./soubor', bylo by to považováno jako splnění a mohl bych domů?

L..

  • ***
  • 236
    • Zobrazit profil
    • E-mail
Re:Obsese algoritmických otázek na pohovoru
« Odpověď #54 kdy: 25. 03. 2022, 09:33:45 »
testovaci ukol znel jasne, reverznout soubor.

Takovýchhle jasných zadání jsem už v praxi viděl tuny. A většinou čím víc zadavatel tvrdí, že je to jasné, tím spíš po nějakém zvídavém dotazu (mám heslo, že když mi něco není jasné, tak se zeptám) dostanu odpověď: "No, vlastně, ehm, počkat, to by ...".

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #55 kdy: 25. 03. 2022, 09:36:08 »
PS: mě to zadání takto zapsané jasné není. Ale neznám kontext, v jakém se Martin ptal. Na 50% chtěl otočit soubor po řádcích, na 50% po bajtech (a na 0% skutečně otočit binárně :p)

Popravdě mi to u toho pohovoru je často fuk, jde o přístup a "přemýšlení nahlas". Je to vodítko ke složitějším otázkám.

1) otaci se binarni soubor po bajtech nebo textovy soubor po radcich?
2) jestli textovy soubor, tak resime ruzne konce radku?
3) jestli textovy soubor obecne (tedy ruzne unicode varianty), resime BOM?

To jsou náhodou pěkné doplňující otázky. Bohužel "běžný Franta kandidát" se tomuto ani nepřiblíží... často bojuje už s tím, jak ty řádky vlastně uložit do paměti.

Za mě jsou smysluplné otázky jednoznačné plus, u kandidáta na seniora je dokonce očekávám.

Přesně tak. Dobré otázky znamenají, že ten člověk má nějaký rozhled, zkušenosti a není to jen tupý bušič kódu.

Citace
Jen taková šťouravá otázka, píšeš libovolný programovací jazyk, pokud bych tam přišel s řešením bash -c 'tac ./soubor',
bylo by to považováno jako splnění a mohl bych domů?

Ten pohovor není jen test na splnění, takže by pochopitelně následovala otázka na to, jak a proč to asi uvnitř funguje a jestli by ten bash byl opravdu nejlepší řešení.

Zatím to na mě s bashem ale nikdo nezkusil :) Nicméně celé tohle vlákno je o algoritmizaci, takže jazyk opravdu až tak důležitý není. Popravdě jsem za posledních hmm 15 let v projektech viděl C/C++, Python, Javu, Golang... dobrému programátorovi to přeučení zase tak dlouho netrvá.

L..

  • ***
  • 236
    • Zobrazit profil
    • E-mail
Re:Obsese algoritmických otázek na pohovoru
« Odpověď #56 kdy: 25. 03. 2022, 10:07:19 »
Za mě jsou smysluplné otázky jednoznačné plus, u kandidáta na seniora je dokonce očekávám.

Přesně tak. Dobré otázky znamenají, že ten člověk má nějaký rozhled, zkušenosti a není to jen tupý bušič kódu.

Můj oblíbený citát: "Není až tak těžké dávat správné odpovědi, těžší je dávat správné otázky".

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #57 kdy: 25. 03. 2022, 10:52:57 »
Citace
Jen taková šťouravá otázka, píšeš libovolný programovací jazyk, pokud bych tam přišel s řešením bash -c 'tac ./soubor',
bylo by to považováno jako splnění a mohl bych domů?

Ten pohovor není jen test na splnění, takže by pochopitelně následovala otázka na to, jak a proč to asi uvnitř funguje a jestli by ten bash byl opravdu nejlepší řešení.

To mi připomnělo, když jsme se při pohovoru bavili o BASHi a dostal jsem otázku, jak bych spočítal slova v souboru. - "No to je jednoduché, použil bych wc -w." - "Výborně. A teď si představte, že nemáte k dispozici wc, jak byste to udělal?" A tak jsme si o tom ještě chvíli povídali, napsal jsem k tomu nějaký kód (jen z hlavy, na tabuli) a nakonec byla spokojenost na obou stranách.

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #58 kdy: 25. 03. 2022, 11:04:17 »
testovaci ukol znel jasne, reverznout soubor. tyhlety chytre otazky jsou dobre, kdyz se resi opravdovy ukol.
ale kdyz nekomu reknu vypis soubor pozpatku, a on se me zepta na tyhle veci, tak si reknu, ze to je magor,
ktery bude delat z jednoducheho ukolu elektrarnu :-(
Sorry, ale zadání "reverznout soubor" je silně nejednoznačné. Tady záleží třeba na míře programátorské deformace. Poloprogramátor či neprogramátor si pod tím určitě nepředstaví reverznutí po bytech, protože na takové úrovni abstrakce ani nepřemýšlí. Takový člověk spíš přemýšlí na úrovni grapheme clusterů i když ten pojem nejspíš vůbec nezná.

Zkušený vývojář bude mít určitě hromadu zážitků, kdy na první pohled jasný úkol vlastně vůbec jasný nebyl. A kdybych na pohovoru položil nějaké doplňující otázky a reakce byla že to zbytečně komplikuju, tak pravděpodobně hledám práci jinde.

BTW Opravdu vás při pohovoru nezajímá, jak se bude kandidát chovat až dostane ten "opravdový úkol"?

Re:Obsese algoritmických otázek na pohovoru
« Odpověď #59 kdy: 25. 03. 2022, 11:49:56 »
kdyby chteli zachovani unicode znaku, vicebajtovych entit, nebo radku, tak by to do zadani napsali.

kdyz tam je jen reverznuti/vypsani pozpatku tak je to bajt za bajtem.