-
ποΈ Recipient of the UBC Hugh M. Brock Presidential Scholarship ($40,000) and RCAF Foundation Scholarship
-
π Iβm currently working as a Residence Advisor at UBC Student Housing
-
π Some personal projects I am working on are implementing a 2-way superscalar pipelined processor for my RISC machine, python scripts for webscraping and a file sharing website.
-
π± I have just learnt java for my software construction course and Verilog and ARM for my computer systems course. I also worked with FPGA and digital design for that course.
-
π± I am currently learning formal verification and UVM with a focus on contrained random verification.
-
π Working in the software team for UBC Rocket, contributing to our groundstation
-
π» Working in the hardware integration team for UBC SmartCity, contributing to the park smart application. Currently working on a feature that utilizes Raspberry Pi Pico to collect live sensor data and display it in our application.
-
π» Worked on the safewalk mobile application for UBC SmartCity
-
π οΈ Languages: Python, Java, Verilog, SystemVerilog, ARM, C, C++, SQL, HTML, CSS, JavaScript
-
π οΈ Frameworks & Databases: React.js, Node.js, Express.js, Flask, MongoDB, SQLite, MySQL, Azure SQL
-
π οΈ Softwares & Tools: ModelSim, Quartus, FPGA, DE1-SoC Board, SolidWorks, Arduino, Raspberry Pi, PyCharm, IntelliJ, Git
-
π οΈ Lab Equipment: Oscilloscope, Function generator, Multimeters, Basic Circuit Tools
-
π« How to reach me [email protected]
-
β‘ Fun fact I was in a TV commercial when I was 10 years old π
- Languages and tools: Verilog, SystemVerilog, ModelSim, Quartus, FPGA, DE1-SoC Board
- Implemented a Turing Complete 16-bit RISC machine using System Verilog on an FPGA board
- Subdivided machine into smaller modules such as ALU, controller, datapath, RAM to debug easily
- Verified component and integration through RTL and gate level simulation using ModelSim and Quartus
- Languages and tools: Verilog, SystemVerilog, Yosys
- Independently studied formal verification techniques, implementing assertions and defining a constraint environment for testing a 4-bit counter with overflow
- Utilized the RTL synthesis tool Yosys to execute the testbench
- Languages and tools: Python, Beautifulsoup, SQLite, Matplotlib, csv
- Extracted product title and prices from Amazon using Beautifulsoup, fetching links from a CSV
- Efficiently managed data by leveraging a relational database in SQLite and plotted price history using Matplotlib
- Languages, tools, and concepts: Java, Multi-threading, Sockets, IntelliJ
- Built a server for concurrent client interactions capable of fetching sensor data and sending actuator commands
- Implemented thread-safe data types, synchronized methods, and leveraged Java sockets to handle clients
- Languages and tools: React.js, Flask, MongoDB, GridFS, HTML, CSS (Bootstrap), JavaScript, Figma
- Developed a full-stack React web application to facilitate streamlined document sharing between users
- Constructed a Flask back-end API for efficient handling of file uploads and deletions in MongoDB using GridFS
- Languages and tools: Arduino, C++, Bluetooth Module, Live Camera Streaming, Object Manipulation
- Programmed Arduino-controlled robot with C++, integrating Bluetooth module for remote control via Blynk IoT
- Implemented features like object manipulation, navigation, live camera streaming, and sonar for movement detection
- Utilized MG995 and MG996 medium servo motors to achieve precise and controlled movements, showcasing proficiency in kinematic design.
- Designed and constructed a robust chassis using materials such as Styrofoam and plastic board, showcasing proficiency in mechanical structural design and assembly
- Implemented four motors with L298N motor drivers for optimal wheel control, highlighting knowledge in motor driver configuration and robotic navigation.
- Languages and tools: C, TinkerCad, Arduino
- Developed an interactive Simon Says game in C using TinkerCad, implementing LED patterns that users replicate by pressing corresponding buttons
- Utilized Arduino functionalities to control LEDs, detect button presses, and manage game logic, creating an engaging and challenging user experience