ShopWise: Amazon-like E-commerce Site
- Designed and implemented a microservice architecture with Spring Cloud. Used Consul for service discovery, Hystrix for resilience and Feign & Nginx for load balancing.
- Reduced latency with read-through cache in Redis and MySQL query optimization in pagination and predicates. Utilized static site generation via Thymeleaf to boost loading speed of popular pages.
- Improved scalability with horizontal scaling by sharding with ShardingSphere to handle large datasets expectedly of GB-level. Implemented read-write splitting to perform query-based load balancing.
- Implemented real-time product search by Elasticsearch, reached second-level new data indexing (< 1s).
- Handled bursts of requests with asynchronous processing using RabbitMQ. By decoupling the order service and payment service, the system supports high currency of 1000 TPS.
Not on github yet. I will find some time to clean up and upload the code.
SnapHub: Photo-sharing Social Media
- Designed a photo-video-sharing hub with MVC RESTful architecture and built the system with the combination of MongoDB, Express, React, Node and deployed it to Amazon EC2.
- Worked as the leader of an engineering team under supervision of a PM and followed Agile practices.
- Implemented customized UI components designed by the UI engineer using Material UI and PropTypes.
- Integrated live updates by polling in Effect Hooks and State to trigger re-renders. Featured infinite scroll based on react-infinite-scroll and enabled pull-to-refresh. Achieved 7 minutes average session time.
- Implemented content recommendations with tailored PageRank on users’ social network and history. Cached results in MongoDB with 3-hour TTL to minimize the impact on responsiveness.