Nejdřív pochopím cíl
Nejdřív si ujasníme, co potřebujete vyřešit, kdo bude s řešením pracovat a jak dnes celý proces funguje.
O mně
Jsem Honza a pomáhám firmám zjednodušovat procesy pomocí webových aplikací, automatizace a propojování systémů. Preferuji dlouhodobou spolupráci a největší zkušenosti mám s e-shopy, interními systémy, API a integracemi. Pomohu s odstraněním zbytečné ruční práce, propojením existujících služeb i dlouhodobým rozvojem aplikace. Na vývoji mě nejvíc baví pochopit, jak věci skutečně fungují, odstranit zbytečnou složitost a navrhnout řešení, které se lidem dobře používá a firmě šetří čas, snižuje náklady nebo pomáhá více vydělávat.
Primárně jsem backendový vývojář zaměřený na PHP, ale běžně upravuji i frontend. Vývoji se věnuji od roku 2007. Zkušenosti jsem sbíral na vlastních projektech, při provozování e-shopů, dlouhodobém rozvoji e-commerce platformy i ve větším vývojovém týmu. Díky tomu při vývoji vycházím ze zkušeností z reálného provozu a lépe dokážu zohlednit nejen samotnou implementaci, ale i dlouhodobou udržitelnost a skutečné potřeby lidí, kteří systém používají.
Příběh
S programováním jsem se poprvé setkal na Windows 98, kde mi kamarád ukázal, jak se v céčku dají vytvářet jednoduché hry. Mě ale brzy začal víc fascinovat internet a možnosti, které přinášel. V roce 2007 jsem začal tvořit své první webové stránky a postupně se zaměřil především na PHP. S kamarádem grafikem jsme tehdy vytvořili vlastní online projekt, který se postupně dostal až na přibližně 5 000 návštěvníků denně. Byla to moje první zkušenost s tím, že něco, co vytvoříte doma u počítače, může najednou každý den používat několik tisíc lidí. Projekt jsme později prodali; nový majitel pak navázal na jeho návštěvnost a silnou pozici ve vyhledávání.
Za první vydělané peníze jsem si pořídil Steam a výbavu na hraní Counter-Striku. Postupně mě místo hraní začalo více bavit podílet se na rozvoji komunity. Díky tomu jsem se učil spravovat servery, organizovat turnaje a administrovat herní ligy. Během hraní mě štvalo, jak složitě se ovládají servery při kompetitivních zápasech na ligách, a také to, že hráč, který dostal ban na jednom portále, mohl bez problému pokračovat na jiném. Naučil jsem se proto vytvářet pluginy a vytvořil řešení, které zjednodušilo ovládání serverů při kompetitivních zápasech. Později jsem založil portál forFAIRPLAY, kde se mi podařilo domluvit spolupráci několika konkurenčních portálů a vyvinout pro ně systém pro řešení protestů, banů a podvádění hráčů. To vedlo k větší transparentnosti, efektivitě a automatizaci skrz API propojení.
Současně jsem se v tom období začal víc zajímat o bezpečnost webových aplikací a hledání neočekávaných stavů, se kterými při jejich návrhu třeba nikdo nepočítal.
Během studia jsem absolvoval odbornou praxi mimo jiné ve Veolia Transport. Pracoval jsem v marketingovém oddělení, kde mi ukázali rozsáhlý excelový ceník jízdného a způsob, jakým se ručně přepočítával. Celý proces mi připadal zbytečně složitý, a tak jsem většinu praxe strávil vytvářením maker a podmínek, které velkou část výpočtů automatizovaly.
Byla to jedna z prvních situací, kdy jsem zjistil, že mě baví nejen něco naprogramovat, ale hlavně nejdřív pochopit proces a odstranit z něj zbytečnou ruční práci. Tenhle způsob přemýšlení se pak opakoval i u dalších projektů.
Psal se rok 2013. Měl jsem za sebou už pár webů a nastal čas nastoupit do první práce na plný úvazek. Nastoupil jsem k velkoobchodu, který tehdy prodával dámské spodní prádlo. Mým prvním úkolem bylo vytvořit maloobchodní e-shop Moderni-Boty.cz — můj první e-shop — a napojit ho na místního dodavatele.
Během vývoje jsem si všiml, že stejné produkty lze nakoupit výrazně levněji jinde. Řekl jsem to nahlas a brzy jsme e-shop napojili na jiného dodavatele. Díky nižším cenám, automatizaci a síti zavedených odběratelů prádla jsme pak mohli celý sortiment nabídnout i velkoobchodně. Navrhoval a vytvářel jsem API pro automatické objednávky partnerů, optimalizoval e-shop pro mobilní zařízení a ladil SEO. Během pár měsíců se e-shop dostal na přední příčky ve vyhledávání pro dotazy jako „dámské lodičky“, „dámské tenisky“ a podobně. API se později použilo i pro prádlo, díky čemuž mohli partneři snadněji objednávat a firma zvýšila tržby.
Práce na prvním e-shopu mě přivedla hlouběji k e-commerce. Vyzkoušel jsem si provozovat dropshipping e-shop a poté začal provozovat vlastní e-shopy od A do Z. Najednou jsem tak nebyl jen vývojář. Řešil jsem dodavatele, marketing, komunikoval se zákazníky, nakupoval zboží, balil objednávky a posílal zásilky. Právě tahle zkušenost dost změnila můj pohled na vývoj. Funkce, která vypadá dobře z pohledu programátora, ještě nemusí dobře fungovat člověku, který ji používá každý den. Za objednávkou, skladovou zásobou, změnou ceny nebo importem produktů je vždy nějaký reálný proces — a často také člověk, kterému může dobře navržený systém ušetřit hodiny zbytečné práce.
Když jsem začal provozovat více e-shopů, narazil jsem přesně na takový problém. Každý obchod měl vlastní administraci a spoustu věcí bylo potřeba dělat opakovaně. Produkty, obrázky, importy, úpravy i nové funkce se řešily na několika místech. Začal jsem si proto pro vlastní potřebu vytvářet systém, který správu více e-shopů sjednotil.
Nejsem obchodník. Jsem vývojář, který rád zjednodušuje procesy. Měl jsem postavený systém, který výrazně usnadňoval správu několika e-shopů, ale samotný systém nestačí. Potřebuje obchodní zázemí, zákazníky a člověka, který z něj dokáže vytvořit fungující byznys. Oslovil jsem proto bývalého zaměstnavatele s nabídkou spolupráce. Slovo dalo slovo a následujících devět let jsem se mohl soustředit na své silné stránky: vývoj a rozvoj platformy. Z jedné centrální administrace se postupně spravovalo přibližně 30 e-shopů. Hlavním e-shopem byl Amiatex, který vedle Česka a Slovenska prodával zejména do Maďarska a Rumunska, ale i do dalších zemí EU.
Platformu jsme postupně rozšiřovali o další jazyky, měny, dodavatele, dopravce, platební metody a integrace s marketplace. Právě dlouhodobý vývoj mi dal zkušenost, kterou člověk na několikaměsíčním projektu získá jen těžko. Systém nestačí jednou dobře navrhnout a naprogramovat — pokud má fungovat roky, musí se neustále přizpůsobovat reálnému provozu. Mění se požadavky, přibývají integrace, mění se technologie a některá rozhodnutí, která kdysi dávala smysl, by člověk po letech udělal úplně jinak. Přitom takový systém nejde jednoduše zahodit a začít znovu, protože na něm mezitím stojí každodenní fungování firmy.
Po letech převážně samostatného vývoje jsem si vyzkoušel také úplně jiné prostředí. Ve Sportisimu jsem se stal součástí vývoje, na kterém pracovalo přibližně 40 vývojářů. Působil jsem v pětičlenném podtýmu, který pracoval na interním systému pro zaměstnance prodejen.
Byla to pro mě důležitá zkušenost. Najednou nešlo jen o to, jak bych konkrétní problém vyřešil já. Každá změna mohla mít návaznost na práci ostatních lidí a týmů. Společný způsob práce, návaznosti mezi týmy, code review, komunikace, testování a přemýšlení nad dopadem změny byly stejně důležité jako samotný kód. Díky tomu dnes znám oba světy — velkou míru samostatnosti při budování a dlouhodobém rozvoji vlastního systému i vývoj jako součást většího týmu.
Když se dnes ohlédnu zpátky, moje cesta rozhodně nebyla jen řadou úspěšných projektů. Byla na ní spousta slepých uliček, nápadů, které nevyšly, špatných rozhodnutí i projektů, které skončily dřív, než bych chtěl. V referencích většinu z nich ani neuvádím, přesto je považuji za důležitou součást mé cesty. Naučily mě něco o technologiích, podnikání, spolupráci i o tom, jak bych příště stejný problém řešil jinak.
Mám tendenci věci budovat dlouhodobě. Baví mě systémy postupně poznávat, rozvíjet a sledovat, jak se během let mění. Zároveň jsem se ale naučil, že ne každý dobrý nápad se podaří dotáhnout, ne každá spolupráce vydrží a ani dobrý systém nemusí existovat navždy. Zkušenosti, které jsem při nich získal, si ale nesu dál — dnes díky nim lépe rozumím tomu, co může v projektu fungovat a kde naopak mohou nastat problémy.
Dnes se zaměřuji především na backendové systémy, e-commerce, API, integrace a automatizaci. Technologie se od mých začátků mnohokrát změnily a ještě mnohokrát se změní. Jsou pro mě především nástrojem k řešení konkrétního problému. Stejně přistupuji i k AI: používám ji jako běžnou součást vývoje, která mi urychluje práci při průzkumu, návrhu a implementaci, ale odpovědnost za pochopení problému, architekturu, bezpečnost a výsledné řešení (zatím) pořád zůstává na mně.
Po těch letech mě na vývoji pořád nejvíc baví vlastně totéž jako na začátku: pochopit, jak něco (ne)funguje, najít problém, který stojí za vyřešení, a navrhnout vhodné řešení, které lidé skutečně využijí. Díky němu mohou ušetřit čas i peníze, získat větší přehled a zefektivnit své procesy.
Jak spolupracuji
Nejdřív si ujasníme, co potřebujete vyřešit, kdo bude s řešením pracovat a jak dnes celý proces funguje.
Navrhnu, jak budeme postupovat, a vyberu řešení, které bude fungovat dnes i do budoucna.
Průběžně vám ukazuji, jak práce pokračuje, společně ověřujeme, že vše funguje podle očekávání.