My name is Mahmudul and I'm from NYC!
I'm a senior at Princeton University studying Computer Science and pursuing a minor in Robotics and Intelligent Systems. I am passionate about software engineering as a career, because I love programming, problem solving, and creating an impact through software development! You can find my resume below.
Scrolling below are some of my projects highlighting my programming skills and experience.
View ResumeI worked on a semester-long web application in a group of 4 called TigerClimb, which is built using Python and Flask (server-side), HTML/CSS/Javascript (client-side), and PostgreSQL (database). Our web app allows the hundreds of Princeton students involved with the Princeton Climbing Wall to query climbing routes, add favorite routes, and comment on routes. Admins are able to use our built graphical user interface to add new routes and set holds for a given route.
I created a Python graphical user interface (using PyQt5) that allows Princeton students and other interested parties to query an SQLite database of classes and courses offered during a semester. The application handles server-side concurrency and client-side concurrency.
I programmed a Chrome extension using the Chrome Storage API to allow users to save timestamps of a YouTube video as they view it and return back to video at the saved timestamps. The core functionality is programmed in Javascript and the popup element is coded in HTML/CSS.
I implemented a Golang web proxy that passes requests and data from local web clients to remote web servers for improved web performance by leveraging DNS prefetching, data caching, and content filtering specified HTML elements.
As a part of my work as a research assistant for Princeton's Intelligent Performance and Adaptation Lab, I worked on the development of a web version for an motor-learning based Unity experiment called Choose Your Target. I wrote software in Unity C# which fetches trial and orders settings from Google Firebase using REST API, which was previously stored as local CSV files. I created a script in Javascript (Google Apps Script) which uploads and deletes these CSV data into Firebase.
I programmed a microprocessor in Verilog that implements the LC3 instruction set, a 16-bit processor with a simple but versatile instruction set. This processor is Turing complete and is a full-fledged stored program computer. A description of the assembly functions my computer implements can be found here.
In Java, I programmed a seam-carving algorithm, which is a content-aware image resizing technique where the image is reduced in size by one pixel of height (or width) at a time. Unlike scaling or cropping, seam carving preserves the most important features of the image. The project implements dynamic programming and backtracking to find the seam which can be removed.
I programmed my own power electronics library in Java containing various power electronic topologies (diode-rectifier, buck converter, boost converter, flyback converter), user-interactive to ask for circuit parameters, and computes the output current and output voltage, and ripple inductor current, ripple capacitor voltage, and peak switch voltage/currents (for design choice).
You're looking at it right now! My personal website is programmed in HTML, CSS (Bootstrap), and Javascript. It's a responsive single page website, and contains information about me, my resume, projects, socials, and contact information.
COS461 Computer Networks (Go)
COS375 Computer Architecture (C++)
COS418 Distributed Systems (Go)
COS316 Computer System Design (Go)
COS346 Robotics (Python)
COS470 Principles of Blockchains (Rust)
COS343 Algorithms in BioInformatics (Python)
COS333 Full-Stack Programming Techniques (Python, SQL, HTML, CSS, Javascript)
COS396 Quantum Computing (Python)
COS324 Machine Learning (Python)
COS226 Algorithms and Data Structures (Java)
COS217 Systems Programming (C, x86 Assembly)
COS306 Contemporary Logic Design (Verilog)
COS445 Economics and Computing
COS240 Discrete Mathematics
COS126 Intro Java Programming (Java)
Languages: Java, Python, C, HTML, CSS, Javascript, SQL, R, Verilog
Frameworks/Libaries: React.js, Flask, Bootstrap, Node.js, jQuery, SQLAlchemy, NumPy, PyQt5
Tools: GraphQL, PostgreSQL, Google Firebase, Git/GitHub, Heroku