A cartoon portrait of Tejas

Tejas Mahajan

I build things to find out how they work. Sometimes they work. I have no speciality, just forty-one open tabs and a rubber duck that has heard everything. When something finally makes sense I write it down here, mostly for future me, who will have forgotten. My desktop is far nicer than the laptop under it. The rest of the story is mostly made up.

work

  1. sift

    Fast, local semantic search over code, docs and notes, from the terminal. No cloud, no database.

  2. search-engine-go

    A small, thread-safe document search engine in Go, built on an inverted index.

  3. distributed-broadcast

    A gossip protocol that stays available and eventually consistent across a 25-node cluster with 100 ms of simulated network latency.

  4. arxiv-mcp

    A Model Context Protocol server that lets AI assistants search arXiv and read paper details.

  5. ArQiv

    A search engine for arXiv papers that layers boolean, BM25, TF-IDF, vector and BERT ranking over one index.

Patches merged upstream into npm/cli, rsyslog/loganalyzer, and goodroot/hyprwhspr.

contests

Codeforces
specialist at peak, rated 1414; 240 problems over 44 rated rounds
LeetCode
772 solved, 111 of them hard; contest rating 1692, top 14.7%
ICPC
regionals

writing

  1. A typeface from one letter
  2. Everything falls into step
  3. Why can’t you zip a zip?
  4. Anatomy of a page
  5. What actually happens when you press ^C?

elsewhere