a tale

takže já vás vítám na svůj prezentace to by měl umět dobrý vývojář

menu se petr adámek a pracuju jednak ve společnosti on kredit international na pozici že

vo program koordinátora znamená mám tam na starosti tým juniorských prej ní kteří se tam

učí nový věci je nový technology aby mohli být po zdi nasazení na projektech a

vedle toho ještě přednáším jako externista právě kurzy který se týkají programování v jazyce java

vývoj na platformě že uvažování na tady na fakultě informatiky na masarykově univerzitě

já bych já jsem si pro vás dneska připravil takovou přednášku která se zkusí zamyslet

nad tím co by měl umět dobrý vývojář žádným případě si nemyslím že bych měl

patent na rozum to znamená můžete třeba mít jinej názor nebo musíte s můžete si

myslet něco jinýho ale myslím že by pro vás mohu by mohlo bejt inspirací

pohled na věc pozice spořice člověka který byl mockrát už toho lze si kariéře něco

zažil u zpracoval vývojáře fungoval roli v roli tým lída a prošel řadou pohovoru jak

pozice o pohovor oválného tak pozice povolující ho

takže pokusím se vám něco víc ten můj pohled bude hodně spoof pohledu člověka který

se věnuje těm technologiím kolem tý platformy java Í to znamená zejména když budu mluvit

o těch technologických je tech tak jo pokud to zajímá to nějakou jinou platformu nebo

programujete v jiných jazycích tak tam třeba ta sada těch znalostí může být trošičku jiná

ale doufám že to nebude na škodu

tak

to je to vlastně vývoj softwaru

to si představíte podpojmem když slyšíte vývoj softwaru

masírování klávesnice no

ano

návrh implementace údržba posledně důležitý na to spoustu lidí zapomíná

připadat jako k indové vy víte nové software

zase připadá jako kingy živý nové software

adresy připadá von dobře

aby vlastně když ale nějak jako tvrdej napsal někdo jinej

a kdo z vás toho neměl úplně příjemný pocit

tak takže

když se tak hlavní vám tak předpokládám že většinu věcí která tady zazní nečekejte že

tady přídu nějakejma převratným a myšlenkama nebo zničím to by vládl nějak extrémně nový ale

to jsem se to nějakým způsobem se směrovat nečekejte že tady třídu nějakým nemůžu receptem

že když budete v o půlnoci někde názvy toho vytrhnete tam nějakou kytku a vytvoří

multibody teče že za bude skvělej vývojář

ale zkusme se zamyslet nad tím to si myslím že opravdu důležitýho

je vývoj softwaru kreativní činnost

vytváříte něco novýho

něco co vznikne pokaždý trošku jinak

není to jako dělník u ve fabrice kterej prostě pojede podle za je tech postupu

a každej denně vypadnou úplně ty stejný věci

to znamená dalo by se vidět operativní činnost

když se bavíme operativní činnosti okamžitě nás napadne něco umění

tak dobře tak jako art of unix programming k bible naznačuje že to umění ale

já si podpojmem umění představím umělce který není svázán žádnými konvencemi žádnými pravidly může udělat

téměř cokoli zejména když se díváte dneska na moderní umění tak pokud tomu nerozumíte tak

vám přijde že ten umělec hrozné nějakou barvu na plátno nebo prostě udělá úplně cokoliv

a okamžitě to okamžitě se na to dá nahlížet jako neumění

takže umění a potom klasickým slova smyslu to podle mýho názoru není

můžete změní po nevím jo dejme tomu že už kdyby jsme se bavili o design

jo třeba ale když se třeba budu tak

ale dobře udělanej záchod podle mýho názoru není u měnil je design a design právě

rozdíl mezi design M a umění je v tom že design že design není umění

samozřejmě dyzajnér musí mít nějaký estetický cítění design nervy musí být svým způsobem trošku uměle

ale ten design jako takové vlastně věc kterou já na kterou začínám kterou nekončím jo

design je větru vod začátku směřuju primárním cílem dyzajnu je funkční a dobře udělanej dobře

udělanej výsledek jo to znamená dyzajnér mi a design není že někdy že někdo udělá

nezvednu krabičku a design a nakonec řekne že bude modrá bude na ní bude na

ní taková nějaká samota nebo něco takovýho že design dejme tomu ale mění jako takový

si myslím že to není

to takle věda

je to věda

bude se to na univerzitě můžete toho mít doktora

můžete udělat solidně nějakej research že jo

já si myslím

je to věda

není

on se říká že umět dobře programovat i věda ale věda znamená že

přinášíte něco úplně novýho ano jako vývojáři můžete dělat vědu jako vývojáři můžete vyvyšovat nový

algoritmy nový koncepty a podobně ale tom případě si nemyslím že byste byli roli vývojáře

v tom případě se roli spíš nějakýho výzkumníka nebo v roli

jde odborníka ale ne vývojáře jako takový není vědec

podle mýho podle mýho názoru

je to řemeslo

co dělá řemeslník

řemesla dejme sem tam tomu nějakýho truhláře který vyrábí nějaký nábytek

dělá to má celou řadu zásadu tedy zásad který dodržuje jaký postupy má zvolit aby

ten výsledek nábytek vydržel V jakým způsobem má třeba spojovat jednotlivý díly aby se to

na rozpadlo V jakým způsobem to má ověřit má nějaké na skutečně pracuje podle nějakých

zajetý standardů a postupu ale přitom každý ten kus nábytku který vylomí může být jiný

není to žádná průmyslová velkovýroba není toto jako fi K kde prostě máte padesát nebo

sto spolu každej všechny jsou stejný ale to člověk kterej do toho vnáší určitý prvek

individualismu ale přitom pracuje podle zajetý postupu

to znamená já si myslím že vývoj softwaru je kreativní či no

a je to zároveň řemeslo

dá se na to taky dívat jiným způsobem že já jsem sice říkal že to

spíš řemeslo nevšimneš nějaké nějaká průmyslová fabrika ale svým způsobem něco průmyslu a podstatný je

že ten vývoj softwaru nějaká průmyslová disciplína která je prováděna týmy vysoce odbor vysoce kvalifikovaných

odborníků neboli softwarových inženýrů

o toho vlastně se odpíchnuto píchnu potom

napíchneme když se budeme bavit o to o těch softwarových o tom co by měl

umět N dobrý voják poďme se ještě na Q zamyslet nad tím sou charakteristický dnešní

