Chaos in Fediverse

Chaos in Fediverse

Kandidát: Chtěl bych remote, maximálně 1x týdně v kanclu.
Já: Programovat umíte dobře, ale o našem oboru nevíte vůbec nic, budete potřebovat obrovské množství praktických zkušeností než budete nějak užitečný, jak je chcete doma získat?
Kandidát: Tohle je teď normální, firmy by si na to měli zvyknout, doménovou odbornost mají mít analytici, kteří připravují specifikaci.
Já (nahlas): Hmm, vy jste říkal, že preferujete agilní vývoj, že?

Já (v hlavě): Jasně, zkus si najít reálného experta na algoritmický trading, který místo vydělávání velkých peněz tím, co umí, chce sepisovat specifikaci aby to místo něj mohl dělat ten, kdo to neumí a naučit se to mu nestojí ani za to, aby se od něj jezdil učit za běhu v kanclu.

@calavera@witter.cz
Mam k tomu jednu vec, tohle piste rovnou do inzeratu. Taky nerad ztracim cas zbytecnymi pohovory, kdy se nemuze ani jedna ze stran uspokojit.

@johnny To je těžké dobře formulovat, protože ten remote je úplně v pohodě, když nebo až mají seniorní úroveň. Jenže to je dneska zcela subjektivní hodnocení. Já sám jsem až strašně pozdě pochopil, že ani sám nasadit Springovou aplikaci s Hibernate perzistentní vrstvou nad PostgreSQL do Kubernetes clusteru netvoří většinu celého computer science, jak jsem si myslel https://calavera.info/v3/blog/2020/10/10/tvare-softwaroveho-inzenyrstvi.html

@calavera Jak by to fungovalo, kdybych k vám nastoupil?

Kdo a jak by mne učil obor a předával praktické zkušenosti?

@zdenek Dělo by se hodně věcí, ty se asi konkrétně ptáš na to, že bys dostával jednodušší úkoly z různých koutů aplikace a s někým bys je řešil.

To je jedna z variant onboardingu, kterou každému novému kolegovi nabízím. Ale ne každému vyhovuje. Někdo je typ "dej mi dokumentaci, větší samostatný úkol a dost času"
replies
0
announces
0
likes
1

@calavera Spíš mířím k tomu, co všechno bych se musel učit, od koho, jakým stylem a proč by to nemohlo být remote.

Bez velkého promýšlení...

1) Vývoj

Budu se muset naučit, jak programovat s malou latencí, jak nespoléhat na atomicitu, naučit se, že eventuální konzistence je vlastně přirozená a v pohodě, ..., hromada dalších věcí.

2) Obecná doména

Budu se muset naučit základy domény. Pojmy, principy obchodování na burzách, produkty, ...

3) Core doména

Budu se muset naučit principy a techniky algo tradingu.
Tady asi poprvé narazím na unikátní know-how, které se neustále rozvíjí a má ho někdo, jehož čas je extrémně drahý.

Ani u jednoho bodu mě nenapadá, proč by to nešlo remote.

@zdenek Myslím, že jsi to vzal stylem "kulaté slepice ve vakuu". V tomhle směru můžeš jít klidně dál a nevidět problém v krocích: založit vlastní společnost, rozjet vlastní obchodní strategie, zaměstnat lidi, odejít do důchodu na zakoupený tichomořský ostrov. Mezitím u nás na zemi mají lidi, co přijdou na pohovor, problém vysvětlit fungování hash mapy a ano, nic nebrání aby se všechno naučili sami, ale ... fakt to nevidíš?

@calavera Ale remote přece neznamená, že se to učím sám.

Jinak vycházím z toho, jak jsem se v minulosti učil různé domény.

@zdenek A s kým se to teda učíš?

@calavera To je různé.

Popíšu svoji představu — většinu jsem toho zažil, všechno najednou ještě ne.

Pro mne jsou ideální psané materiály.
Strategie, popis obecných doménových konceptů, specifikace features včetně kontextu a cest, které promýšleli a vyargumentovaných rozhodnutí.
Flows modelované třeba pomocí Event Modelingu.
To je dostatečně jednoduché a přehledné, že to pochopí i člověk, který s tím nemá zkušenosti. Zároveň se nad tím dobře diskutuje a kolaboruje remote.
Super je základní rozcestník, který mi říká, na co se mám zaměřit, pokud chci dělat oblast A nebo B.

Ideální je, když mi jeden člověk udělá obecný úvod a pak si projdu oblasti, ve kterých se budu pohybovat.
U každé oblasti člověk (expert na tu oblast), na kterého se můžu napárovat, aby mi to vysvětlil.
Na klik vidět, kdy má volné bloky na konzultace a rovnou rezervovat — bloky musí mít každý včetně CEO, CTO,...
Nehrozí, že bys někoho hledal a doprošoval se, jestli nemá chvilku času.
(Tohle jsem opravdu zažil a bylo to u sakra drahých lidí)

Je na tobě, jakou cestou se vydáš. Buď studuješ sám a konzultuješ, když potřebuješ nebo si to necháš vysvětlit a pak projdeš materiály a máš je jako referenci na později.

U vývoje párováni s jiným vývojářem nebo ideálně mob programming, kdy se zapojíš rovnou do práce celého týmu.

Důležité je, abys mohl zvolit vlastní cestu a oni s tím od začátku počítali a podporovali to.
Od začátku stavět všechno remote a async.

