James Doh

Projects

  • Penn OS

    Mar. 2025 - May 2025

    Penn OS is a UNIX-like operating system that 3 of my friends and I built from scratch. It supports priority-based thread scheduler mimicking multi-process behavior, file system, and interactive shell for user commands. It is not a standalone OS in a sense that it actually runs on top of our host OS, but it is a full-fledged OS in a sense that it has its own kernel, file system, and shell.

  • Penn Course Plan

    Sep. 2024 - present

    I'm a member of Penn Labs, where we build software for Penn students. I'm part of the Penn Courses team, and I focus on building Penn Course Plan, which allows Penn students to plan their courses for the next semester. One of the features I worked on was the interactive map feature, which allows students to see the location of their courses on a map.

    githubdemo

  • Penn Shell

    Feb. 2025

    Penn Shell is an interactive terminal that my friend and I built that prompts and executes user commands and also supports features like standard input/output redirections, pipelines, background/foreground processing, and job control.

  • Media Pedia

    Aug. 2024 - Dec. 2024

    For our final project for CIS-5500 (Database and Information Systems), my team created a full-stack web application that allows users to browse and explore various movie data. We created a PostgreSQL database deployed on AWS RDS, hosting over 500,000 rows of data related to movies, genres, ratings, actors, and directors (these data were gathered and cleaned from a public IMDB database).

  • C++ HTTP Server

    Aug. 2024

    As someone who has always been interested in web development, I really wanted to get deeper into the low-level aspects of web development, so I decided to implement a HTTP web server from scratch! I collaborated with a teammate to build a high-performance web server that can handle multiple simultaneous request and dynamic paths, and also serve various assets like HTML, CSS, and JS.

    github

  • JPMC SWE Virtual Experience

    Aug. 2024

    I recently participated in JPMorgan Chase’s virtual job simulation, where I used JPMorgan’s own open source library called Perspective, to build a live graph that displays a data feed for traders to monitor.

    githubdemo

  • proudP Web Trial

    Apr. 2024 - May 2024

    proudP is a men's prostate health care app by Soundable Health that allows you to record your urine sounds and analyzes your bladder health using AI. I developed its web trial version that gives a glimpse of proudP technology.

    demo

  • Automatic Path Detection

    Mar. 2024 - May 2024

    While interning at Soundable Health, I had the opportunity to rework the algorithm that automatically detects possible paths and their intersections of any given geo-spatial map. By using morphological operations and graph traversal methods, I was able to decrease the overall running time by an average of 90 seconds!

  • Penn Free Food Exchange

    Oct. 2023 - Feb. 2024

    Do you have any leftover food? Instead of throwing it away, share it on Penn Free Food Exchange! Originally an idea from my friend Ethan Markwalter, PFFE allows users to simply drop a pin on the map and share the free food details (NOTE: must have a Penn email to join).

    githubdemo

  • String Search Visualizer

    Jan. 2024

    For my first project of 2024, I created a website that helps visualize various string search algorithms, from the näive, brute-force approach to Knuth-Morris-Pratt (KMP) and Rabin-Karp algorithms. Simply enter the text and the pattern to search for within the text, and then press "Visualize"!

    githubdemo

  • JDTodo

    May 2023 - Sep. 2023

    JDTodo is more than a simple todo list application. Built with React.js frontend and Flask backend, It allows you to create multiple projects (i.e. CIS-1210 Exam Study Plan, Spring Break Travel), and for each project, you can create its own todo-list! You can also create your account where all your information will be saved.

    github

  • Locus

    Feb. 2022 - May 2022

    For our final project for CIS-3500, my team and I built a club-management system for Penn clubs (both web and mobile). With Locus, clubs around campus can manage their members, create projects, assign different tasks, and also send realtime messages.

    github