- Microservices Documentation
- The Path to Microservices: Opening Chapter
- The Path to Microservices: What are Microservices?
- The Path to Microservices: Do You Really Need Microservices Architecture?
- The Path to Microservices: CAP Theorem
- The Path to Microservices: Service Discovery
- The Path to Microservices: CI/CD
- The Path to Microservices: API Gateway Aggregation Pattern
- Microservices ecosystem
- The pains of microservices - Part 1
- The pains of microservices - Part 2
- Distributed tracing and distributed logging
- Understand Observability
- Log Monitoring and Alerting
- 4 Popular Cache Patterns
- Cache delete strategy of the cache-aside pattern
- Handling jobs efficiently
- API vs Webhook
- Understanding the software complexity
- Why do we need Webhook?
- Understanding system bottleneck
- What is Event Driven Architecture?
- Event-Driven Payment Architecture
- Boost API read performance by 10x with cache
- How does Lalamove scale its Communication Platform?
- Redesign your development workflow with Mock Service
- Architecting for Simplicity
- Architecture Mystery
- Consistency and Availability
- Pub/Sub Practical Guide: Use Case
- Pub/Sub Practical Guide: Trade-off
- Why do we need architecture?
- Design for Adaptability
- Exploring Architecture: What Does It Really Mean?
- Duplication is better than Wrong Abstraction
- Design Principles: Simple is the best
- Code Review: Code Author Journey
- Code Review: Reviewer Journey
- Choose the right way to create objects
- Build a complex object
- Gracefully handle dynamic behaviors in the same category
- Avoid throwing exceptions as control flow
- Backward Compatibility Thinking
- Backward compatibility trade-off
- Design Space Optimization
- Everything about RESTful API
- Let UI drive API design
- Designing API with the right granularity
- How to handle API backward compatibility?
- Improve performance when retrieving large dataset
- Do you use pagination right?
- Enhancing API Performance Through Batch Requests
- What is JWT?
- OAuth Explained
- Never Trust Your Frontend When Developing API
- Designing Authentication for Your Public API Platform
- How To Protect Your Code On The Client Side?
- Security Practices: Blocklist vs Allowlist
- Software Supply Chain Security
- Passwordless Authentication
- Secure web application with CSP
- What is two factors authentication?
- How does an authenticator work?
- Hashing vs Encryption vs Encoding
- SMS Pumping
- Any problem in computer science can be solved by another layer of indirection
- Everything is a trade-off
- How do chatbots boost your productivity?
- 3 non-technical books that influenced me
- From chaos to clarity
- Tips for writing good documentation
- Navigating Complex Problem Spaces: Breakdown and Direction
- How do you delegate your tasks to others?
- Serialization vs Parallelization
Buy me a coffee