Work

Google
Software Engineering Intern
May 2021 - Aug 2021
  • Implemented an extensible mechanism for setting custom socket options for the user-space packet serving engine.
Georgia Institute of Technology
Atlanta, GA
Graduate Research Assistant
Aug 2020 - Dec 2021
  • Automating analysis of packed malware samples using symbolic analysis and memory image forensics.
Intel
Bengaluru, India
Cloud Software Engineer
Jul 2018 - Aug 2020
  • Worked on optimizing power and performance characteristics of datacenter applications running on Intel® Xeon® processors.
  • Wrote a JIT-compilation pipeline for experimental convolution kernels in oneDNN (previously known as Intel® MKL-DNN and DNNL) using Xbyak.
  • Enabled post-training quantization of BERT with OpenVINO Post-Training Optimization Toolkit.
  • Developed a synthetic load generation tool for Optane persistent memory DIMMs.
  • Developed a configurable benchmark automation framework for use in multiple projects within my team.
Software Engineering Intern
Jan 2018 - Jun 2020
  • Developed a rack-level dynamic power allocation and capping solution which uses IPMI to communicate with each server's BMC.
Google Summer of Code - radare2
May 2017 - Aug 2017
  • Implemented multi-architecture remote debugging over the GDB remote protocol inside radare2.
  • A summary of my work can be found here.

Education

Georgia Institute of Technology
Aug 2020 - Dec 2021
M.S. Computer Science
GPA: 4.0
Birla Institute of Technology & Science - Pilani
Aug 2014 - Jul 2018
B.E. (Hons.) Computer Science and Engineering
GPA: 8.17 / 10

Publications

  • Forecasting Malware Capabilities from Cyber Attack Memory Images.
    O. Alrawi, M. Ike, M. Pruett, R. P. Kasturi, S. Barua, T. Hirani, B. Hill, B. Saltaformaggio.
    In Proc. 30th USENIX Security Symposium, Vancouver, Canada, 2021.

  • Resilient Complex Event Processing in IoT using Side-channel Information
    R. K. Shrivastava, S. Mishra, S. Barua, C. Hota
    In Proc. 10th International Conference on Security of Information and Networks, Jaipur, India, 2017.

Languages

10,000+ lines
C, C++, Rust, Python

5,000 - 10,000 lines
Bash, JavaScript, x86 Assembly

1,000 - 5,000 lines
Haskell, Emacs Lisp, Java, Lua, HTML, CSS