Ondřej Jirman – životopis / CV / résumé

Jak mě kontaktovat se dozvíte na stránce s kontaktními informacemi.
Executive summary
Zabývám se vývojem webových aplikací v PHP a JavaScriptu. Databáze mě nedělají problém. Mám výborné znalosti jazyka C, platformy GNOME a open source programů obecně. Rád se učím nové věci, rozšiřuji a sdílím své znalosti. Věci mám rád jednoduché a přehledné.
Nedávné reference: PHP, JavaScript, databáze, jazyk C, open-source.
Co ode mě můžete očekávat
Vývoj webových aplikací:
- Schopnost vylepšovat stávající vývojové procesy (např. GENiE).
- Přístup k práci stylem Keep it Simple, Stupid!, tedy podřízení návrhu a vývoje tomu co dává smysl v kontextu požadavků.
- Přehled a praxi s mnoha open-source vývojovými nástroji a aplikačními knihovnami a schopnost je upravovat a rozšiřovat.
- Tříleté zkušenosti s vývojem webových aplikací v PHP, JavaScriptu a C.
- Zkušenosti s nasazením, rozšiřováním a údržbou databází postavených na PostgreSQL a SQLite. V menší míře pak MySQL.
- Základní cit pro design a schopnost nakódovat stránku v XHTML/CSS.
- Rozumím konceptům jako MVC, OOP, ORM, AJAX, bezpečnost na webu a umím je aplikovat v praxi.
- Mám vlastní framework pro vývoj webovách aplikací, který spojuje spoustu open-source technologií.
- Přehled o aktuálních webových technologiích (JS frameworky, RIA knihovny) a schopnost je využít.
- Jsem schopný systematicky testovat vlastní aplikace, vytvářet automatizované akceptační a unit testy, atd.
Vývoj Linux/UNIX aplikací:
- Schopnost tvorby multiplatformních GUI aplikací v GNOME pomocí libovolného z rozšířených jazyků (C, Python, JavaScript, VALA, PHP).
- Schopnost pochopit komplikovanou základnu kódu, kterou jsem uplatnil například při rozšiřování Novell Evolution®.
- Jsem schopný dlouhodobě spravovat vlastní kód a provádět rozhodnutí o refaktoringu, na základě zhodnocení přínosu pro projekt.
- Rozumím principům TCP/IP síťování a jsem schopný psát síťové servery a klienty. Jsem autorem open-source XML-RPC knihovny.
- Při vývoji této a jiných knihoven jsem se seznámil s výhodami, nevýhodami a záludnostmi tvorby více-vláknových aplikací.
- Umění navrhnout syntaxi jazyka a napsat pro něj parser v C či PHP (např. PHP parser generator).
- Sledováním mailových konferencí a přímou komunikací jsem pochytil procesy a zvyklosti v open-source komunitě.
- Rád experimentuji s novými perspektivními nástroji, například jazykem VALA, jehož experimentální podporu jsem integroval do libxr.
- Jsem vyléčený z do it yourself závislosti. Pomohly mi náplasti značky reuse, které jsou navíc úplně zdarma a dají se používat opakovaně.
- Napsal jsem balíčkovací manažer a zavaděč pro živou verzi pro Slackware Linux.
Další vlastnosti a schopnosti:
- Přestože psaní dokumentace nemiluji, jsem toho schopen, znám významné dokumentační nástroje a pro rychlou tvorbu dokumentace datových modelů jsem vyvinul i nástroje vlastní.
- Léta praxe s distribuovanými systémy pro správu kódu (SCM): GIT, nyní již mrtvý GNU Arch Toma Lorda.
- Začínal jsem programovat s assemblerem pro Microchip PIC a tedy alespoň principiálně vím, co se děje pod pokličkou, když používám nějaký vyšší programovací jazyk.
- Jsem schopný reverse-engineerovat spustitelné programy pro Linux a Windows. Rád čtu cizí kód a jsem schopný upravit činnost programu, bez jeho hlubší předchozí znalosti. Tuto svoji schopnost jsem využil při vývoji Zbloku pro Zonio.
- Jsem samostatný. Často jsem schopný vyřešit problém rychleji zběžným průzkumem kódu (například pomocí grepů), než hledáním řešení na internetu.
- Mám pětiletou zkušenost s operačním systémem Linux. Se Slackware a Arch Linux jako vývojář a správce balíků a s Ubuntu a Fedorou jako uživatel.
- Umím nastavit Linuxové servery a služby: web server, databázi, mail, DNS, sdílení souborů, filtrování spamu, atd. Napsal jsem produkční webové administrační rozhraní, které tyto činnosti provádí.
- Miloval jsem návrh, výrobu a programování různého hardware.
Business vlastnosti a schopnosti:
- Umím udělat dobrý časový odhad a dodržet ho.
- Snažím se dostat do krve business myšlení. Rozhodovat se, ne podle toho jak je xyz technicky dokonalé, ale jakou má hodnotu pro ostatní a jak ji co nejlépe komunikovat v podobě čísel.
- Mám schopnost identifikovat problém v jeho počátcích. Nemám problém se zbavit kódu, nebo postupů, které už nepřinášejí dostatečnou hodnotu.
- Dokáži přijímat dobře míněnou kritiku od ostatních. Jsem schopný otevřené a příjemné komunikace.
Co se jinam nevešlo:
- Výborná psaná komunikace v angličtině, domluvím se také.
- Nemám řidičák.
Reference
- červenec 2005 – září 2008 – Zonio s.r.o. – Open-source software development and consulting (projekty)
- Vybrané osobní projekty
Ústavní vzdělání
- 2002–2007 – ČVUT v Praze na fakultě elektrotechniky – FEL (po 4 letech jsem studium ukončil s cílem věnovat se práci v jiném oboru)
- 1998–2002 – SPŠE v Pardubicích
