Skip to content
View mujahidalmahi's full-sized avatar
🌴
On vacation
🌴
On vacation

Block or report mujahidalmahi

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mujahidalmahi/README.md

Hey, I'm Mahi πŸ‘‹

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.


A little about me

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.


What I'm learning

  • 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


Things I want to build

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.


How I learn

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.


Currently

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.


A few things I like

Operating Systems
Databases
Storage Engines
Computer Networks
Distributed Systems
Linux
C
Open Source
System Design
Reading old technical papers
Building things from scratch

GitHub

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.


Keep learning. Keep building.

"The best way to understand a system
is to build a small one yourself."

Thanks for stopping by. β˜•

Pinned Loading

  1. mahios mahios Public

    A 1990s retro desktop OS biography & portfolio engineered by Mujahid Al Mahi. Built with Next.js 16, React 19, Supabase PostgreSQL, and Tailwind CSS v4. Features authentic window multitasking, GPU …

    TypeScript 1 1

  2. dTyp dTyp Public

    Don't Tell Your Professor (dTyp) β€” The ultimate offline C/C++ engineering ecosystem & humanized stealth typing assistant for VS Code. 665 verified zero-comment components, Chameleon ghost-typing, b…

    TypeScript

  3. pendush pendush Public

    Pendush is a lightweight, high-performance Windows USB utility by PinkDotHash. Create bootable Windows/Linux drives with Win11 bypass, repair corrupted or write-protected flash drives, run NAND fak…

  4. textor textor Public

    Textor is a native Windows text editor which is lightweight and system-level. It's developed using C (Win-32 API)

    C