systems engineer · rust · c · solana
Valentyn Kit
Six years building distributed systems and platforms. Right now: the Rust core of a money-movement platform — durable state machines, multi-chain signing, exactly-once semantics. Nights and weekends I go one level deeper, rebuilding the foundations from scratch: databases, TCP servers, a key-value store in C. To understand, not just use. This blog is the log: what holds in production, and what you find rebuilding the foundations yourself.
writing
- io_uring is two queues you share with the kernel
io_uring is two ring buffers your program and the kernel both see. You write requests into one, make one syscall, and read results from the other without entering the kernel. How it works, step by step, and when a plain read still wins.
- What Linux actually does when you read a file
I asked for one 4 KiB page and got four back. The same read one page over gave me one.
- You don't understand a system until you've rebuilt it
Using a system teaches its interface and reading its source teaches its mechanics, but only rebuilding a worse version teaches the constraints, which is where understanding actually lives. Why reconstruction works, and how to build a toy that teaches you something instead of lying to you.
- Rust's compile errors are other languages' production bugs
Four Rust compiler refusals, each traced to the silent bug it prevents in Python, JavaScript, or C: float sorting, string indexing, integer overflow, lazy iterators. Plus the one place Rust stays quiet.
- From one blocking accept() to epoll: a C TCP server up the I/O ladder, measured
Building a TCP echo server in C seven times, from blocking through select, poll, kqueue, and epoll, with the cost of each wall measured: a 1.5 second stall, a pegged core, the FD_SETSIZE ceiling, and O(ready) dispatch.
- Framework knowledge evaporates. Low-level knowledge compounds.
I learned async three times before it clicked. Building a TCP echo server from blocking sockets up through kqueue and epoll in C, seven times, is what finally fixed it.