I'm a software system engineering enthusiast interested in understanding how things work behind the screen.
I enjoy going a little deeper than just using a tool or framework. I'm curious about what happens underneath it all: memory, processes, filesystems, databases, networks, and distributed systems.
Right now, I'm slowly working my way toward systems engineering.
Learning by building.
Breaking things.
Fixing them.
Trying to understand why they broke.
I like simple things that teach me something.
A small program written from scratch can sometimes teach more than a huge project built with ten different frameworks.
- C++ and Rust
- Data structures and algorithms
- Linux and operating systems
- Networking
- Databases
- Storage systems
- Distributed systems
- System design
- Performance and reliability
I'm especially interested in things like:
B-Trees LSM-Trees WAL MVCC Raft TCP Filesystems Memory Concurrency
Some things on my ever-growing list:
- A simple HTTP server
- A thread pool
- A memory allocator
- A key-value store
- A small database
- A B-Tree
- An LSM-tree
- A write-ahead log
- A cache
- A message queue
- A distributed key-value store
- A Raft implementation
Nothing too fancy at first.
Just small systems, built from the ground up, one piece at a time.
I try to follow a pretty simple loop:
Learn
β
Build
β
Test
β
Break
β
Debug
β
Understand
β
Build again
I don't want to just know how to use something.
I want to know why it works.
I'm spending most of my time learning the fundamentals and gradually moving toward lower-level systems and distributed systems.
There is still a lot to learn, but that's part of the fun.
Operating Systems
Databases
Storage Engines
Computer Networks
Distributed Systems
Linux
C
Open Source
System Design
Reading old technical papers
Building things from scratch
This is basically my notebook.
You'll find experiments, small projects, things I'm learning, things I broke, and hopefully things I eventually figured out.
Some repositories may be rough.
That's okay.
They're part of the journey.
"The best way to understand a system
is to build a small one yourself."

