Template
#Template
1. Cross-team Request (Yêu cầu từ team khác)
## 🧩 Story / Purpose As a **Marketing Team Developer**, I want **an API that provides current campaign performance data**, So that **we can display real-time metrics on the marketing dashboard**. ## ✅ Acceptance Criteria - [ ] Endpoint `GET /api/campaigns/performance` returns fields: `id, name, clicks, impressions, ctr` - [ ] Supports filtering by `dateRange` and `campaignId` - [ ] Response time < 500ms - [ ] Proper authentication (only Marketing app users) - [ ] API documentation provided ## 🔍 Technical Requirements / Notes - Implement using existing analytics microservice - Add Redis caching layer (TTL = 60s) - Include error handling for invalid campaign IDs - Unit test coverage ≥ 80% ## 📂 Documentation / Reference Links - Marketing team spec: [Confluence link] - Existing analytics API doc: [link] - Data schema: [link]
2. Internal Feature Task (Task nội bộ trong team)
## 🧩 Story / Purpose As a **frontend developer**, I want **a paginated user list API**, So that **the user management screen can load faster and support pagination controls**. ## ✅ Acceptance Criteria - [ ] `GET /users?page=x&size=y` returns `items, totalPages, currentPage` - [ ] Default: page=1, size=20 - [ ] Max size = 100 - [ ] If page > totalPages → HTTP 400 with message `Invalid page number` - [ ] Supports sort by `name` or `createdDate` ## 🔍 Technical Requirements / Notes - Use OFFSET + LIMIT query - Add DB index on `createdDate` - Cache first 10 pages for 1 minute - Performance goal: <200ms per request ## 📂 Documentation / Reference Links - API spec: [link] - DB schema: [link] - UI mockup: [link]
3. Bug / Defect (Lỗi hệ thống)
## 🧩 Story / Purpose As a **user**, I want **the address form to validate inputs properly**, So that **the app doesn’t crash when I submit incomplete information**. ## ✅ Acceptance Criteria - [ ] When submitting empty form, app shows “Address is required” message - [ ] No 500 error from backend - [ ] Validation applies both on client and server - [ ] Log errors with clear messages (no stack trace to user) ## 🔍 Technical Requirements / Notes - Add input validation on DTO level - Add null checks in controller - Write unit test for empty payload ## 📂 Documentation / Reference Links - Error log: [link] - Screenshot: [link] - API endpoint spec: [link]
4. Technical / Infrastructure Improvement (Cải tiến kỹ thuật)
## 🧩 Story / Purpose As a **DevOps engineer**, I want **to add monitoring and alerting for the payment service**, So that **we can detect issues and performance degradation in real time**. ## ✅ Acceptance Criteria - [ ] Grafana dashboard shows metrics: latency, error rate, throughput - [ ] Prometheus alert triggers when error rate > 2% for 5 mins - [ ] Logs stored and queryable via Loki - [ ] Documentation updated in internal wiki ## 🔍 Technical Requirements / Notes - Use Prometheus + Grafana - Expose metrics endpoint `/metrics` - Integrate Alertmanager with Slack channel `#devops-alerts` ## 📂 Documentation / Reference Links - Infra setup guide: [link] - Grafana dashboards: [link] - Slack alert configuration: [link]
Leave a Comment