Bhuvan Prakash Karuturi

Software Engineer | Full Stack Web Developer | Graduate Student

About Me


I am a programmer working as Software Engineer at Google LLC. My role involves working on the lowest levels of software stack (think virtual machines, OS kernel, device drivers).

I have 2+ years of experience working as a software engineer with the multi-national IT consulting company Capgemini Technology Services, where I have mostly worked on developing enterprise software. Also, while interning at Ohio-at-home Healthcare Agency and Amazon.com LLC, I have gained valuable experience working on full-stack applications and training ML models.

I am an experienced web application developer. I have designed and developed several web applications using libraries and frameworks like React, Angular and also with plain HTML, CSS and Javascript. I believe that the web is the best way to deliver a service to an end user, because of its ubiquitous nature and a web application is faster to develop as compared to a native application. Progressive Web Applications (PWA) excite me, as they close the gap between web applications and native applications. This site you are viewing is also partly progressive :). During my free time I like to build games for the web using plain TypeScript or libraries like P5.js.

From what you have read so far you might consider me as a front-end web developer, but I actually love programming, experimenting with technologies and do not like to be constrained to a particular domain. I have developed projects such as responsive single web apps, backend microservices, a GraphQL server, a Relational database management system using plain Java, multi-threaded programs in C, automation scripts in Python, kernel level applications, schedulers, language models using deep learning models like transformers and object detection, localization models using CNNs.

Coming to my hobbies, I like swimming and playing cricket. I have recently developed the habit of playing squash and wall climbing. I love reading and watching documentaries on historical events and learning about the causes leading to those events. I am huge Age of Empires fan and I am currently playing AOE IV.

Skills

Languages (those understood by machines)
  • JavaScript(ES6)
  • TypeScript
  • Java
  • C#
  • Python
  • C
  • SQL
  • HTML5
Server-side technologies
  • Spring Boot
  • ASP.NET core 3.1
  • Node.js
  • GraphQL
  • REST
  • Express.js
  • MySQL
  • MongoDB
Client-side Technologies
  • Angular 10
  • React.js
  • Apollo
  • Redux
  • React Context & Hooks
  • Angular Material
  • Material-UI
  • jQuery
  • D3.js
  • Bootstrap
  • CSS
DevOps
  • Azure DevOps
  • CI/CD
  • Docker
  • Docker Hub
  • Azure Kubernetes Service
Other tools and techniques
  • Git
  • GitHub
  • GitHub Actions
  • CI/CD
  • Linux
  • Scikit-learn
  • Keras
  • Matplotlib

Projects

SocialApp – Social Media Web Application
  • Developed a social media application using Firebase cloud services, NodeJS, React.js, Redux, Material-UI.
  • Used SOA, microservices to expand compatibility and to minimize the frontend package size by half and billing costs.
JavaDB - MySQL like Database using Java
  • Built a MySQL like database management system from scratch using Java. Implemented CRUD functionalities.
  • Implemented search optimization by creating indexes using B and B-Plus trees.
Classroom Management System Using Multithreading (POSIX threads in C)
  • Built a mock classroom management system with several student, tutor and coordinator threads to achieve parallelism.
  • Efficiently managed resource allocation and used semaphores, mutex locks to avoid deadlocks.
ContactList – Full Stack Web Application
  • Developed a RESTful web app using Java Spring framework for the backend and jQuery for the frontend.
  • Used the JPA through Hibernate to communicate with the MySQL DB and Spring-web as the Rest-Controller.
Filesystem Consistency Checker for MIT XV6 Operating System
  • Built a filesystem consistency checker in C to check for inconsistent state of a filesystem used by xv6 operating system.
  • Implemented 13 different consistency checks involving inodes, bitmaps, data blocks and directories.