I am interested in embedded systems and hardware. I have worked on several design projects, including a 5G open radio unit (ORU) system, a spam detection system over a multi-FPGA network and a high-dimensional system-on-chip for reconfigurable AI at the edge. Those industrial and academic experiences gave me a deep understanding of system design and honed my skills in many areas.
My skills include:
• Embedded systems design (software and hardware)
• C/C++ programming
• FPGA development (High-speed data interface, DDR, communication protocols, etc.)
• Digital design
• Robotics and Mechatronics
• Artificial intelligence and machine learning
• Built an efficient data pipelining system that can dynamically create/scale data pipelines and process data parallelly based on predefined data/task dependencies.
• Used the parallel computing techniques such as MPI and OpenMP to optimize the performance in terms of strong and weak scaling.
• Designed a high-dimensional processing unit to perform AI-tasks (e.g., classification, regression, etc.) and integrated with a RISC-V core.
• Created custom ISA that runs on RISC-V and wrote embedded software that controls the acceleator.
• Used a python script for code generation of large scale AI application such as language recognition.
• Designed a glove with an Arduino and a camera mounted to the palm such that it can be hovered over text to have the text read out to them via a speaker
• Used BLE to configure the camera, IMU to detect the movement and orientation, and UART to transmit images
• Finite state machine runs on the Arduino to control the reading glove logic.
• Identified ingredients at random locations on the table using computer vision (colour thresholding).
• Used AR tags to calculate the relative coordinates between the ingredents, gripper location, and preperation area.
• Followed a desired recipe to assemble a customized burger using motion planning.
• Designed both the hardware and software system and utilized 3 FPGAs, communicating over the network through the TCP/IP protocol.
• Implemented the spam detection probabilistics model and designed the inference logic on FPGA.
• Designed a CRDT library with functional and performance benchmark to achieve strong eventual consistency and low merge latency over the network.
• Created a Trello-like project management application using the CRDT library to showcase the advantages of a decentralized distributed system approach instead of a server-based approach.
• Implemented keyword spotting and gesture recognition and created an end-to-end pipeline from data collection/pre-processing to model training, converting model to TF Lite/Micro for deployment on Arduino
• Drawing with forward kinematics
• Motion planning with obstacle avoidance
• Using convolutional neural network and transfer learning to create multiclass classification
• Make a website that searches for TV series schedule of the current season and weekly episodes
• Created higher-level API and develop graphics interface for the Geographic Information System
• Found the fastest path and the most efficient way for courier companies to deliver packages
• Applied Dijkstra and A* algorithm, local search, and 3-opt
• Developed bare metal code on FPGA and ARM core using VGA display and PS2 controller
• Applied the knowledge of VGA adapter, audio controller, and Finite State Machine on Intel FPGA
• Worked on 5G 8T8R ORAN O-RU development that spans from optical interface to transceiver
• Developed hardware, bare metal codes and HAL embedded software to connect and link up components of the radio chain, involving and real-time data management and manipulation (JESD204C, 10/25G Ethernet) and communication protocols (SPI, I2C) to configure clock and transceiver chips
• Designed standalone NiOS system and functional software tests on Intel FPGA to de-risk various hardware components on the board during bring-up phase
• Experiences in schematics review, place and route, timing closure, circuit design, Linux OS boot up, RF lab equipment, and system level debug.
• RTL coding in System Verilog and running/debugging simulations (testbench) on hardware component
-
• Integrated Sensemetrics API (web socket application) and IDS Radar (HTTPS) into Slide3, fetching and filtering user-selected data through web servers and plotting onto the 3D model
• Developed new UI for importing and selecting data feature and designed process flow
• Implemented the Export Factor of Safety function, converting model to csv and COLLADA files
• Sampled points using Poisson distribution and calculated error between two similar geometries
-
• Sorted, tested and troubleshot more than 200 feeder devices on knitting machines
• Identified root causes of malfunctional PCBs
• Decreased the wastage (discard rate) of the feeder devices by 30%, saving the company over ten thousand dollars (replacement expenditure)
• Learned manufacturing process of the plant and machine mechanisms
• Oversaw the operation of the club and supported the execution of the club’s events and initiatives
• Develop full scale project plan, lead the execution and oversee the UofT Sustainability Conference with over 300 attendees from universities and industries
• Coordinate the conference team, chair meetings, and plan the project timeline
• Prepare and maintain the budget and all financial procedures
ECE302 PROBABILITY AND APPLICATIONS
ECE311 INTRO TO CONTROL SYSTEMS
ECE334 DIGITAL ELECTRONICS
ECE342 COMPUTER HARDWARE
ECE344 OPERATING SYSTEMS
ECE345 ALGORITHMS AND DATA STRUCTURES
ECE361 COMPUTER NETWORKS I
ECE368 PROBABILISTIC REASONING
ECE421 INTRODUCTION TO MACHINE LEARNING
ECE470 ROBOT MODELING AND CONTROL
ECE496 DESIGN PROJECT
ECE532 DIGITAL SYSTEMS DESIGN
APS360 APPLIED FUNDAMENTALS OF MACHINE LEARNING
CSC384 INTRODUCTION TO ARTIFICIAL INTELLIGENCE
MAT290 ADVANCED ENG. MATHEMATICS
MAT291 CALCULUS III
JRE300 FUND. OF ACCOUNTING AND FINANCE
JRE410 MARKETS AND COMPETITIVE STRATEGY
JRE420 PEOPLE MANAGEMENT AND ORGINAZATION BEHAVIOUR
ECE472 ENGINEERING ECONOMIC ANALYSIS AND ENTREPRENEURSHIP
APS502 FINANCIAL ENGINEERING
EECS206A INTRO TO ROBOTICS
EECS249A INTRO TO EMBEDDED SYSTEMS
EECS249B EMBEDDED SYSTEMS DESIGN: MODELING, ANALYSIS, AND SYNTHESIS
CS267 APPLICATIONS OF PARALLEL COMPUTERS
Feel free to shoot a message!