projekty

dnešní projekty jsou velmi často složitého dosáhla

jo samozřejmě těmi projekty budete jsou samozřejmě jsou formy který vyrobit vyrábí dobový aplikace jo

nebo vyrábí webový stránky kde prostě vezmete redakční systém upravíte měl několik věcí a pak

to dodáte zákazníkovi nechci na takovými projekty ohrnoval nos nechci říkal že sou nějaký někde

sou méněcenný nebo že toto je že prostě dělají míň kvalitní práci ale přece jenom

toto je to je dejme tomu okraj většina softwarového průmyslu nebo většina těch velkých projektů

je dneska o tom že jsou to složitý a rozsáhlý

rozsáhlý systémy to modře to znamená

vo jsou obsahu jo

komplexní funkcionalitu obsahovou celou řadu technologií a co je důležité se musí na ni pracovat

týmy lidí obvykle na velkých projektech nepracuje jeden tým protože upřímně řečeno jeden tým můžem

jeden tým může mít tak zhruba dejme tomu

o do patnáct dvacet lidí už když má tým dvacet lidí tak už je dost

velký of tam začíná být problém auře stejně ten tým musí nějak vnitřně strukturovat nominally

děláte s velký si projekt na kterým pracuju třeba desítky nebo stovky lidí tak už

tam těch týmů musíte mít víc znamená na těch projektech nejenom že se vyvíjí v

týmu ale vinnýho více týmu a ty týmy musí com komunikovat i mezi sebou

ty projekty často sou charakteristický tím že to systémová integrace dneska málokdy vy víte nějaký

systém na zelený louce protože každá firma každý zákazník už má nějaký informační systémy má

nějaký C aplikace a podslovy výsevy musíte integrovat tím touž má to znamená zase je

to další prvek který nám do toho vlažná že nějakou složitost protože musíte řešit nejenom

po tady mysleli vy ale musíte řešit taky nějaký jiný systém musíte řešit to jiné

komponenty které s tím vašim musí spolupracovat co je důležitý u takovýto systému složitých je

nutná nějaká zpětná vazba a komunikace bodě zákazníkem

a nebo alespoň analytiky

ne vždycky je dobrý když ten vývoj a přímo komuniké zákazníkem tomu se dostaneme za

chviličku to znamená ale nějaká komunikace tam je potřebujete upřesňovat o zadání by dneska klasický

metodiky jsou založený na tom že máte kompletní specifikaci ale eště v životě jsem neviděl

specifikaci ve který by bylo opravdu všechno a byly i byly opravdu kvalitní specifikace ale

vždycky tam nějakej decal chybí protože ten až teprv když to vezmete implementovat tak zjistíte

že se vám tam objevila nějaká otázka na kterou analytik zapomněl bych připravoval když dělal

tu analýzu a při provozu specifikace

o to se právě dneska často řeší tím že se používají agilní metodiky jo já

jak do zápis potkal nebo vyzkoušel nějakou agilní metodiku

no už někdy pracoval na nějakém projektu kde se používá scrum

extreme programming

něco jinýho

to konkrétně

a

A Z tak si nemám žádnou zkušenost ale slyšel tohoto hezky

jo volnější scrum jakmile něco volnější scan tak to není scrum to nám to tohoto

to je to je právě to je problém že když někde chcete nasadit scrum tak

zjistíte že spousta firem jako by chtěla mít kam ale nechce to dělat tak jak

to pak metodika scrum popisuje

a nevím jestli jste slyšeli

u nás největším expertem na scrum je panovalo

a ten je na ten vždycky s tohoto ne vždycky sto takový poměrně nervózní a

nevrlý když jo nějaká forma pozor na konzultace a mohli poměrně drahé konzultant že dobré

a pak sem tam snaží vysvětlit že voni chtěj ten scrum ale nechtít udělat tak

jak se to má dělat scrum ale trošičku jinak že voni třeba nemůžu toho zákazníka

zapojí do vývoje samozřejmě ve chvíli kdy nemůžete zapojit zákazníka do vývoje tak nemá smysl

uvažovat o jakým agilním přístupu můžete udělat nějaké svůj vlastní i na os metodiku ale

můj je otázka jestli vůbec máte vy nazývat agilní mimochodem to je jeden problém který

řešíme momentálně i

vo naši společnosti

a o není to rozhodně to není jednoduchý

to znamená pokud se někde dostanete do týmu kde budete opravdu používat plnohodnotný scrum tak

vězte že vám budou ostatní závidět a já taky

každopádně C podstatný až X K tomu dobrý mu softwarové samozřejmě potřeba tým kvalitních lidí

nejsou to jenom vývojáře potřebujete tam celou řadu dalších rolí čím větší projekt tím více

rolí a tím víc lidí no ale my se tady samozřejmě budeme na podívat pohledu

toho vývojáře to znamená budeme se bavit o těch vývojáře

to už se dostáváme teď se dostáváme k tomu nejdůležitějšímu cpeme prezentace a sice k

tomu co je teda důležitý u vývojáře

tak samozřejmě to co vás napadne sou ty technický znalosti a zkušenosti

dobrý vývoj by měl znát pro nějaký ty programovací jazyky nebo vono mnohdy stačí když

na ten jeden a zná ho dobře

ale

do zvána právě jeden programovací jazyk

dost vazná dva programovací jazyky

doznává na s tím zná znamená že se v něm aspoň něco naprogramovali jo ne

něco malýho jo nevím něco to znamená do z vás zná konci programovací jazyky

ale dobře právě si tak

čtyři

pět

šest

sedum

víc než dvacet

nebo udělejme to jinak do na vám že kdo z vás zná javu

céčko

C plus

jo vlastně

bytem

páru

lehátko

assembler

a na skel

pro

brain pak

no byly myslím ještě dlouho jo

je to je to opravdu strašně moc

a já zapomněl jsem tam je tady někdo kdo zná kdo sonar aby

tak určitě jsem zapomněl určitě sem zapomněla celou řadu jazyků ale

samozřejmě čím víc znáte jazyku

ne nic neni neznáme ne není pravda že čím víc znáte jazyků tím líp jo

on L někdy lepší znát jeden dva jazyky znáte pořádně mi zná spoustu jazyku a

žádný pořádný žádný z nich pořádně ale na druhou stranu samozřejmě čím vyznáte jazyků a

čili znáte konceptu tím větší máte přehled a tím spíš ste schopni třeba když se

