Here is the task list for the potential tech tasks to work on for the tech transition time(around 6 weeks). Please take a look and feel free to comment on it or add more if you think it’s missing.
Task Name | Details | Priority | Notes |
Unified error code structure & handling | Create unified error code structure and hide internal API error details | MUST HAVE | |
Data sync with outbox pattern | SHOULD HAVE | Have dependency on AlloyDB migration | |
Flyway migration script version check on CI | A Github action to make sure that new migration script versions of the current PR are greater than the latest one of main branch | SHOULD HAVE | |
Idempotence handling in micro-services | Use idempotency lib to help to handle Idempotence in every REST API & Kafka consumer | MUST HAVE | |
DLQ handling in micro-services | SM-5264 - DLQ & Kafka error handling Implementation In Progress | MUST HAVE | Have dependency on Idempotence |
Increase observability for system | 1.Prometheus monitoring for micro-services | MUST HAVE | |
Strategy for shipping to prod |
| MUST HAVE | |
Temporal guideline & enhancement |
| SHOULD HAVE | |
Adopt Kafka generator | Replace the current micronaut kafka consumer & producer code with Kafka generator lib | MUST HAVE | |
Distributed transaction support |
| SHOULD HAVE | |
Database usage guideline & management |
| NICE TO HAVE | |
Database monitoring | Add mornitoring for database | MUST HAVE | |
Traffic management |
| MUST HAVE | |
Avro logical type consistent usage |
| SHOULD HAVE | |
Cache usage enhancement |
| SHOULD HAVE | |
Feature Flag |
| MUST HAVE | |
IAM lib enhancement | Enhance IAM lib usage to remove duplicated code for handling authorization | MUST HAVE | |
Posting lib integration | Refactor & integrate with posting lib for dealing with posting message with TM | MUST HAVE | |
CMS Adoption | Do research and check for suitable CMS tool for us to use. | SHOULD HAVE | |
NIO & Reactor support | Gradually adopt NIO & Reactor support in our back-end service for better performance | SHOULD HAVE | |
Log enhancement |
| SHOULD HAVE | |
Log message masking | Need to follow data privacy for log messages | MUST HAVE | |
gRPC research | Research on gRPC and validate the usage for us to envolve | MUST HAVE | |
Enhance & refactor micro-service code architecture | The way the code is currently organized makes it difficult to read/maintain. It’s fine for simple services, but gets difficult for complicated services such as the transaction processor manager. We should be using a more domain-driven approach for more complicated services | MUST HAVE | |
Distributed tracing enhance |
| MUST HAVE | |
Smart Contract CI/CD pipeline |
| MUST HAVE |