Skip to content

AshleyXian/ShanshanProjects

Repository files navigation

About me

  • 👋 Hi, I’m Shanshan! Thank you for visiting my page.
  • 🌱 I’m currently a master student at Columbia University Engineering Department majoring Business Analytics.
  • 🧩 This page contains part of the projects I have done in classes and during my internship.
  • 💞️ I’m looking to collaborate on sofetware development related projects.
  • 📫 Reach me by ss6371@columbia.edu or my_linkedin.

About my Projects

React, Java Spring and Hibernate-based Online Food Ordering System (check my home page to see the complete project)

  1. Implemented RESTful API via Spring MVC, including registration, menu searching and ordering, and checkout.
  2. Utilized Hibernate to access and operate the data storage (menu, restaurants) and set up MySQL instance using AWS RDS.
  3. Provided authentication and authorization via Spring security to protect the application from malicious attacks.
  4. Used the Spring framework core technologies to decouple all the components in the application loosely.
  5. Built the user interface with React and Ant Design to allow users to add items to the shopping cart and place orders.

Compare Algorithms for Parcel Delivery

  1. A project simulates parcel scheduling and tests the difference between random algorithm and greedy algorithm.
  2. The module that drives the whole program is experiment.py. It contains class SchedulingExperiment.
  3. In file domain.py, classes necessary to represent the entities are defined: classes Parcel, Truck, and Fleet.
  4. PriorityQueue is a class in container.py used for prioritizing parcels.
  5. In the file scheduler.py, there is an abstract class called Scheduler, it has two subclasses called RandomScheduler and GreedyScheduler, which implement two scheduling algorithms.

Puzzle Games - Automated Solving

  1. Designed and implemented an object-oriented program (OOD and OOP) in Python for solving 3 types of puzzles (sudoku, word ladder, and expression tree puzzle).
  2. The Puzzle class in puzzle.py is abstract, it has three subclasses (one for each game).
  3. In solver.py, applied two search algorithms, depth-first search and breadth-first search, for exploring all possible puzzle states in systematic ways.
  4. There is one file missing (expression_tree_puzzle) due to lost of data from my partner's side. However, the sudoku game and word laddder game are fully functional.

Credit Card Approval Prediction

  1. A Data Science project for prediction applicants' approval proabability for a credit card.
  2. Applied vintage analysis for labeling each applicant as 1 (approved) or 0 (denied) based on credit history.
  3. Employed over-sampling method on the minority class since the dataset is highly imbalanced. Increased the proportion of minority class from 1.5% to 50%.
  4. Built models in Python to train historical data, the models include logistic regression, random forests and neural networks. Manipulating models and parameters increased the accuracy from 48% to 91%.

Generate reports

  1. A Python program generates reports between any two valid dates in an Excel sheet about data from hosipitals' websites.
  2. Reduced time for producing daily, weekly and monthly reports by 90%.

Data Structures

  • This contains files showcase my knowledge in data structures and algorithms.