potom pozici architekta zvolit vhodnou technologie nebo vhodný řešení na daný jazyk

takže když budete potřebovat nastartovat nějakej scénář nějaký ze tak budete vědět že na to

třeba dobrá nějaká lulat jo a nebudete se to složit jo to za ten příběh

dopis asembleru

samozřejmě další důležitou věcí souměr knihovny a technologie jo to znamená ten jazyk sám o

sobě nestačí potřebujete k tomu knihovny a zejména kdy vy víte nějaký which informační systémy

tak těch knihovny potřeba celá řada je potřeba celá řada technologií jo zase záleží to

hodně na tom jaký typy aplikací řešíte netipla formátovacích jazycích ne toho celá řada

obecně je velmi sou hodnotim programovacím jazykům a tím knihovna má technologiím se nebudu týdle

prezentaci moc věnovat jo vezmu to protože žid říkám to je strašně moc a to

je věc kterou určitě sami dobře znáte a není potřeba se kolem toho zastavovat tomu

se budeme účtu věnovat trošičku u toho se zastavíme trošičku víc sou nástroje

nástroje jak už název vyplývá je něco co vám pomáhá řešit nějakej problém že jo

a zase je potřeba znát vhodný nástroje a je potřeba ty nástroje umět používat

víte je riziko toho bych tě když znáte těch nástrojů málo

že ne na je ta ten správný víte co se stane když budete muset držet

kladivo

každý problém bude vypadat jako hřebík

jo

takže s těma nasrané to podobný samozřejmě je sou strašně důležitý nějaký já se omlouvám

já budu říkat podle pořád dokola že něco strašně důležitý jo protože samozřejmě všechno je

to důležitý

ale

ale to se nedá nic dělat důležité sou taky doporučené postupy že jo nějaký beztak

tisíc návrhový vzory a podobně

stejně tak jsou potom potřeba nějaký obecný koncepty obecný znalosti obecný principy

nicméně todle sou všechno technický věci to sou takový věci který věci zadara ajťák nebo

většina ajťák má nějak více či méně balíku

ale další věcí kterou která které sou taky důležitý a kterým bych se chtěl trošičku

věnovat jsou tak zvaný soft skills

takovýmu moderního populární slovo dneska i na větší univerzitou nějaký kurzy na to skills a

podobně někdo po mermomocí chceme protože všude píšu že to důležitý někdo jinej se na

podívá že stovky jo že to je to přece není potřeba nebo že to zbytečný

já si myslím že pravda někde uprostřed každopádně nějaký sociální dovednosti jsou potřeba a sou

důležitý

nevím jestli do tohodlectoho je vhodný řadicí třeba spolehlivost

to znamená schopnost dodržet ani na kvalitu ale vzhledem k tomu že todlecto úzce souvisí

některými opravdu o volní těmi měkkými dovednostmi tak to mám zařazeny tady po touhlenctou u

kategorií dál dále to samozřejmě nějaká schopnost spolupráce prachatým úplně na začátku jsme si říkali

že dneska většina těch velkých projektů je opravdu batika složitých to znamená pracujete na tom

týmu

samozřejmě důležité komunikace a jednání s lidmi protože musíte

bit někteří ajťáci jsou takový spíš volitelně tak a o nerdi tak jako sou situace

kdy prostě je potřeba s někým jedna no a to je důležitý a to často

může znám počet co je

často podceňovaný je schopnost a umění pro na výsledky své práce můžete naprogramovat sebelepší prodat

produkt sebelepší program ale nesměli kde vone budete umět pro data ne budete umět vysvětlit

zákazníkům nebo vašemu nadřízeným u

že opravdu tak dobrý jako je tak samozřejmě vám to nepomůže jo vemte si třeba

tetě no velká velka

velký halo že microsoft před přeneslo tabla jo přišli tabletem

samozřejmě všichni říkají že microsoft kopíruje vo up obchod applu já se přiznám že já

osobně nejsem příznivec ani společnosti microsoft ani společnosti a to

a takže se teď ve velkém hovoří že jako microsoft okopíruje o teplu ale přitom

ve skutečnosti microsoft přišel s prvním tabletem a po koncepcí jaká se dneska používá už

někde já nevím kolik to bylo dva tisíce čtyři nebo

nebo dva tisíce dva jo ale vemte si

přišli tabletem ale neuměli tomu dělat pořádnej marketing takže nic přišel jako ten marketing má

dobrej a mezi náma ta technická kvalita těch produkuje taky poměrně slušná okamžitě se kolem

toho vznikla obrovské high a dneska k skoro každej se mít oblast do vás na

tabla

do vás ho nemá ale chtěl by

a kdo ho nemá životě by to nechtěl

a to

či ano

já se k tomu ještě dostanu já toto dřevo budeme samozřejmě je to pro bla

je to problém

ne

je tady ta otázka byla o tom že žení řada dobrých ajťák nejsou introvertní a

samozřejmě s tou komunikací mají problém já sektor tomu let tomu to je samozřejmě otázka

která se nabízí já se k ní dostanu za chviličku

jo

no a to ještě důležitá věc

extrémně důležitá věc možná jedna z nejdůležitějších ale bývá opomíjena a to je motivace

motivace já tam já ho motivaci se bavit moc nebudou protože já jsem psal o

tom co to tadle přednáška se menuje to by

měl umět dobrý vývoj

a motivace není něco co umí tale motivace něco to máte a o tom abyste

byli dobře motivovaní tak to je hodně o tom jaký podmínky pracovní dostanete

kolik že samozřejmě kolik dostanete plně ale není to jenom o penězích je to samozřejmě

ta vnitřní motivace strašně důležitá a

pokud chcete mít dobrý vývojáře taky dobrý když vaší primární motivací je takovej ten dobrý

pocit dobře odvedený práce

vyhodíme který že to znamená že máte pracovat na pásku to rozhodně ale třeba firmy

jsou hodně opatrných tom jestli přijdete na nějaký pohovor a teďka firma získá dojem že

vaši hlavní motivací sou peníze tak přestože třeba nechcete tolik kolik by vám také klidně

můžete chtít poli že to že by vám to sta formativně dala ale pokud a

firma začne mít pocit že ty peníze sou pro vás hlavně a jedinou motivací tak

ta firma je dost pravděpodobně před váma dá přednost i u kandidátovi

