Sample : http://itest.sourceforge.net/documentation/developer/Software_Requirements_Specification-iTest.pdf
- Google Docs, Microsoft Office, Notion
- Draw.io (https://app.diagrams.net/), Lucid Chart (paid)
- System Design
- Architectural Decision
- Monolithic (Layered)
- Easy to develop, but very complex to maintain when application grows
- Microservice
- Very hard to develop, but easy to maintain
- Server less (FAAS - Function as a service)
- Monolithic (Layered)
- Select Database
- SQL
- NoSQL
- Key value
- Graph Database
- Search Database
- Elastic Search (Open source - Full Text Search)
- Algolia Search (Open AI 3 - Natural Language Processing)
- Architectural Decision
- Software Architecture
- OOP
- OOP Design Pattern & Principles
- DSA
- Clean Code Architecture
- Problem Solving
- Testing
- Test Driven Development
- E2E (End to End)
- Distribution
- DevOps
- Cloud Engineering
- VPC (Virtual Private Cloud)
- EC2 (Elastic Computing Cloud)
- S3 (Simple Storage Service)
- RDS (Relational Database Service)
- DynamoDB
- Route 53
- CloudFront (CDN)
- SES (Simple Email Service)
- SNS (Simple Notification Service)
- SQS (Simple Queue Service)
- API Gateway
- Lambda
- Step Functions
- Cloud Watch
- Cloud Formation, Terraform, CDK
- Maintenance
- Architecture: Monolithic
- Database - NoSQL (MongoDB Atlas)
- Backend - NodeJS (Express, Hapi, Fastify) (MVC)
- Requirements
- Design
- Implementation
- UI/UX Design
- Web Design
- Frontend Development
- Backend Development
- Test Code
- Testing, Deployment
- Maintenance