Hi. I’m Alex.

I’m a software engineer and have been working remotely for most of my life. My path to tech was a bit unconventional though: before software, I spent four years as an Air Force cadet in Ukraine, training to fly military jets at the Kozhedub Air Force University. You pick up certain habits from that: discipline under pressure, and tracing every problem back to its root cause.

I’ve been writing code professionally since 2001 and contributing to open source since 2011.

What I work with day-to-day: Ruby on Rails, JavaScript / TypeScript, React, Python, PostgreSQL · MySQL, ClojureScript


Open source

The thing I’m probably best known for online. Core team member of react-bootstrap (22.6k ★, 6.7M npm downloads/month) 421 commits, 208 merged PRs. Was the #1 contributor for several years. That was a personal challenge I set for myself, and I did it. Matt Smith, the project lead, once said:

“AlexKVal as the bulldog that just keeps fixing everything he can as fast as he can” — Matt Smith, SurviveJS Interview

Other projects I’ve contributed to or maintained:

I also built release-script: a release automation utility for npm packages. It ended up being adopted by 2,855 repos (~9.5k weekly npm downloads), including yup (23.7k ★).

What other people have said along the way: Thanks to Alexander Shemetovskiy · Dude you rock · Fantastic


How I work

These days I use AI agent swarms for almost everything. I’ve vibe-engineered several apps from scratch, one every two or three days, in TypeScript, Rust, and Python. That’s just how I work now.

I like removing code more than writing it :) Like this · and this · and this

I deal with technical debt, care about code readability, maintain CHANGELOGs, and write docs for both users and contributors.

I tend to find adjacent bugs while investigating assigned ones. Code paths are interesting, once I start following one, I have trouble stopping.

I kept my GitHub contribution graph fully green for 6 years straight (2015–2021), committing every single day. Holidays, vacations, sick days, didn’t matter. It was a challenge other open-source contributors were doing at the time, and I wanted to see if I could keep it up. I could.


Beyond code

Languages: English, Ukrainian (native), Russian (native), Japanese (studying daily), and bits of German and Spanish.

Electronics: I have a thing for low-level hardware. Built a simple 8-bit computer on breadboards using basic logic ICs, static RAM, and ROM: no pre-built CPU. Goes back to my early career, writing Atmel microcontroller firmware for GPS car-tracking systems.

StarCraft II + AI (2019): Before AI got smart enough to chat with you, training a neural network to play a video game was a proper experiment. I set up DeepMind’s PySC2 on macOS and wrote about it.

Readings: I keep a list of things I find interesting: Rust, Go, digital electronics, entrepreneurship, computer science, and more.


Some of my hobby projects

Responsive frontend demos: web page · stats block · gallery · tabs · animated grid · SVG by hand · modal login · credit card form