Software Engineer
I’m a full stack software engineer with focus on backend engineering. I write most of my software in Java, JavaScript, TypeScript, Python and Go. I like to follow domain driven design in delivering complex nontrivial requirements. I believe good managers will like microservices architecture since it enables each team to have their own flexibility in choosing their preferred tech stacks, release cycle, etc without blocking other teams (when it is correctly designed with proper bounded context). I prefer asynchronous communication between services by using pub/sub message brokers and CQRS pattern. I acknowledge real-time transactional consistency is hard to scale and most systems can live with eventual consistency. Front-end should be smart enough to deal with the update latency (for example, by showing the update result before it is consistenly stored across services).