Linux • Projects • DSA • System Design

Building software, understanding systems,
and documenting everything I learn.

I'm a recent Computer Science graduate exploring software engineering one project at a time. This blog is my engineering journal—covering Linux, Python, Go, JavaScript, backend development, Data Structures & Algorithms, system design, and the lessons learned while building real software.

0learning roadmaps
0NeetCode challenge
0engineering posts
~/workspace
benki@arch~$
 
OS............. Arch Linux
WM............. Hyprland
Shell.......... zsh
Editor......... Neovim
 
~/projects/dsa$ python solve.py
✓ All test cases passed (42/42)
 
~/blog$ git commit -m "binary search finally clicked"
[main 3fd9b1c] binary search finally clicked
1 file changed, 186 insertions(+)
 
# Learn. Build. Break. Understand. Repeat.
LINUX·GO·PYTHON·JAVASCRIPT·DSA·SYSTEM DESIGN·OPEN SOURCE·PROJECTS·LINUX·GO·PYTHON·JAVASCRIPT·DSA·SYSTEM DESIGN·OPEN SOURCE·PROJECTS·

Things I've learned the hard way.

Every article comes from building something, debugging something, or finally understanding something that confused me far longer than it should have.

System design

Architecture calls, trade-offs, and the diagrams behind them.

DSA

LeetCode traces, patterns, and the bug in my mental model.

Error fixes

The exact stack trace, the exact fix, no fluff.

Frameworks

React, Astro, Kotlin — deep dives as I actually learn them.

Latest engineering notes

View all →
DSA

Binary search: the off-by-one that cost me three hours

Why lo <= hi isn't a convention — tracing the exact moment my search space collapsed wrong.

System design

Sync architecture for an offline-first kirana app

13 Room entities, one conflict resolution strategy, and why last-write-wins almost broke inventory.

Error fix

Fixing "act(...) wraps test-utils" in React Router v6

The exact testing-library setup that makes this warning disappear, with the why behind it.