〈ri〉

  • My name is Richard Ivánek and for some time now (around 14 years, 8 professionally) I code. My primary languages are Rust, TypeScript and C#, but I also do C/C++, Haskell and Dart occasionally. I have a master's degree in theoretical physics, which I studied in the Faculty of Mathematics and Physics at Charles University in Prague.

    Read more

    I've programmed professionally since my high school years. I've been self-employed since my university years and I've been working on several long-term (and a few short-term) projects.

    I do all sorts of software development, I work with modern technologies (WebAssembly with Rust, WebGL, Svelte, Axum), distributed systems (Kubernetes, OpenShift), and even older technologies (Shoptet with jQuery). More details below.

    Education

    • Master of Theoretical Physics

      Institute of Theoretical Physics, MFF UK

      2020 - 2022



    • Bachelor of General Physics

      MFF UK

      2017 - 2020



    • Gymnázium Kroměříž

      2009 - 2017

    Languages (human)

    • Czech - native
    • English - for you to judge
    • Russian - basic

    Pracovní zkušenosti

    • Chartium

      Lead programmer

      2020 - now



    • Coffeespot.cz

      Programmer

      2022 - now



    • Čokoládovna Janek

      Programmer

      2020 - now



    • Cimex

      External programmer

      2018 - 2023



    • Dataclue

      Programmer

      2016 - 2018



    • AVG Technologies

      Part-time job in the Technology department

      Summer of 2014

    Programming languages

    4 years

    Rust

    My favorite, I even wrote the code for my master's thesis in it.

    6 years

    TypeScript

    My second most used language, I use it with several backend and frontend frameworks.

    13 years

    C#

    My first "real" language. I used to create games in it. Then I moved to web and CLI applications. Now I even do Office COM Interop and Microsoft Graph API clients in it.

    2 years

    C/C++

    I don't use these daily, but I refresh my knowledge of them from time to time to keep up with FOSS code.

    Dart + Flutter

    My and my colleagues shipped an iOS/Android app, but I don't see a future in this ecosystem.

    Technologies

    8 years

    Linux

    I daily drive it since Windowsu 10 released (yes, there's causality). I even admin a few Linux servers with RHEL derivatives such as AlmaLinux. Btw I use Arch.

    8 years

    Git

    I use it for all my projects. I love it when it works, I am terrified of it when it gets in a state that's not easily recoverable, which thankfully doesn't happen that often anymore.

    2 years

    Docker/Podman

    I utilize them both as a user and a developer, for distribution and deployment. I shipped a few Node and Rust projects with it. I also do Docker Compose.

    Kubernetes/OpenShift

    I've been using these for a relatively short time as of now, primarily to satisfy client requests.

    Frontend frameworks

    1 year

    Svelte

    My beloved, even this site uses it (the alpha version of Svelte 5 actually, I have no idea what "unstable" means).

    6 years

    React

    I don't use it that often anymore, but I have to admit the recent development looks promising, so who knows.

    jQuery

    I work around it on Shoptet instances, but recently my work was to get rid of it and replace it with several browser APIs.

    Backend frameworks

    1 year

    Axum

    I often use it to create performant backends.

    1 year

    Warp

    I used this before moving to Axum.

    5 years

    ASP.NET Core

    I have written many backends in it, nowadays I use it mostly in older projects which I still maintain.

    Nest.js

    I maintained an Angular + Nest app. Not a biggest fan, but I understand why it's widely adopted.

    Other

    Godot

    One of my favorite FOSS projects. I have some hours spent in it and I've also read a bigger chunk of it's codebase.

    5 years

    XNA/FNA/MonoGame

    Frameworks that I literally grew up on. They helped me become a decent programmer.

    Tauri

    I experiment with it from time to time. I wrote an application launcher in it, which I daily drive for more than a year. I'm looking forward to mobile support.

    This section is for those who are not looking for a CV, but rather just want to know more about me. I began programming in the sixth grade, when my classmate brought a calculator with BASIC support to school. My interest led me to a variant called Small Basic, with which I spent a lot of my free time home. I built a few text-based RPG games, but soon I began to feel limited by the language. So I then learned Visual Basic and WinForms, but that still wasn't quite it. I wanted to create real games, so I went with C# and XNA. I still have some of the early projects I tried with this language at the age of 13.

    I kept using C# primarily until my university years, I prototyped a lot of games, but I always got bored of them in the end. In the meantime between projects, I learned web development, which is one of my primary sources of income these days. I originally worked with PHP and JavaScript, but soon I moved to ASP.NET and TypeScript. Today I barely use C#, I moved to Rust, in which I wrote my master's thesis program. Today I work on CLI deployment tools, high-performance applications, data processing programs and e-commerce process automation. I try to design web stuff from time to time, so I might still have some fun with this website ;)

    made with and
    Richard Ivánek © 2024