Fullstack Developer
Technical Skills:
- Languages : C(advanced), C++( advanced), Node.js/express.js, TypeScrpt(advanced),Java(advanced)
- Coursework:Data Design, Algorithms, Optimization mathematicsLinear Programming , Object-oriented design, Machine learning, Data analysis, Implement API. Web development, Computer Organization, Assembly language.
Education
B.S.| Computer Science | University of Rochester (2022 - 2026)
Experience
Research Assistant @ University of Rochester(2024.5 - present)
- Using profiling tool understand the warp progress information and analyze the locality in GPU with Prof. Ding.
- Design of different cuda kernel experiments and implementation of two additional observation methods on top of the NVbit.
Full stack developer @ RocLab(2024.2 - present)
- Collaborated with a team to engineer web applications using next.js, focusing on the current project ‘melcourse,’ a user-centric platform distinguished by its superior UI/UX design.
- Created CRUD API using Django REST.
- Implemented front-end features and components with the Chakra UI library.
- The site has become one of the official course search engines for our university, and our site allows students to have a better course selection experience by providing more features such as we can allow students to design a 4-year study plan and allow them to have a more concise schedule ui.
- Address
Project
C-compiler
- Designed and implemented a basic compiler for the C programming language, capable of translating high-level C code into low-level assembly/machine code. The project involved the development of key compiler components such as:
- Lexical Analyzer: Tokenized the input source code, identifying keywords, identifiers, literals, and operators.
- Syntax Analyzer (Parser): Built a context-free grammar and employed parsing techniques(LL) to generate an Abstract Syntax Tree (AST).
- Semantic Analyzer: Ensured type checking, scope resolution, and adherence to language semantics.
- Code Generator: Translated AST into intermediate representation (IR) and then generated assembly code for a target architecture.
- Optimization: Included basic code optimization techniques, such as constant folding, dead code elimination, and loop unrolling, to improve performance.
- Technologies: C, ANTLR, Assembly language.
A clever todo list App
- Designed a productivity application that streamlines task management by prioritizing tasks based on users’ self-reported interest and confidence levels.
- Implemented the APIs(express.js) for the data store in the NoSQL database(MongoDB).
- Used component base library to develop the app.
- Language: Typescript, react.js,express.js