〈ri〉

  • en
  • Jmenuji se Richard Ivánek a už nějaký ten pátek (cca 15, z toho 9 profesně) programuji. Mezi mé hlavní jazyky patří Rust, TypeScript a C#, ale ovládám dostatečně i C/C++, Haskell a Dart. Mám magisterský titul v teoretické fyzice, kterou jsem vystudoval na Matematicko-fyzikální fakultě Univerzity Karlovy.

    Číst dále

    Profesnímu programování jsem se věnoval už během středoškolského studia. Během studia vysokoškolského jsem si založil živnost a nepřetržitě pracuji na několika dlouhodobých (a někdy krátkodobých) projektech.

    Dělám vesměs práce všeho druhu, pracuji jak s moderními technologiemi (WebAssembly s Rustem, WebGL, Svelte, Axum), distribuovanými systémy (Kubernetes, OpenShift), tak i s technologiemi staršími (Shoptet s jQuery). Detailněji se o mých schopnostech dozvíte níže.

    Vzdělání

    • Magistr teoretické fyziky

      Ústav teoretické fyziky, MFF UK

      2020 - 2022



    • Bakalář obecné fyziky

      MFF UK

      2017 - 2020



    • Gymnázium Kroměříž

      2009 - 2017

    Jazyky (lidské)

    • čeština - něco málo vím
    • angličtina - na pohodu
    • ruština - základní

    Pracovní zkušenosti

    • Chartium

      Lead programátor

      2020 - now



    • Coffeespot.cz

      Programátor

      2022 - now



    • Čokoládovna Janek

      Programátor

      2020 - now



    • Cimex

      Externí programátor

      2018 - 2023



    • Dataclue

      Programátor

      2016 - 2018



    • AVG Technologies

      Částečný úvazek v technologickém oddělení

      Summer of 2014

    Programovací jazyky

    5 let

    Rust

    Můj oblíbený jazyk, psal jsem v něm i kód ke své diplomové práci.

    7 let

    TypeScript

    Můj druhý nejčastější jazyk, používám ho s několika frameworky jak na backendu, tak na frontendu.

    14 let

    C#

    Můj první "pořádný" jazyk. Psal jsem v něm hry a později webové a CLI aplikace, v současnosti i Office COM Interop a Microsoft Graph API klienty.

    2 roky

    C/C++

    Tyto jazyky denně nepoužívám, ale pravidelně se snažím udržovat jejich znalost abych se zorientoval ve zdrojových kódech open-source projektů.

    Dart + Flutter

    Udělali jsme v nich s kolegy iOS/Android aplikaci pro veletrh IAESTE, ale budoucnost v tomto ekosystému nevidím.

    Technologie

    9 let

    Linux

    Používám ho jako svůj hlavní operační systém, od release Windowsu 10 (nejde o pouhou korelaci). Mám zkušenosti i s administrací, např. s deriváty RHEL jako AlmaLinux. Btw I use Arch.

    9 let

    Git

    Používám na všech projektech, pro kolaborace, zálohování a další. Momentálně se zabývám (již brzy) federovanými GitHub alternativami jako Forgejo.

    3 roky

    Docker/Podman

    Používám je na distribuci i deployment, mám zkušenosti s vytvářením images i pro Rust a Node programy.

    Kubernetes/OpenShift

    Používám relativně krátkou dobu, hlavně kvůli klientům.

    Syncthing + restic

    Zabývám se decentralizovaným a šifrovaným zálohováním soukromých i produkčních dat.

    Cursor + Claude

    Dobře mi slouží při udržování 10x statusu.

    Frontend frameworky

    2 roky

    Svelte

    Můj oblíbený framework. Používám ho pro většinu nových projektů, kde je potřeba reaktivita/client-side JS.

    1 rok

    Astro

    Má nová oblíbená volba pro prezentační weby (jako je tento).

    7 let

    React

    Máme vztah založený na vzájemném respektu. Už ho nepoužívám v nových projektech, ale stále s ním ve velké míře pracuji.

    jQuery

    Pracuji kolem něj na Shoptet instancích, ale v poslední době je má interakce s ním omezena na jeho odstraňování a použití novějších browser API.

    Backend frameworky

    2 roky

    Axum

    Používám často na performant backendy.

    1 rok

    Warp

    Používal jsem před Axum.

    5 let

    ASP.NET Core

    Dříve jsem v něm psal spoustu backendů, dnes už ho používám jen ve starších projektech, které stále spravuji.

    Nest.js

    Udržoval jsem Angular + Nest aplikaci. Nejsem největší fanoušek, ale chápu proč je populární.

    Ostatní

    Godot

    Jeden z mých nejoblíbenějších FOSS projektů. Mám v něm něco málo hodin naklikaných a načtených spoustu řádků zdrojového kódu.

    5 let

    XNA/FNA/MonoGame

    Frameworky, na kterých jsem doslova vyrůstal, a které mi pomohly stát se decentním programátorem.

    Tauri

    Čas od času s ním experimentuji, napsal jsem v něm application launcher, který denně používám už přes rok. Těším se na podporu mobilních zařízení.

    Tahle sekce je pro ty, kteří tu nejsou pro CV, ale spíš je jen zajímá, co dělám. S programováním jsem začal v prvním ročníku osmiletého gymnázia, když spolusedící donesl kalkulačku, která podporovala programování v jazyce BASIC. Zvědavost mě velice rychle přivedla k variantě Small Basic , se kterou jsem trávil spoustu času doma. Psal jsem textové RPG hry a brzy mě začal Small Basic brzdit. Naučil jsem se tak Visual Basic a WinForms, ale pořád to nebylo ono. Jelikož jsem chtěl dělat opravdové hry, sáhl jsem rovnou po C# a XNA. Své první projekty jsem s tímto jazykem zkoušel již ve 13 letech.

    Se C# jsem trávil čas až do mých univerzitních let, naprototypoval jsem spoustu her, ale vždy mě herní projekt nakonec omrzel. V mezičasech mezi projekty jsem se naučil webové vývojářství, kterým se dodnes živím. Původně jsem pracoval s PHP a JS, ale brzy jsem se přesunul na ASP.NET a TypeScript. Dnes již C# téměř nepoužívám, přesunul jsem se k Rustu, ve kterém jsem psal i program na mou diplomovou práci. Dělám na CLI deployment nástrojích, high-performance aplikacích, programech pro zpracování velkého objemu dat a automatizacích pro e-shopy. Také extenzivně pracuji na webových aplikacích a často se setkávám s WebAssembly, WebGL a dalšími technologiemi.