# Jakub Svehla

## TLDR;

Hi, my name is Jakub Svehla

I am a full-stack Javascript programmer, focused to minimalist code, Typescript, nodejs, GraphQL, React & Cloud.

## Workshops (led by me)

IT Absolvent 2022

I led a three-month-long workshop for potential developers to introduce them to the ecosystem of frontend tools like React, Typescript and others.

IT Absolvent 2021

I led a three-month-long workshop for potential developers to introduce them to the ecosystem of frontend tools like React, Typescript and others.

NoSQL basics

I taught one day workshop long workshop about highly scalable NoSQL databases. We used AWS DynamoDB to demonstrate the basics of access patterns on big data.

How to write a parser & an interpreter in the raw Typescript generics

One week-long course, where we deep dive into how to write advanced generics and generics composition. I taught my students how to think in compile-time and make useful Typescript tools.

IT Absolvent 2019

I led a three-month-long workshop for potential developers to introduce them to the ecosystem of frontend tools like React, Typescript and others.

## Programming philosophical articles

### "predominantly about static types & Typescript"

## Some of my open-source repositories & free time projects

2D game inspired by agar.io with a custom implemented, highly optimized game engine built on linear algebra.
Proof of concept for RegEX engine (interpreter+parser) with O(0) time complexity written in raw Typescript generics.
I tried to compare GPU & CPU performance so I did two instances of the same app which interactively view details of mandelbrot set.
Proof of concept for GraphQL AST parser written just by Typescript generics.
Terraform AWS serverless lambda nodejs Typescript backend with custom GraphQL library engine which wraps the GraphQL library and enables inferring of 100% of static types.
Frontend boilerplate for React & GraphQL apps. Boilerplate includes terraform files to deploy static build into AWS S3 CDN.
App for calculating scales and chords based on given notes.
Proof of concept for online modeler tool to create highly customizable business cards.
Protocol for the request response communication between native iOS app and the webView

## NPM packages

use-formio

This library is focused to deliver proper layer of abstraction for most of the React forms. It could be used as an engine to build highly configurable UI form framework.

swagger-typed-express-docs

This library enables you to define a single source of truth which is used for type inferring, generating documentation and runtime validation.

react-sync-ui

This library enables you to write simple synchronous sequential code for hard and complex workflows

strapi-plugin-page-hierarchy

Strapi CMS plugin for creating tree-structured menu items.

typed-env-parser

I'm a co-author of this package for parsing and inferring types of process.env variables. Thanks to this library your app config is kept clean and safe.

graphql-cursor-sql-helper

Library to generate GraphQL AST types and bypassing default behavior of relay-modern cursor pagination.

table-to-schema

This was my first open-source library. It's a simple tool to transform SQL results into M : N data structure trees.

## Career

  • Bloomreach
    Sep 2019 - Now

    I am currently working at Bloomreach on a project named Clarity.
    Clarity serves as a platform for creating chatbots powered by large language models (LLMs), which users can customize through the Bloomreach Engagement platform.
    My responsibilities on this project include developing proofs of concept (POCs) and programming real-time infrastructure.

    We initially started by creating our own LLMs using PyTorch and fine-tuning models from Hugging Face,
    but with the advent of LLM as a service, we shifted to building automation on top of OpenAI and Vertex AI.

    Additionally, I am involved in building a platform for developer teams to fine-tune LLM prompts and manage integrations, ensuring seamless and efficient chatbot performance.

    Technologies:
    LLM
    hugging face
    Redis (+pubsub)
    bigTable
    GCP
    MongoDB
    qdrant
    nodejs
    preact
    Typescript
    swagger-typed-express-docs

  • I was hired as a developer into an existing team responsible for a native tablet app used by our sales colleagues in the stores.
    The app is written in React and runs in a React Native web view, allowing developers to develop the app in the browser.
    We use React Native to interface with native iOS components for cameras, scans, PED devices, and more.

    My main goal in the company is to transform the JavaScript codebase into TypeScript.
    My top priority is to create tools for my colleagues to reduce technical debt in the codebase, ensuring long-term sustainability.

    Technologies:
    Rest-api
    GraphQL
    Typescript
    Terraform
    GitLab pipelines
    Dixons Carphone CoE, s.r.o
    Sep 2019 - Now
  • Cleverlance
    Jul 2019 - Aug 2019

    I was hired for a short and urgent contract.
    We had a project where we migrated the Java Liferay project into a next-js React server-side alternative.
    We spent a lot of time on a decreasing technical depth of the whole repository.

    Technologies:
    Liferay
    React
    Next.js
    Relay-modern

  • When I joined FaceUp, it was just a small start-up with only two developers (and four non-developers).

    I was hired as a technical lead and code reviewer. After a few months,
    I transitioned to a full-time developer role, migrating the old PHP codebase to a NodeJS GraphQL backend connected to an Apollo React frontend.

    Following several months of frontend and backend development,
    I moved to DevOps, focusing on automating all deployment processes and migrating from Digital Ocean to AWS.
    For automation, we used GitLab pipelines to deploy the codebase to the AWS cloud.

    As we were a small company,
    I was responsible for all technological aspects,
    spending considerable time on SRE automation, including traffic and log analytics.

    During this time, we launched a small project called Voice Story (https://voicestory.app/).
    This project led me to switch to Swift iOS development,
    spending a few months in the Apple ecosystem. Based on this experience,
    I realized that iOS development was not the path I wanted to pursue, so I decided to return to my preferred JavaScript ecosystem.

    Technologies:
    Typescript
    React
    GraphQL
    NodeJS
    PostgreSQl
    Docker
    Gitlab pipelines
    AWS
    S3 (CloudFront)
    Serverless
    EC2
    React native
    Swift (iOS)
    FaceUp
    Mar 2018 - Jul 2019
  • TechFides
    Jun 2017 - Jun 2018

    TechFides is an agency to deliver box software solutions.
    I worked on a few applications for different scenarios
    - money management for young people
    - internal administration for energetic company
    - application for Vietnam bank with 10M users

    Technologies:
    Flow
    React
    NodeJS
    Angular
    SCSS

  • I created a web-app tool that connected our DB team with sales & business analytics teams. It included advanced UI for database specialists to get complicated relational data view and then our colleagues from other teams were able to see the final data in nice simple UI.

    Technologies:
    NodeJS
    Angular.js
    React
    Rest-API
    Redux
    GraphQL
    Express
    SuperVAG
    Jun 2016 - Jun 2017
  • Web Page Studio
    Jun 2016 - Apr 2017

    I was creating an e-book converter framework that takes MS word as a source of data and then converts it into a web page.
    We sold this software to schools and it helps teachers to make online schoolbooks.

    Technologies:
    Angular.js
    NodeJS
    gulp