Coding sample - Online queuing system - Submitted by Brian Lai
- Order + queue system
- Support local / non-AWS deployment or AWS Lambda deployment for distributed system
- Session based token for queuing
- JWT for message submission using Authorization header
- ReactJs for client side, queue waiting and send order after finish queuing
- Docker and serverless support for backend service
- [Client]
- reactJs
- react-scripts / jest
- jwt-simple
- [Order + queue system]
- SQLAlchemy orm
- PyJWT
- pymysql
- unittest
- Unit Test : Functional unit test code
- Test Data : Data for testing in endpoints
- Order : Order with online queue system using Python for AWS Lambda serving
- Client : Client UI for online queue waiting and place orders after queuing
- Setup : Setup script for database initialization
- Deploy : Deployment script for Serverless framework
- Tools : Tools for encryption (in env-prd.yml), encoding for testing
- Documentation : Documentation
- Screenshot : Application screenshot
-
For more details please refer to Documentation folder
-
[AWS solution]
- AWS IAM (Permission setup)
- AWS VPC (Network connection capability)
- AWS RDS MySQL (or equivalent)
- AWS Lambda
- Serverless (for AWS Lambda deployment)
- npm, pip3
-
[non-AWS solution]
- MySQL (or other SQL database for OLAP)
- npm, pip3
- Docker
- (Optional) Docker swarm, Kubernetes or equivalent (For container orchestration)
- Client and Backend are required to show queuing system is in function
- Provide time estimation of the queue, current position for waiting
- Support high volume of queuing users
- Can use local or in-memory repository
- Calls and creditals should be secured
- Logging / documentation and testing are expected as part of the solution.
- 48 hours
- Using cryptography / cryptocode / simple-crypt will show invalid elf header in AWS Lambda (Under osx development). This project will use JWT for configuration encryption and decryption.
- Linkedin : https://linkedin.com/in/brianlaihkhk/
- Github : https://github.com/brianlaihkhk/