Subrat Mainali

Turing Scholar 2020, UT Austin

Summer 2017 Now MTS Intern at VMware Palo Alto, CA

Research on NVM Redis and its Recovery Ability

Part of the Application Focus Group under the VMkernel IO team. Responsible for adding and studying NVM-based redis support to CAT (Continuous Automated Testing)--the tool that continuously builds and runs tests on VMware

  • Python- Kafka- Non-volatile Memory- Redis- Django-

Aug. 2016May 2017Optimistic Crash Consistency


Did research on OptFS with Professor Vijay Chidambaram. Optimistic Crash Consistency gives Probabilistic Crash Consistency speed along with a Pessimistic Crash Conssitency gurantee of durability.

    • Fsync Identification and Source Code Modification
      Wrote a tool using LLVM's clang frontend to change source code to permit easy conversion of programs into OptFS, permitting Optimisitic Crash Consistency support. Ran tool and benchmarked and compared results on TokyoCabinet.
    • Little bit of NVM-related research and pmemobj experimentation.
  • OptFS website : Link To Paper
  • C/C++- LLVM- Python- Tokyo Cabinet- NVML's pmemobj-

20162 Months Web Developer at ITS

Mostly worked on Wordpress Development in the Genesis Framework. Tasks including developing themes and such. :

Did several projects for UT Austin.

  • PHP- HTML- CSS- JS/JQuery

2014 1 MonthUnited Nations Intern

Helped write an Attendance Management System for the UN. First real-life application of programming skills.

  • JAVA- SQL-

Jan. 2015 Mar. 2016Founder and Developer

Online ad-free video streaming website. Very basic and barebones website, first dabble into web development.


Notable ProjectsWhat I like:


Wrote a pipelined CPU with a two-level branch predictor.

    • Hardware design / Architecture / Implementation / Testing...

  • Verilog- Branch Prediction- CPU Design-

x86_64 JIT Compiler

A JIT Compiler using LLVM 5.0 API (C++) for a fictional language.

    • Software design / implementation / documentation / testing...
  • LLVM- C++- Compiler Design- x86_64-

Emulator for Aach64

Emulated just enough of the instruction set to let basic ELF files work.

  • C- Aarch64-


C, Java, Python, Verilog
PHP, C++, LLVM, Racket (lisp/scheme/functional)
Swift, SQL, JS, ARM, aarch64, x86_64, HTML/CSS

GIT- Perforce- Latex- Vim

In progress : 2020 BS in Computer Science

University of Texas at Austin, Turing Scholars Honors

2016Ronald Reagan High School, San Antonio, TX

Graduated 10/796, summa.



Outdoorsy Stuff

Flying Airplanes