@calavera já taky ten první příspěvek pochopil tak, že nejste na remote zařízení

@calavera @zdenek že “senior” nedokáže vysvětlit třeba vztah equals a hashcode jsem už bohužel viděl, ale to je trochu jiný problém, než remote firmy, ne?

@banterCZ @calavera Tak to určitě.

Já posledních několik let nedělím vývojáře na juniory, seniory, ...
Bohužel jsem potkal spoustu seniorů, kteří ten titul měli jen kvůli počtu let ve firmě 😂

@zdenek Takže ještě jednou zopakuju pointu prvního tootu, tedy důvod, proč jsem to psal a na co mi odpovídáš a jen jsi to mezi tím možná zapomněl. Máš to vymyšlený krásně, ale znova: kde mám sehnat ty lidi, který mají schopnosti tohle zařídit a obsahově naplnit a jejichž životním cílem se stane místo vlastního úspěchu, ke kterému je taková úroveň schopností předurčuje, poskytování tohohle servisu tobě?

@calavera Netuším.

Pokud nejsou, tak mi to zní jako hodně toxický obor. Podobně jako třeba svět sázek a online gamblingu.

Pak spíš teda, jestli se vůbec dá najít rozumný počet lidí, kteří by s takovými sebestřednými hvězdami vůbec chtěli pracovat a implementovat jejich unikátní myšlenky.

@zdenek

Nechci neznalost hashcode a equals obhajovat, ale vzpomeň si jaká byla Java v době když jsme se ji učili. Jednoduchá. Stačila jedna knížka od Herouta a dva dny. Dneska je toho mnohem víc a pokud není nadšenec, tak se učíš jen co je nutné a potřebuje - frameworky a pokud do toho moc nerýpe a v hashmapách-hashset objektech používá String a Long, tak je vše ok :) a Java mu to dost zjednodušuje, proto přece máme Javu tak moc rádi. :)

@zdenekhenek @zdenek No právě. Věci jsou složité, tlačí se copilot. Nic proti skript kidies, ale takovou dostanou úlohu a takový plat. Práce pro ně bude, ale já chci a potřebuje někoho kdo jde trochu do hloubky (pochopitelně nemůže u všeho) nebo někoho, kdo si pokorně přizná, že zásadní věci neví. Když zůstaneme u toho equals a hashcode, jak pak může používat cache, jpa…

@banterCZ @zdenek

No setkal jsem se i s názorem, že senior by měl vědět i něco o železe e.g. RICS vs CISC, matematiku nebo, že po 40ce by každý dobrý programátor měl mít pár knih o psychologii :). Určitě můžeme být označení za seiory když neumíme c++ a hodně do detailu operační systémy, nenaimplementovali jsme si vlastní file system nebo překladač? Když člověk dělá roky s javascriptem a pak se přesune na Javu, tak ho ani nemusí napadnout, že neví přesně do detailu jak je to hashcode a equals.

@zdenekhenek @banterCZ A jsem ještě senior, když jsem za ty roky, co Javu nedělám zapomněl, jak správně naimplementovat hashcode?

@zdenek @zdenekhenek Dobře, nějak se to zvrhlo. Psychologii ano. Ohledně equals/hashcode, to byl praktický příklad. Pořád bys něco tušil, ne?

@banterCZ @zdenekhenek Věděl bych, že se na to mám podívat :-)

@banterCZ @zdenek jasně používát objekty místo řetězců z těch objektů v HashMap klíčích je moje oblíbená disciplína jak zlepšit-snížit alokaci paměti
jen jsem chtěl říct, že pro spoustu firem může mít ten člověk hodnotu seniora i bez detailních znalostí javy, pokud má jiné znalosti a ví, že prostě musí nechat vygenerovat hashcode a equals, když vytvoří třídu, která se může použít v HashMapě nebo v Hashcode a dál se v tom nerýpe.

@zdenekhenek @zdenek Rady nejsou absolutní, důležitý je kontext. Zvolil jsem java příklad, protože myslím, že František má java tým a s touhle neznalostí by ho pravděpodobně nevzal. A právě to je ona znalost, že vygenerovat si to můžeš, ale to v mnoha případech není úplně vhodné. Samozřejmě můžou být firmy a pozice, kde si najdou jinou klíčovou otázku.

@banterCZ @zdenekhenek @zdenek vaší debatu čtu, ale nezapojuju se, protože už se to tak vzdálilo od mojí původní myšlenky, že k tomu z jejího pohledu nemám co říct.

@calavera @banterCZ @zdenekhenek @zdenek

Já jsem v první full time práci po škole začínal remote. A šlo to, protože tak pracovala celá firma (její česká část).

Nikdy mi moc nefungovalo, když část lidí chodí do kanceláře a někdo téměř nechodí. Zkombinovat to s nováčkem v oboru a představou, že zadání předkouše analytik, to je úplná vražda.

@krab @calavera @zdenekhenek @zdenek Uznávám, že všude na remote nejsou zařízení nebo to nepreferují, ale tady to trochu vidím jako chybu HR a phone screenu, jestli se podobné věci řeší až v technickém kole. Já jasně svoje požadavky a schopnosti předem deklaroval, což mi pomohlo firmy profiltrovat.

@banterCZ @krab @calavera @zdenekhenek Aby mohla firma fungovat remote, tak musí být remote first a to včetně lidi, kteří pracují onsite.

Krásně je to popsané v knize Effective Remote Work
https://pragprog.com/titles/jsrw/effective-remote-work/