About
I write systems and graphics code, and I make games. Those two pull in opposite directions often enough to keep things interesting.
On the systems side I like low-level software: operating systems, compilers, and anything that sits close to the hardware. Rust is my main language, mostly because it lets me care about how software actually talks to the machine without giving up on writing efficient, reliable code.
The other half of my time goes to game development and graphics. I like experimenting with realistic simulations — light physics, ray and path tracing, fluid dynamics — and then optimizing them as far as I can, until the technique is fast enough to actually be usable in real time inside a game.
Besides Rust I've worked with and like TypeScript, C++, C# and Java. I'm always learning, building and collaborating — usually by starting yet another project I probably shouldn't have.
Background
- Now
- Embedded Rust Engineer at Balaveri since February 2026, writing firmware in Rust for microcontrollers — the kind of work where the hardware datasheet is as much a part of the job as the code is.
- Studying
- 2nd year of a computer science bachelor's degree at Tbilisi State University.
Toolbox
- Languages
- Rust (main), TypeScript, C++, C#, Java
- Graphics
- wgpu / WGSL, OpenGL / GLSL, compute shaders, Bevy
- Systems
- x86_64 and aarch64 osdev, LLVM, embedded /
no_std, embassy - Other
- Linux, git, a stubborn dislike for unnecessary allocations
Projects
Most of what I know, I learned by building something badly first and then rewriting it. Here's the pile — the projects page has the longer version of each.
Operating systems & low level
- ChronOS
- A hobby x86_64 kernel written from scratch, with a preemptive scheduler, ACPI, PCI and a shell.
- Ferris Linux
- A Linux distribution built from source, one package recipe at a time. I package software for it and rewrote its bootstrapper in Rust.
- FlappyOS
- Flappy Bird that boots. There's no OS underneath it, because it is the OS.
- Emulating 6502
- An emulator for the MOS 6502: registers, status flags and 64 KiB of address space.
Languages & compilers
- Lang
- My own language: lexer, recursive descent parser, semantic analyzer, an interpreter and an LLVM backend.
Graphics & simulation
- Ray Tracing
- A ray tracer on the CPU first, then again on the GPU when patience ran out.
- Ray Marching
- Real-time signed distance field marching, with spheres melting into each other.
- Particle System
- 15,000 particles simulated entirely on the GPU, with the CPU kept out of the loop.
- Black Hole Simulation
- Light rays bending through the gravitational field of a black hole, trails and all.
- Software Rusterizer
- A 3D rasterizer with no GPU involved. Just a framebuffer and a lot of math.
- Whirlwind Game Engine
- A small engine with its own ECS that runs on desktop, in the browser and on Android.
Games
- FerrisCraft
- A voxel game with procedural biomes, a fast culled mesher, and crabs for mobs.
- Chess
- GPU-accelerated chess, with shader effects nobody asked for.
Tools & other things
- Xenon
- A terminal text editor built on a rope data structure.
- Schnellxplorer
- An attempt at a very fast file explorer. Archived, but it taught me a lot.
- ScreenTime
- A tiny daemon that tracks how long I actually spend in each app.
- Machine Learning
- A neural network written from scratch, in safe Rust, out of pure spite.
- Volt
- A general-purpose Discord bot, and the reason I learned to program.
Ancient history
- MuteChat
- A Minecraft server plugin for muting chat. One of my first projects.
- DontJump
- A challenge plugin where jumping nearly kills you. Exactly as advertised.
Contact
- g.grigalashvili@balaveri.com
- GitHub
- BUGO07
- Giorgi Grigalashvili
- itch.io
- bugolmao