- 💻 C++ & C
- 💻 Python
- 💻 Java
- 💻 Scala
- 💻 JavaScript
- 💻 Bash Scripts
- 🚀 Apache Spark
- 💙 Git
- 🤍 Github
- 💾 SQL
- 💾 NoSQL
- 🤔 Data Structures and Algorithms
- 😤 HTML/CSS
Experience
Computer Science Grader, University of California, Riverside. (2022 - 2023)
•Grade and provide feedback on student assignments for classes with 100+ students.
•Answer student questions about assignments and/or course materials through weekly office hours (CS141).
•Grader for Data Structures & Algorithms (CS141, Fall 2022) and Software Engineering (CS180, Winter 2023)
Projects
Personal Website (Present)
•This website you are currently viewing.
•Built using Next.JS and Tailwind CSS.
•Webpage is optimized for viewing on both desktop and mobile devices.
Sliding Tiles Puzzle Solver (Artificial Intelligence) (2022)
•Designed and implemented, in C++, an application that solves sliding tile puzzles.
•Given any 8-puzzle, this program outputs an optimal solution or "Failure" in under 2 seconds (on an AMD Ryzen 7 5800H with DDR4 3200MT/s RAM).
•Implemented three search algorithms:
- Uniform Cost Search
- A* with the Misplaced Tiles Heuristic
- A* with the Manhattan Distance Heuristic
•Users select which search algorithm to run. They can also enter a custom puzzle of their choice or select a predefined puzzle.
Feature Selection (AI/ML) (2022)
•Designed and implemented, in both Python and C++, a feature selection application (The C++ implementation is about 200x faster!).
•Given a dataset, this application finds the "best" subset of features that maximizes the accuracy of a classifier.
•Implemented two greedy search algorithms: Forward Selection and Backward Elimination
•The classifier used is Nearest Neighbor, and the evaluation function used is n-fold cross validation.
•Running the forward selection algorithm with a sample dataset, the classifier accuracy is 97.4%.
Movie Search Engine (2021)
• Co-developed a movie search engine that allows for both broad and specific searches depending on user input.
• Collaborated with others to build the project over several sprints following the Scrum framework.
• Implemented a search query parser that generates a “Select” method, allowing the program to effectively determine which movies to show.
• Implemented 45+ units tests using Google Test to verify that isolated methods work as expected.
• Established continuous integration for the project using GitHub Actions.
• Ensured the application is free of memory leaks by using Valgrind to check for and fix any problems.
About Me
Hello, my name is Qipeng aka Rick. I have recently completed my Bachelor's in Computer Science degree.
I have a variety of interests in Software Engineering and Computer Science related topics, but I aim to specialize in backend development. I aspire to build software systems that improve people's lives. But I also enjoy working on fun and/or challenging projects, like this personal website and some projects listed above.
Outside of work and professional studies, I enjoy solving the Rubik's cube, watching movies, and playing racing/rhythm games.