Your Name

Viktor Ji

Software Engineer

About

  • Hi! I'm Viktor, an experienced software engineer who enjoys building and solving real world problems.
  • I built this personal website to showcase my work and as a playground to experiment with new technologies. In my free time, I enjoy playing competitive volleyball, travelling, reading History, going to the gym, and playing games.
  • I am currently pursuing my Master's degree at Carnegie Mellon University, where I am honing my skills in distributed systems, software engineering, and artificial intelligence.
  • Previously, I spent two years working in the Bay Area for a healthcare technology company and interned at a large FinTech firm prior. These experiences taught me a great deal about building production-level software and collaborating with cross-functional teams. (details in Resume)

Education

CMU LOGO

Carnegie Mellon University - School of Computer Science

M.S. in Software Engineering | Dec 2026 (Expected) | Pittsburgh, PA

UMICH LOGO

University of Michigan - Ann Arbor

B.S. in Computer Science | May 2022 | Ann Arbor, MI

Work Experience

Forward - Clinical Software Engineer

2022–2024, San Francisco, CA

Wise - Software Engineer Intern

2021, Budapest, Hungary

Projects

LLM Lawyer

AI driven platform that facilitates legal inquiries

Hamster

Personalized Knowledge Management Platform

Personal Website

Github repository for this personal website

Technical Skills

Languages

  • Python
  • JavaScript/Typecript
  • Golang
  • Java
  • C++

Frameworks & Libraries

  • React
  • Redux
  • GraphQL
  • Next.js
  • Tailwind CSS
  • Node.js
  • Flask

Tools & DevOps

  • Git
  • Docker
  • Postman
  • Vercel
  • Figma
  • AWS
  • Github Actions

Databases

  • PostgreSQL
  • MongoDB
  • MySQL
  • SQLite
  • Firebase

Sample Academic Projects

Mini-Blog

EECS 485, University of Michigan

UMICH LOGO
  • Implemented a local server that handles REST API requests and returns the corresponding information in json format, utilizing Python’s Flask library as the backend.
  • Enabled information retrieval and storage using the local server with sqlite as the database
  • Implemented and designed the frontend of the website as well as the interface, using client-side Javascript to handle interactions with individual posts such as commenting, liking or following.
Map-Reduce and Mini Search-engine

EECS 485, University of Michigan

UMICH LOGO
  • Implemented a multi-threaded and fault-tolerant mapreduce program that takes inputs from python sockets. Uses round-robin partitioning to parse inputs with python subprocess
  • Simulated information retrieval of search engines efficiently using the mapreduce program. Using PageRank and HITS algorithms to display the best matching results based on user input, referencing the values of the inverted index constructed beforehand.
  • Implemented shell scripts to automate the process of building an inverted index.
LC-2K Assembly Simulator

EECS 370, University of Michigan

UMICH LOGO
  • Translated assembly instructions into machine code with load, store, branch and binary operations.
  • Implemented instruction pipelining which resolves data hazards and control hazards
  • Implemented a Cache with a write policy of write-back and allocate on write, replacing the least recently used memory in case of collision and eviction.
Quality Assurance and Defect Detector

EECS 481, University of Michigan

UMICH LOGO
  • Implemented a mutator that ranks the qualities of test suites by instrumenting the input python program’s AST with random first or higher order mutations.
  • Implemented Delta-Debugging to find the minimal subset of code changes that causes defects.
  • Computed the probability of a line of code being defective using Ochiai and Tarantula algorithms.
Simulators

EECS 281, University of Michigan

UMICH LOGO
  • Maze Runner - Implemented a depth-first search algorithm to traverse a 2-D maze containing traps and triggers, determining whether or not a solution exists and outputs the entire path if it does.
  • Drone Delivery Simulation - Computed the most efficient paths to traverse a set of coordinates with given constraints and costs, adapting Heuristics (branch and bound), Flyod-Warshall, and Kruskal algorithms to produce the desired output depending on the request.
  • Stock Market - Implemented a program that automatically makes profitable stock trades in real-time given a log of transactions, utilizing priority queues and transition states to aid its decision making.
Game Development

EECS 183 & 280, University of Michigan

UMICH LOGO
  • Developed a mini fruit-catcher game on Arduino in C++. Designed a difficulty scaling algorithmn that makes the game increasingly chanllenging over time alongside a high-score record system.
  • Developed a card simulator game that plays Euchre with basic programmed AI opponents.

Email Me

viktorj@andrew.cmu.edu

Leave a Message

~ This site was developed using NextJs, Tailwind CSS, and deployed with Vercel.
© 2025 Viktor Ji. All rights reserved.