my třeba když vybíráme říkám já sem byl má řadě pohovoru jak pozice toho uchazeče

tak pozice toho člověka který rozhoduje o tom nebo spolurozhoduje tak ve chvíli kdy máte

pocit že ten člověk že ta motivace penězma je strašně pomíjivá protože ve chvíli kdy

dostanete nějakej plat tak si není za chvíli zvyknete a

by byť nechci říkat že ty peníze vůbec nejsou důležitý a že prostě musíte člověka

motivovat že vono častou často když se mluví o tom že peníze nejsou důležitý je

že důležitá jiná motivace je to taky často veslové firma který máme sou přidat

jo ale to je samozřejmě špatně ale na druhou stranu něco pravdy na tom je

že opravdu

nejlepší a nejproduktivnějších vývojáře jsou ti kteří jsou motivovaní tím že chtějí řešit zajímavý problémy

kteří chtějí něco udělat něco vyřešit něčím novým se seznámit něco novýho se naučit to

sou lidi kteří jsou nejžádanější jsou po lidi kteří mívají taky neúspěšnější protože takovej ten

dráhy jako tak teď prostě podle mě zajímá tak potom ve chvíli kdy se do

toho takovou smete tak prostě na tom děláte a nenecháte se ničím vyrušit a podobně

ve chvíli kdy vaši jedinou motivaci jsou peníze tak ty výsledky nikdy nebudou tak dobrý

jako když se to motivace ji na

mimochodem pokud vás ta problematika kolem ty motivace zajímá tak je docela dobrá knížkami nese

popu ono

jo teď mně za teď sem zapomněl jak se to jak se to menu jak

jsem ne ten autor ale když myslím si že moc knížek o motivace tmavém pohon

na true není takže když se podíváte tak se o tom že to něco přečíst

to znamená když si to be dobrý vývojářem tak je ale to není věc kterou

se naučíte to věc kterou mít máte nebo nemáte ale pokud máte tady tudlectu motivaci

pokud vás obalí a děláte poradit tak samozřejmě je to právě to strašně důležitá věta

jednou pro obrovská výhoda oproti vašim kolegům

poďme se protějšku podívat na ty těm technickými jsem se samozřejmě ještě na chvíli vrátím

ale podle se teď podívat na ty na ty věci ne technický

jednou z důležitých věcí nejenom a jistý ale všeobecně je spolehlivou

to znamená schopnost dodržet termín dodržet zadání a dodržet kvalitu

protože to důležitý

to je tak je to důležitý protože na tom závisí úspěch celého týmu

ve chvíli kdy pracujete s týmem a teď s týmu a teďkom týmu máte člověka

který vám slíbí jo do pátku ty validace budou

a voni do pátku nejsou tak samozřejmě ten zbytek týmu s tím pro bla

takže potom samozřejmě

ten tím ten tým nedotkne nesplní třeba termín právě proto že některých těch jo členů

nesplní ten svůj potencují komitne

a zároveň na té schopnosti dodržet ten termín a tu kvalitu záleží i vlastně osobní

úspěch toho daný ho vývojáře

proto samozřejmě i jeho další motivace protože pokud dodržíte termín a dodržíte kvalitu a dodržíte

zadání tak jednak s váma bude spokojený ten nadřízený budou s vámi spokojeni kolegové týmu

dostanete adekvátní odměnu a případně dostanete prémie a hlavně budete mít pocit dobře odvedený práce

určitě to nám určitě to znáte ne když prostě když prostě

něco udělám dobře tak to mám potom takovej dobrej pocit a motivuje mně to k

další

další práci o tom stejně jako já takle

jo to znamená to je to znamená to je hrozně důležitý a ve chvíli kdyby

nejsme schopný tady tydle a ten termín a tu kvalitu a to zadání dodržet nebo

něco s toho tak samozřejmě z toho pramení nejenom že s váma samostatně nespokojený ale

pokud nejste pokud nejste

nějaký slov co

já nevím bit jaká mě napadne víme sečtete senza levom tam používá pojmy smrt a

vohnout

a já teď nevím jako formulovat jinak prostě pokud se člověk který má nějak rozumně

nastavili ty hodnoty tak tam i za sebou nese spokojený pokutu nedodržíte a největší problém

je vtom že to i vám samotný vlastně odebírá motivaci odebírá to vaši spokojenost odebírá

to vaše dobrý rozpoložení a roztáčí se nám spirála že tím spíš nejste schopni potom

podávat dobrý výkony když se vám jednou něco nepovede tak to může být určitej určité

impulsní udělá to určitým způsobem posunout že si řeknete tak mě se to nepovedlo ale

teď se zatnu jo teď prostě se heslo aby to prostě dodělám napravím to dotáhnu

to

když se to stane občas tak to takle zafunguje může to za fungovat jako určitý

určitej pohonu určitá zpětná vazba určete katalyzátor ale když se to stává pravidelně tak potom

dřív nebo později rezignuje té a velice rychle se dostaví syndrom vyhoření a pak o

to určitýho B bodu zlomu už není potom návratu

jakým způsobem na po jakým způsobem se s tím porvat abysme byli schopný dobře do

B spolehlivý a jevy se spolehlivě naším pohledů

tak se samozřejmě zákonem sou dvě věci jednak mít zvládnutý sebe řízení

a tady máme nezmar jo to znamená dobře plánovat časem to že věc která je

samozřejmě to je důležitý ve všech oborech lidský činnosti

a spoustu lidí si myslí že ten tady mezi třeba důležitýho pro manažera který má

tady který schůzky a musí pracovat se spoustou lidí a podobně ale není to pravda

ten tady management je důležitej pro každýho člověka I pro no obyčejní ho datovýho vývojáře

je důležitý aby si uměl dobře rozplánovat práce ten time elementem jenom o to že

si naplánuju kdy co budu dělat ale ten tady menežmentu je taky o tom že

třeba vím čím ztrácím část nebo vím kdy mám win kdo vás někdy mapová zima

nejproduktivnějších žádné

nevím jak vy je sou lidi kteří třeba toho nejvíc udělej večer jo ve chvíli

kdy doušek města jo manželka děti a podobně jo mám kamaráda který už vlastně kdysi

dávno během studií patřil k těmto chodili spát pozdě a ráno stávaly pozdě což byl

trošku problém že potom mnohdy ani nevěděl co to je dopoledne za přednášky a docela

blbě sem cestoval rozvrh no a dnešní době on to má tak že on chodí

