A platform that helps engineers sharpen their coding skills via live competitions on algorithms
https://coding-fight-club.thewenchin.com/
https://github.com/wenchin77/coding-fight-club
- Set up a web server on AWS EC2 using Nginx as proxy and PM2 as process manager
- Utilized well-managed Node.js child processes to generate mock terminal results with the prevention of server errors including infinite loops and out-of-memory errors
- Enabled live competition with Socket.IO that listened to and emitted various events
- Established in-memory caching mechanism to track the status of users and matches
- Constructed a rating system to test the correctness and performance of users’ submitted code by normal and extreme test cases
- Detected available online users and implemented random match mode
- Built RESTful APIs for match result, leaderboard and user profile
- Designed database schema on MySQL with foreign keys and indexes
Integrated GitHub Login and Google Login to better suit engineers’ need