Test Web API backend using real production technologies: Go AWS Lambda DynamoDB CloudFormation

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ย. 2024
  • I recently helped a friend of mine complete a test task for the "Full-stack Tech Lead" position. The essence of the test task was to create a prototype of a user management system that could create a new user, log in, and get a list of all users.
    And he failed... "Backend does not use real production technologies"
    He also struggled with web API deployment on the public host and with SSL configuration and with database connections. Web API troubleshooting was not good at all in his implementation.
    Okay, what can we do?
    Test assignment Web API backend using real production technologies:
    Golang, AWS Lambda, AWS Gateway, AWS DynamoDB, AWS CloudFormation
    - Quick deployment
    - No SSL overhead and public endpoints
    - Build in logging and troubleshooting
    - Easy to develop everywhere, no or minimal computer setup to be ready
    - Easy to up all backend and easy to destroy complete infrastructure
    github.com/and...
    This project is good for:
    1. Frontend developers to apply for a full-stack positions
    2. Backend developers to have a template for a Web API with quick deployment
    3. Anyone to see how AWS CDK Go work together
    Web API:
    - register a new user
    - login using username and password
    - me to get information about the user based on the JWT token and database info
    - role to change existing user role (user | admin) (only for admins)
    - list to get a list of all users (only for admins)
    - remove a user from the system
    - create product
    - update product
    - delete product
    - list products
    - get a single product
    Code structure
    - Infrastructure: awssqs, awsdynamodb, awslambda, awsapigateway
    - Functions: users, products
    #Go #Golang #AWS #Lambda #Gateway #DynamoDB #CloudFormation

ความคิดเห็น •