spát někdy kolem osmé deváté ráno

a stává někdy vo šest

dospět se odpoledne

takže to ale vono stevena se udělá prostě strašně moc protože má plicního neruší sice

nevím jak sem jak se mu s manželkou podařilo zplodit dvě děti protože se podle

nemaj kdy potka na tom potřebné místě ale funguje to a pak sou lidé kteří

když nastanou brzo takto nejvíc udělaj ráno jo třeba já osobně jsem vždycky byl takový

a rozhodně nepatří mezi ranní ptáčata práce ráno pospím ale mám vyzkoušený že když ráno

se mi podaří stav proto tak dopoledne to udělám strašně moc jakmile do potom na

obě tak po vobědě začnu právě o který se mi mohli kouř učit neudělám takže

vodpoledne si nechávám na to že může vyřizuju maily jo nebo telefony nebo takový ty

věci nebo N si domlouvám konzultace studenta má takový ty věci který nejsou

příliš náročný

každou to znamená ten kajmanech mezi opravdu důležitej a není to jenom o plánování času

je to celkově o celkově o tom jakým způsobem se schopni s tím časem hospodařit

efektivního využívat

znamená to je jedna věc ten tady menežmentu a po sebe řízení další věc která

s tím úzce souvisí je disciplína

jo to je takovýto že když prostě

na tento termín je až za měsíc jo třeba termín odevzdání úlohy nebo projektu do

školy tak proč bych proč bych se dneska nezašel na pivo nebo byl bysme dělal

něco jinýho a potom se objeví potom se objeví ten termín objeví se ten deadline

a vy najednou zjistíte že máte práce tak na čtyři dny a máte na to

zhruba taky čtyři hodiny

takže ta disciplína docela důležitá je to asi možná nejsložitější tady těhletěch bodů je to

asi ta nejsložitější v je ta která stojí nejvíc úsilí a nejvíc nějaký sebe kázně

a sebezapírání

ale samozřejmě ten kajmanech menta disciplína nejsou jediný věci

velmi užitečná věc je to že když dostanete nějaký úkol nebo samozřejmě i když zadáváte

úkol tak je dobrý trvat na tom aby ten po měl tak zvaný s má

zadání do vlastně vyslyšel tu zkratku smát

osm R je zkratka která vychází jsou to počáteční písmena

pěti vlastnosti který by měl mít dobře zadaný úkol S znamená že ten úkol dobře

specifikovaný

to znamená že jasně popsaný co je cílem toho úkolu

jo to znamená není to takový že prostě šelmám řekne řeknete no my bysme tady

potřebovali todle vyřešit a vám řekne takto vyřešte jo ale řekne vám to a neřekne

vám vy vlastně nevíte co máte dělat to znamená to S znamená že ten úkol

dobře specifikovaný ajaxem zadávající tak ten

tak ten simulovaný oba dobře ví co má co je předmětem toho úkolu

další to písmeno M znamená že to měřitelný je tam nějaká metrika je tam nějaká

metrika podle která vy ste schopni jednoduše rozhodnout je ten úkol splněny není ten úkol

splněn když budete mít dva kopáče který mají vykopat víko tak ta metrika je jednoduchá

ten výkop má bejt metr hlubokej dva metry širokej a já nevím deset metrů dlouhej

tak ta metrika jednoduchá vezmete prostě metr měříte a víte splněno nesplněno

jo ve chvíli kdy máte

kdy máte nějaký úkol kde to metriku nemáte jednoznačně danou jo to znamená šéf vám

řekne třeba dejme tomu naprogramujte tady aplikaci která mě věží tady tendle problém jo nebo

která vyřeší ten problém s těma dovolenejma doby něco naprogramujete avon potom přijde a řekne

no a to se mi nelíbí a sem vám říkal že to má bejt hezký

jo třeba tak jako to není to není toto není

tam není žádná metrika jo to znamená vy když ty když ten úkol vyřešíte tak

nevíte si to splnily nebo ne znamená sedum další věc že tam musí být metrikám

musí být měřitelný jestli byl splněný nebo ne třetí věc je to znamená se akceptovatelný

že to úkol který akceptovatelný nebo akceptovaný to znamená že to úkol který akceptujete to

znamená že vy řeknete ano tadle úkolu musí splnit nebo ano tendle úkol splní jo

mám na to část nebo mám na to prostor mám na to znalosti mám na

to podmínky jo to znáte důležitý aby ten úkol byl akceptovaný než vám šest něco

pošle do mejlu a prostě žádná diskuze a žádný prostor pro oznámení zvon vám řekl

že to máte udělal do příštího T nábytek mami máte teď logická dovolenou jo dominate

další že

R znamená že to má být reálný

to znamená že ten unk o musí být ve vašich síla

jo to znamená že vám nikdo nedá za úkol prostě za tři dny naprogramovat na

program kompletní carem po jo nebo prostě vám tady za úkol abyste V ve stanoveném

čase vyřešil nějaké entou udělali algoritmus kterej bude řešit nějaký nějakém stanoveném čase nějaké npúplný

problém a podobně

poslední je poté a poté znamená že musí být jasně stanovený termín to znamená že

víte kdy ten kdo ten úkol zadal doby ten úkol má být splněny

to znamená to sou ty to sou ty to sou ty body s mára

a to znamená každý úkol který je takovýmdle způsobem zadaný by každý měli resetovat na

tom aby veškerý úkoly který dostanete byly zadány tady tímhlectím způsobem

další věc je to říkali je takovej s tím že se že se vo pepíček

na tatínka jako

co je nebo of

tak zapomněl jako přesně ale je tam něco o tom že je tam něco o

tom že dítě se ptá svého tatínka jaký by měl být prán jímuš

a že správně buď by měl být to čestný

a rozumí a to znamená dočasným už vždycky dobrý to slíbí

a rozumím už nikdy nic neslibuju

jo to znamená todleto je todleto je přesně taky věc neříkám někdy něco slibovat že

jo když tý vaší partnerce nic myslí víte tak

tak vona si vás nevezme jo nebo

vám

ano ne po neposkytne jiné věci

každopádně

každopádně důležitý ale vím když něco slíbíte abys aby to bylo splnitelný jo to znamená

je to hlavně důležitý proti tý nadšení znáte to přijde za váma zákazník nebo váš

nadřízený nebo polekat nějakým zajímavým problémem a vám se to začíná hrozně líbí začnete bejt

