URB

computer engineering · systems · machine learning

Utsab Raj Bhattarai

Suffering through computer engineering when I could have been out chasing ridgelines.

scroll on — or my journey with me

Hi, stranger. I'm Utsab, a humble computer engineering student at IOE Pulchowk Campus. I survive on coffee, cause most of the times I build systems from scratch to make my life a bit more miserable. Sadly, I enjoy doing this a lot. I am up for having yapping sessions about anything ranging from ML to embedded systems, blockchain to web development, and everything in between. I am a self-taught programmer and I love to learn new things. In person, I am an enthusiast and an extrovert and I am pretty expressive so be prepared to get your social battery drained.

I enjoy mountains and dream of running off to one, so don't be surprised when you find me on a random mountain all of a sudden. So, yeah this is all about me, for knowing more about me; contact me anywhere, I am always up for something new. So yeah, rest of this site I have arranged some of my crazy milestones in terms of peaks I have climbed / achieved. Personally, my most favorite peak among all of them is the 6th one; which gives me the reason to keep on going and which you will find out at the end of this website anyways. So lol hike or ski with me to traverse all the peaks I have ascended so far.

Every flag is a milestone

Six peaks, in the order I actually climbed them. A flag goes in at the foot of the screen as each one comes into view.

2,490 m · peak 01

Health Monitor

Where it started: sensor integration on the ESP32 — MAX30102 heart-rate and MLX90614 infrared temperature over I²C, read and conditioned straight from the datasheets. Roughly estimated blood pressure from the pulse waveform, with a small web interface in Blynk to display it all. Some STM32 work alongside, and enough of the bus protocols to debug them at 2 a.m. with my teammates. Between a FIFO that overflowed, an MLX90614 that refused to init until I dropped I²C to 100 kHz, and newlib-nano silently eating my float prints My own blood pressure, meanwhile, hit a solid 250/10.

  • Embedded
  • ESP32
  • STM32
  • C++
  • Blynk
  • IOT
  • I²C / SPI
View on GitHub

2,790 m · peak 02

Neural Network in C

A neural network in pure C : matrices, forward pass, backpropagation and the training loop written by hand, no libraries underneath. The Network itself is trained on PIMA Indians Diabetes dataset, and the model is then used to predict diabetes. I am still traumatied form those segmentation overflow and that one pointer. Yes, I still remember you Mr.Dangling Pointer

  • C
  • Deep Learning
  • From Scratch
View on GitHub

Bronze · regionals

3,090 m · peak 03

Aarogya

Verifiable professional credentials with the identity left out.

Aarogya proves a doctor holds a valid NMC surgical licence without revealing their name or registration number. BBS signatures over BLS12-381 run zero-knowledge proofs over the undisclosed fields, so every presentation is unlinkable — is it real? answered without leaking who. And is it still valid? lives on-chain: a permissioned Solidity registry of issuer keys and credential status, where only a hashed ID ever touches the chain. I learned ZK proofs the honest way: by starting with roughly zero knowledge of them.

  • BBS+ / BLS12-381
  • Zero-Knowledge
  • Solidity
  • Verifiable Credentials
  • Node.js
  • React
View on GitHub

3,480 m · peak 04 · flagship

MicroTorch

So, I didn't learn from my stupidity of building NN from scratch in C. So, I built a whole automatic differentiation engine in C++ from scratch, with Eigen for the operations and autograd for backpropagation. Then I built a GNN and a Diffusion model on top of it. The best part: the same engine runs both a fraud-detecting GNN and a shape-hallucinating diffusion model. The engine is the product. The worst part: my tensors captured each other by shared pointer and became so codependent they refused to die. Had to teach an autograd engine about letting go.

  • C++
  • Eigen
  • Autograd
  • GNN
  • Diffusion
View on GitHub

Hackathon winner

3,820 m · peak 05

CtrlCV

A two-mode financial fraud detection pipeline — batch scoring and live transaction screening — built and shipped under hackathon clock pressure. Most of the model work happened here: CatBoost carrying the classification, with isotonic regression calibrating the output so the scores mean what they claim to. It won. The EDA also revealed that, according to the data, all financial crime in the universe happens on Tuesdays — turns out synthetic data has a weekly routine. Had to fire day_of_week before it convinced the model that fraud is just a Tuesday problem.

  • CatBoost
  • Isotonic Calibration
  • SHAP
  • Out-of-Fold CV
  • Python
View on GitHub

4,250 m · peak 06 · not reached

Still climbing

The unclimbed peak — and somehow the one I'm most excited to suffer through. Waiting in the fog: storage engines, the parts of an OS nobody thanks you for, a language of my own, and a baby of two of my projects; tiny device mind elsewhere. The summit itself stays a secret till the end of this climb: no flag up there yet. Which is the whole point: a peak you've already reached stops pulling you upward. This is the one that gets me out of bed (the coffee helps).

  • Systems
  • In Progress
Route in progress

and the ridge keeps going past the edge of the frame

Experience

Front-end Developer

dates 2023 - 2024

IRD Nepal · web team

Built and maintained front-ends for the organisation's web team in React, and handled asset management across the sites.

  • React
  • JavaScript
  • Front-end
  • Asset Management

What's in the pack

languages

  • C
  • C++
  • Python
  • JavaScript
  • Solidity
  • SQL

models

  • Neural networks
  • Regression
  • Gradient boosting
  • KNN
  • RNNs
  • EDA
  • Clustering
  • GNNs
  • Diffusion

ml tooling

  • PyTorch
  • scikit-learn
  • CatBoost
  • NumPy / pandas / matplotlib
  • From-scratch autograd

web & data

  • React
  • Django
  • Node.js
  • PostgreSQL
  • MySQL
  • FastAPI (learning)

systems & embedded

  • Linux
  • CMake
  • Git
  • ESP32
  • STM32
  • I²C / SPI / UART

cryptography & web3

  • BBS signatures
  • Zero-knowledge proofs
  • Solidity
  • EVM smart contracts