About
Myself
Hello!
I am Vennila Pugazhenthi, currently a Software Engineer at Goldman Sachs and I graduated from Pennsylvania State University with
a degree in Computer Science.
I am a software developer.
My goal is to build products that are highly perfomant and efficient.
In my free time, you can find me working on various side projects of my interest and writing technical blogs.
Check out my project down below!
Projects
View some of my recent work
Frontend and Backend
NittanyPath
Developed a website similar to canvas. The database was designed through series of steps as following:
1. Requirement Analysis
2. Conceptual Database Design
3. Logical Database Design and Normalization
The frontend was developed to accommodate various functionalities of the website, such as login page
for for students and professors, a page where students can get information about the classes they enrolled in,
a page for discussion forum, etc.
Python SQL Code Upon Request
Mobile App Development
RestaurantsNearMeApp
This App was created using React Native to search for restaurants using Yelp API.
The restaurants are sorted by price
React Native
Systems Programming
File System with caching
Implemented a file system that can do the following for multiple files and multiple virtual devices:
1. Open a file
2. Read from a file
3. Write to a file
4. Seek to a specific place in the file
It has caching implemented and also supports network communication to a server (Socket programming).
C Code Upon Request
CPU Threads
Thread Scheduler
Implemented four thread schedulers for uni-processor environment with support for semaphore synchronization:
1. First Come First Served (FCFS) - no preemption
2. Shortest Remaining Time First (SRTF) - with preemption
3. Priority Based Scheduling (PBS) - with preemption, and
4. Multi Level Feedback Queue (MLFQ) - with preemption and aging.
C Code Upon Request
Chrome Extension
Search Through Hyperlinks
This Google Chrome extension is a combination of features of Ctrl+F and Google search.
The user can search for a word in a current webpage, the searched word will be highlighted,
it also searches for the word in all the hyperlinks of the current page and display a table with
hyperlinks and number of appearances of the searched word.
The user can click the "sort" button to arrange the table elements in descending order of number
of appearances and can select multiple hyperlinks and click "open" button to open the selected
hyperlinks in new tabs.
This extension is useful for searching through a documentation.
In other words, it is basically a google search within a webpage.
JavaScript
Embedded Programming
CPU
Designed and implemented five-stage pipelined CPU using the Xilinx design package for FPGAs.
Verilog Code Upon Request
Memory Allocation/De-allocation
Virtual Memory - Paging
Implemented the following:
1. An access control mechanism where the hardware will directly do the translations/accesses for the
cases where pages are already in memory, fault over to the software when the page is not resident using
system calls, and
2. First-In-First-Out Replacement and Third chance Replacement to make room for newly incoming pages
into physical memory.
C Code Upon Request
Work Experience
Past and current jobs
-
Software Engineer Analyst
- Developed reactive microservices backend using Spring Webflux and Project Reactor.
- Implemented authentication and authorization using Spring Security.
- Implemented various automated testing such as unit testing, performance testing, stress testing, and integration testing.
- Utilized Infrastructure as Code (IaC) with Terraform to create firewall rules and system accounts.
- Configured and integrated HashiCorp Vault for storing service credentials.
- Implemented HashiCorp Vault-Agent for hydrating the credentials in the servers.
- Configured HAProxy for custom routing and load-balancing.
- Write scripts for creating automated daily scheduled jobs to run using Terraform.
- Set up Gitlab pipelines for CD/CD.
- Set up dev, QA, and prod environments for testing and deploying.
- Developed reactive microservices backend using Spring Webflux and Project Reactor.
-
Software Engineer
- Developed Android and iOS mobile application using React Native for Navigational Assistance to Patients.
- Developed Web Interface using Reactjs for clinical navigators.
- Contributed to development, testing, and extension of various application modules.
- Interacted with other technical teams to obtain the desired outcomes.
- Developed Android and iOS mobile application using React Native for Navigational Assistance to Patients.
-
Women in Engineering Program Study Group Facilitator
- Served as a mentor for freshmen and sophomore engineering women.
- Assisted study group members to understand concepts in a PHYS course.
- Planned the direction and content of the study sessions.
- Served as a mentor for freshmen and sophomore engineering women.
-
Equity REU Undergraduate Research Assistant
- Developed an unsupervised Spiking Neural Network (SNN) using SpikeTiming-Dependent Plasticity.
- Enhanced the data throughput and accuracy of SNN in the MNIST dataset through mini-batch processing.
- Utilized Google Colab to simulate the SNN in GPU and TPU.
- Developed an unsupervised Spiking Neural Network (SNN) using SpikeTiming-Dependent Plasticity.
-
Multi-Campus REU Undergraduate Research Assistant
- Conducted material research in improving self-healing property of spinel ceramics utilizing recycled lamp glass.
- Investigated various materials to incorporate in spinel ceramic for improving its self-healing property.
- Conducted material research in improving self-healing property of spinel ceramics utilizing recycled lamp glass.
-
Peer Tutor
- Tutored fellow undergraduate students in Computer Science, Math and Physics courses.
- Tutored fellow undergraduate students in Computer Science, Math and Physics courses.