nadšený rozmete vymejšlet jak by se to dalo ještě vylepšit jo zejména když jedna tak

zejména když takle pošlete nezkušený ho vývojáře na jednání zákazníkem tak zákazníci jednoduché redakcí systém

jo za určitou cenu a přijde tam programátora ten mu řekne je to jsou pro

to by mohlo umět ještě podle zákazník samozřejmě na všechno týdne že jo nula nemůže

potom samozřejmě zjistíte že toto ste na slibovali že není vůbec reálný dodat mzdu a

už vůbec ne v daném termínu a zadanou cenu

s tím souvisí další věc je potřeba se naučit provádět rány odhady to znamená ne

přeceňovat se ani se nepodceňoval

s tím podceňováním zas až tak často problémy bývá ale to přeceňování je docela problém

protože často když vidíte nějaký problém tak vzhledem k tomu že se vysoce kvalifikovaní a

máte ty znalosti a zkušenosti tak víte že tendle typ problému je v podstatě jednoduchý

a že by neměl být pro kdyby to otázka pár hodin jenomže mnohdy vzhledem k

tomu že jsou to složitý věci tak na první pohled si neuvědomíte že jsou tam

nějaký komplikace nějaký složitosti nějaký zákoutí do problém který je řešitelný během deseti minut se

může protáhnout na několik hodin ve chvíli kdy zjistíte že se zapomněli na jeden drobný

aspoň že tam třeba potřebujete nějaký vstupní data který nemáte k dispozici a který jsou

nějaký datový struktuře která je momentálně nedostupná a kvůli to musíte překopat celej celou architekturu

program to se mně stalo zrovna včera

a kvůli tomu sem šoupat asi o tři hodiny později sem plánovat že sem chtěl

udělat triviální refaktoring a zjistil jsem a doplnit jednu funkci a zjistil jsem že ten

triviálně faktor budem C podstatě komplexnějším že tam potřebu nějakou hodnotu kterou tam byly potřebuju

prostě nemám dispozice že na to je potřeba dávat pozor obecně a odhady platnosti to

jedna z nejsložitějších věcí o data branže toho softwarového inženýrství

a to je taky důležitý ve chvíli i když podle všechno dodržíte může se stát

že narazíte na problém který jsme nečekali pak je strašně důležitý

o buď vobčas řešit to znamená neříkat o vyřeším potom ale víte jaké zásada když

máte když máte před sebou nese problém který z nich byste si měli vybrat jako

první

nejsložitější ten nejsložitější nebo ten kterýho se nejvíc bojíte ono se nakonec může ukázat buď

že se o sice bojíte leží ve skutečnosti jednoduchý což vás povzbudí a na motivuje

vás to a bude opravdu složitý a je tam nějaká komplikace tak na to přijdete

včas a budete mít víc větší časovej prostor na jeho řešení a když nebo budete

mít nějaké prostoje tak ten pak můžete vyplnit i mamí složitej má okolo bohužel lidská

přirozenost je taková že naopak ty nejtěžším kulisy necháváte nakonec jo a

a to je samozřejmě špatně tak znamená je potřeba ten problém řešit část a pokud

nejste schopni řešit tak o něm včas informovat zaškolení týmu nebo nadřízené jo protože ten

nadřízený potom V ten nadřízený počítá s tím že za ten že tendle že tam

postihne to za dvě na dvě za dvě hodiny a pak někdy za ním přijdete

za dva dny a zjistíte on zjistí že se dva dny dělali na tomdle tak

pak máte problém vo mám to neuzná nebo to budete muset naprosto tak účes asi

a podobně a vony nespokojenej abyste nespokojený přestože třeba opravdu to byl úkol který nebyl

ve vašich síla

bývalý ve petr někde sem pracoval před tím tam se měl jednookou které bylo hrozně

šikovné ale hrozně úzkost levej a když narazil na problém tak to považoval za svoje

osobní selhání a nikomu o tom neřekl a měl pořád problémy s projektovým manažerem a

protože mu dlouho trvalo když pochopil že když přijde zatím manažerem nebo zatím tým lidem

nebo za svým kolegou a řekne mu hele sorry já opravdu

já opravdu tady tomudle nerozumí nebo tady s tím zatím si nevím rady takže on

bude hledat řešení a ne a nevniká nebo prostě nebude mu nadává nelezl úplně nebo

blbe tak vlastně pak takto funguje naštěstí na to potom ve chvíli kdy ho málem

vyhodili

tak sme si sedli o ten liniový manažer ten projektový manažer byl sem u toho

já to byl můj kamarád a já jsem taky určitou pozici menežmentu našeho jsme si

vysvětlili a pak to začalo tak pěkně fungovat máte taky důležitý čas řešit problém nebo

o něm aspoň informovat že podle nějakej pro bla a to je taky důležitý je

zaměřit se na ty důležitý věci neztrácet čas na pod různost tak jo to znamená

ne neplýtvat tím časem na mise který nejsou podstatně lze měřit opravdu na to důležitý

do vás já nevím jak se na tom vy ale já když sem začínal vyvíjet

tak se měl začínal jako programovat tak se měl spoustu stylech nápadu kolik kilik aplikací

napíšu a to třeba potřeba každej tejden sem začal program ottovu aplikace nebo je dvakrát

do měsíce

mám doma celou řadu aplikací ve kterejch nám akorát hotový hlavní menu a třeba vo

jo a funkcionality ani čárku

tak samozřejmě jako spoustu věcí jsem se na tom naučil myslím si že jsem jeden

nejvyšších expertu na evou boxy česku

ale samozřejmě otázka jestli nebo to důležitý nebo ne

čili o podle co sou nějaký typy nějaký rádi který je dobrý na ně myslet

a pak najednou zjistíte že dodržet termín

a kvalitu že není tak složité úkoly by se mohlo na první pohled zdát neříkám

že to jednoduchý že to nestojí nějaký úsilí ale je to zvládnutelný pro bla

další věc o kterém sme se tady o který sme se tady zmiňovali a komunikace

jednání s lidmi

jak tady mám tady právě tu poznámku to že jsem se to na to co

nejvíc diplomaticky že u některých špičkových I P odborníků nepatří schopnost komunikovat a jednotlivými těch

silným stránkám

ve své kariéře sem se potkal celou řadu poměrně extrémních případu tady tohodlectoho

to sou lidi kteří jsou opravdu špičkový

