Seeking an opportunity to use my knowledge of full stack web development to develop efficient and robust applications.
Languages
- Java
- JavaScript
- TypeScript
Frontend
- CSS
- HTML
- React
- Redux
- Bootstrap
Domain
- Algorithms
- Data structures
- Clean architecture
- Computer networking
Other
- Git
- Jest
- HTTP
- Linux
- Regex
- Docker
- Webpack
An Express-like server framework with an Axios-like client for easily communicating through an IPC socket. It also supports broadcasting to multiple clients.
- Utilized Node.js IPC socket for super-fast full duplex communication.
- Programmed a complex request routing algorithm using JavaScript generator functions.
A command-line time tracking application with a sleek TUI (Text/Terminal User Interface) that is made of 20k+ lines of code.
- Implemented the backend service as a detached child process.
- Used my express-ipc framework for CLI/TUI to backend service communication.
- Wrote raw SQL code with proper transactions to manage a local Sqlite database without using any ORM.
- Integrated an external CLI audio player (mplayer) as a subprocess to play alarm.
- Coded rigorous data validation logic and built an automatic database backup system to guard against data corruption.
- Utilized Redux for complex state management in the TUI.
- Followed clean architecture and wrote modular and easily testable code.
An e-commerce web app to sell computer hardware and electronic products.
- Scraped a local website with Node.js for products data.
- Created MongoDB Atlas search index for full-text search, auto completion and finding similar products.
- Built complex MongoDB aggregation pipeline to fetch data from multiple collections and reshape it to the most convenient form.
- Used Docker to containerize the backend application.
- Built the frontend application using React and Bootstrap.
- For the backend app, followed clean architecture and wrote modular, decoupled, and easily testable code.
- Wrote comprehensive tests for the backend application. The coverage is 96%+.
A web app to visualize word unscrambling algorithm with the trie data structure.
- Used HTML canvas API and a third party library to render interactive tree on the screen.