Development for Micro-sevices/Saga Pattern/Event sourcing
- Language:
- Java(over 10 years): SpringBoot, Spring WebFlux/WebMVC, SpringSecurity, SpringData(JPA/Hibernetes, Cassandra), Reactive Programming(Reactor), BeanValidation,
AspectJ, CGLib, SLF4j, LogBack
- GoLang(3 years): Gin, GORM, Go-Resty
- Language Tools:
- Testing:
- Java: JUnit(Jupiter), JMockit
- GoLang: Ginkgo, Gomega
- Parser generator:
- Java: ANTLR
- GoLang: pointlander/peg
- Queueing: RabbitMQ, Kafka
Architecture
- Experienced on reactive programming
- Expert on IoC/DI pattern
- Expert on domain driven-design
- Expert on aspect-oriented programming/declarative programming.
- Expert on test driven-design.
- Expert on event sourcing/offline transaction/Saga pattern design.
Refactoring systems
With TDD principals, I am good at refactoring/simplifying existing system.
- Experiences on refactoring from monolith system to micro-services.
Expert on relational database.
Experienced on NoSQL Databases: Cassandra, MongoDB
- Expert on Pre-optimized design for schema/index
- Expert on query optimization
- Expert on databae evolution(Liquibase, CassandraMigrate)
CI/CD
- Experienced on modern CI/CD(GitLab CI, GitHit action)
- Experienced with Docker/Kubernetes/Kustomized
Cloud
- Experienced on AWS(EC2, ElastiCache, RDS, ECS)
- Experienced on GCP(SQL, GKE, Logging, Monitoring)
Knowledge system
Expert on usage of Trac/AsciiDoc writing.
- Experienced on Confluence/JIRA