ve smyslu opravdu kvalitní odborníci ale nemůžete je nechat jedna ze zákazníka

jednak někteří z nich

ne vždycky dodržujou treskou

ivan a musím říct že i že i

snad jedině bankách na ten deskou to úrovně hákliví ale i ve firmách kde na

ten dres code hodně hrajou tak jsou lidi kteří jsou natolik snad natolik kvalitní a

natolik dobrý a ta firma v nich vidí ten přínos že u ní určitou vínku

deskou udělá samozřejmě takovýho člověka poslední někde do nějaký místnosti která je co nejdál o

koridoru kde se pohybuju zákazníci nebo obchodní partneři

a případně takovýmdle lidem se z radosti spolu moc jestli a podobný věci

ale

ale pokud ten člověk má něco nabídnout jinýho tak to není problém jo to znamená

já se k tomu ještě vrátím na chviličku na dalším slajdu by se budeme bavit

obecně o týmech a podobně ale

bohužel ne všechny lidi takle můžete uklidní uklidit to znamená je dobrý pokuď i vývojáře

jsou schopni s těmi lidmi nějak komunikovat a jednat protože to je věc kterou děláte

denodenně

jak když si to tak vezmu tak

i když dobře já nejsem typicky vývoj a ale když sem byl na vývojářský pozici

tak sem zjistil že prostě třeba třicet čtyrycet procent času moc a někdy i víc

je o tom že ne že programujete ale že s někým komunikujete potřebujete osvětlit něco

zadání potřebujete něco

potřebujete něco vyřešit že vám chybí nějaký zdroje potřebujete něco integrujete

třeba v rámci firmy potřebujete k něčemu nerozumíte potřebujete si potřebujete aby vám to někdo

vysvětlil potřebujete aby vám někdo poskytl nějakou konzultace potřebujete aby vám někdo poskytnu nějakou zpětnou

vazbu o to znamená komunikujete jak s kolegy v rámci týmu i mimo tým musíte

komunikovat nadřízený jo a zrovna s tím nadřízeným je dobrý když jako to trošku když

to prvků mějte jo ne každýmu se poštěstí mít nadřízenýho kterýho má omotaný vokolo prostu

ale tím spíše potom dobrý když umíte se tomu nadřízený mu říct o toto potřebujete

nebo umíte za ním tříd a umíte s ním jednat na rovinu nebo umí tomu

umí tomu prostě říct že tak tady je problém a nebo tady to potřebu tady

to a to někdy musíte komunikovat zákazníkem to nebývá pravidlo zejména u větších projektů je

mezi váma zákazníkem analytik nicméně pokud máte to štěstí a máte tam nějakou agilní metodiku

tak je potom dobrý když toho zákazníka máte přímo v tom týmu a komunikujete přímo

s ním protože to je ten člověk který vám poskytne nejvíc informací o ty problémový

doméně

dále musíte komunikovat partnerskými organizacemi musíte komunikovat dodavateli těch systému a podobně

se důležitý je že musíte také spolupracovat týmu

tady je potřeba si uvědomit že tým je nějaká skupina lidí která pracuje společně na

dosažení nějakýho společnýho cíle a právě ten tým je složený z různých lidí z různými

vlastnostmi čili přínosem pro ten týmu může být i člověk určitou slabinou pokud je to

kompenzovaný nějakou jinou přidanou hodnotou této na k těm o čem jsme se bavili pokud

budete mít týmu jednoho nebo dva introvert i ale tím je ti lidé budou opravdu

špičkoví odborníci tak to není problém ten zbytek týmu se musí naučit jakým způsobem s

nimi komunikovat a bude to fungovat ale nemůžete mít tím složený jenom ze samých introvert

jo to znamená na druhou stranu todle i prostor pro vás pokud někdo z vás

třeba nejsem úplně špičkoví programátoři ale máte dobrý třeba jiný dovednosti taky by můžete pro

ten tým být přínosem sice nebudete řešiteli složitější problémy ale budete vlastně v tom týmu

řeší budete ten tým doplňovat nějakým jiným vhodným způsobem tato věc této souvislosti je dobrý

pokud si tu práci týmu vyzkoušíte na školním projektu na projektu s kamarády a podobně

je dobrý si z mapovací znalosti schopnosti a dovednosti silný slabý stránky identifikovat a na

základě toho se zamyslet jakou roli v tom týmu byste mohli mít jo podle samozřejmě

primární úkol pro toho člověka který ten tým sestavuje ale vy když dopředu bude eště

třeba v než se budeme ukázat nějakou práci budete podle vědět tak tím spíš se

budete hlásit na pozici kde vyniknout vaše silný nebo slabý stránky

samozřejmě extrémně důležitý je prodat mě prodat výsledky své práce marketing je důležitý bys apple

je to v důležitý u přijímacích a hodnotících pohovorů když jedná se zákazníkem nadřízeným a

podobně ono se říká že dobrá práce by se měla prodat sama ale často je

potřeba tomu trošičku pomoci

a je pravda že přehnaná skromnost tady není na místě ale samozřejmě na druhou stranu

musíte umět musíte místo proda jo to znamená jako jsou lidi kteří prodají i když

vůbec nic nemají a pokud v zejména obchodní odděleních některých sem sou na todle která

mě dobří ale samozřejmě i když něco máte taky dobrý to umět prodat je dobrý

rozvíjet V prezentační dovednosti nějakým způsobem to trénovat důležitá je samozřejmě dobrá příroda příprava na

druhou stranu je potřeba ne zveličovat svoji práci ani si ne přivlastňovací nějaké přínosy jiný

jo to se velice rychle obrátí proti vám na samozřejmě dobrý když svoje znalosti máte

čím prokázat nějakou certifikaci nějakými školeními a podobně zejména certifikace pro metry to sou takový

ty certifikace o ibm ty od microsoftu nebo oprátku jsou docela levný ta certifikace stojí

odspodu od i o toho jednoho sta dolarů tři stovek jo to znamená toto řádově

jednotky tisíc přitom touto certifikát vektoru majolku hodnotu znamená pokud chcete zvýšit hodnotu na trhu

práce není vůbec špatný se podívat tady na tydlety certifikát ve chvíli věku potřeba nějaký

školení takže to horším že ty školení tou sou desítky tisíc ale ty certifikace se

dají zaplatit i poměrně skromným rozpočtem

to bych jazyků nás a technologií já to tady mám na tom slajdu nějakej příklad

jak je potřeba na té platformě dělala enterprise edition ale samozřejmě na různých platformách to

bývá různý to znamená nebudu se tím zabývat nějak moc dopodrobna jo podívám se spíš

na ty nástroje

mezi nás mezi nástroje který potřebujete na každym projektu jsou jednak systémy pro správu verzí

to můžu mít klasický vědním stromem pro mě dneska už strašně zastaralý otce celé eska

je to s navržen

no a nebo samozřejmě distribuovaný tam jejich to zase celá řada

nejznámější asi git který se použít který používá třeba rather nebo se používá pro vývoj

linuxový o jádra ale poměrně dalším po frekventovaným nástrojem který se používá ve firmě má

snímat merkuria

obecně že to že ty distribuovaný primo ty jsou nástroje sou jsou o oblíbený oblíbenějšího

modernější ve většině firem že jsem se pohyboval nebo který se většinou používá ten zavržen

protože ta firma má ráda pod kontrolou celej ten strom těch zdrojáku a ten distribuovaný

vývoj moc ne voni to znamená ve většině ten se potkáte s tím taberny

pak to samozřejmě důležitý nějaký nástroje na sestavování projektů jo proud jednoduchých nástrojů typu mac

nebo budeš o výskytu až potom po komplexních systémů pro zprávu projektu jako je třeba

maven

mejm N rovná se někdy potom jiném

a do vás nemá hrách vlivem

a kdo zálohovaní lze nástroje kterýmu výrazně usnadňuje práci

většinou lidi který potkají maven poprvý tak měl jsou takový rozpačití ale na druhou stranu

ve chvíli kdy se kdy se s ním s kamarádíte a o že zejména když

se s ním potkáte poprvý tak se tak je to často teprve v době kdy

se třeba ještě nepracovali na tak velkém projektu abyste ocenili přínos takovýho nástroje ale musím

říct že třeba já se dneska vývoj bez menu nedovedu představit vyžaduje jo že skutečně

to nástroj který výrazně usnadní ten vývoj zejména si pokud lipov týmu a zejména pokud

se tam proces různejma vezem a podobně na maven nedám dopustit

samozřejmě důležitý jsou potom nástroje typu zvyšují taky tak některý firmy mívají nějaký svoje proprietární

řešení nicméně nejfrekventovanější variantou která se dneska používá ve většině podporu ve kterém je čaj

na

podobně jako pro spolupráci rozdělení znalosti se používá ho systém konzulem samozřejmě zde T další

věc kterou téměř vždycky musíte znát jako vývojářem microsoft office nebo alespoň open office protože

většina dokumentu která vám přijde o panely typu nebo zákazníka budou ve wordu nebo v

něčem podobny nebo tak celou takže pokud ten se zdali naprogramování protože nechcete nikdy nic

vonásek celém tak to budete mít životě docela těžký

samozřejmě důležitý jsou potom vývojový nástroje nějaký debuggery profilery a podobně

co je ale důležitý kontech nástrojů že umět je dobře ovládat že když umíte dobře

ovládat N nástroje tak vám to šetří spoustu času aby ten čas potom můžete věnovat

na řešení toho vlastního

problém

jo poslední věc která je důležitá sou potom nějaké doporučené postupy týká se to konvencí

nějakých best access east nějakých návrhových vzorů nebo případně anti vzoru důležitý je umět testovat

a znáte principy polem testování přičemž znalost a uplatňování tady těhletěch věcí hrozně důležitá protože

tím že znáte uplatňuje se tady tydle postupy takto vede udržovatelný kódu to znamená call

který se dobře opravuje upravuje udržuje optimalizuje fakturuje dobře se do něj doplňuje nová funkcionalita

a podobně a hlavně je to de facto nutný k tomu abyste mohli ten kód

sdílet v rámci týmu a v rámci toho týmu na tom kódu spolupracoval podle věc

která byla podceňovaná a můžu vám ví že pokud pracujete na projektu kde se podle

důsledně nedodržuje tak to není vůbec žádná příjemná zkušenost

jinak v tomdle tenhle souvislosti bych taky a

to je tam zkopírovaný ze špatnýho slajdu poslední věcí kterou je taky potřeba znát o

nějaký obecný principia koncepty to znamená měli byste něco vědět o architekturách počítačů o principech

operačních systémů o principech počítačových sítí o konceptech on o algoritmech pomát matematika je strašně

důležitá musím viděli jsem studoval tak mi přišlo většina věci kterou jsme se učili teoretický

informace nebo matematice tak sem si říkal že to sou věci na to akorát aby

nás potrápily že to praxi v životě nevyužiju a byl jsem překvapen jak brzo sem

tady tydlety znalosti využil protože to že se ve škole naučíte nějaké program maciaszek nebo

nějakou technologie to sou věci který za deset let budou úplně jinak ale ta teoretická

informatika pase tak rychle nemění a sou to principy který se uplatní pořád může vás

ulici že se od na o podle to můžete

opravdu opřít ve škole mě studenti často říkají že mají rádi moje předměty protože já

tam musím udělat vo to programování že to je to prakticky toto v životě využijou

I vždycky říkám abyste se nedivili tomato pak zjistíte že ta matematika pro vás mnohem

důležitější byste si mysleli mimo jiný protože mám přináší schopnost řešit abstraktní problémy

obecně ta znalostem principu a konceptu je velmi důležitá protože vy to sice můžete obejít

tím že použijete metodou pokus omyl ale

ta metoda někde efektivní nástrojem ale rozhodně by neměla být vaším hlavním o hlavní metodou

tak čili

to bylo to bylo o tom o mém pohledu na toho co by měl umět

a znát dobrý voják soubor samozřejmě jednak ty technický znalosti a jednak nějaký sociální a

komunikační dovednosti a dal bych vám snad jednu radu že by bylo dobrý se mapovací

schopnosti a dovednosti a nějakým způsobem si naplánovat vzdělávání a svoji kariéru aby se vám

nestalo toto některým vašim kolegům že strávíte pět a to nějaký pozici a pak zjistíte

že chcete dělat něco úplně jinýho že těch pět let pohledu vaší kariéry bylo ztraceným

časem

tak to jedné strany všechno pokud máte někdo nějaký dotaz

pokud ne tak budu ještě chvíli na našem spánku bunkr editu děkuju vám za pozornost

a přeji vám příjemný zbytek dne