On Amazon Prime Video’s move to a monolith

There is nothing fundamentally wrong with a monolith, and a well-architected monolith with well-structured code with separation of concerns serves its purpose quite well. If Amazon Prime’s experience proves anything, it is that when the granularity of services is too fine, complexity and costs skyrocket.

Some thoughts on the latest LastPass fiasco

Employers are rightfully paranoid about corporate secrets being compromised by bad actors. Some of the worst data breaches were caused by employees. Employees, however, should be equally paranoid about their personal secrets being compromised for the same reasons. If corporate secrets can be leaked due to a colleague's mistake or malfeasance, so can your personal data entrusted to your employer.

Comparing AWS SQS, SNS, and Kinesis: A Technical Breakdown for Enterprise Developers

Queuing is a critical component of software architecture, and choosing the right system for your cloud-native enterprise application is crucial. In this blog post, we'll compare Amazon Simple Queue Service(SQS), Amazon Simple Notification Service (SNS), and Amazon Kinesis, exploring their strengths and weaknesses to help you determine which queuing system is best suited for your use case. 

Why I am a poll worker since 2020

I encourage my followers in the US not only to make sure they are registered to vote and exercise their right to vote every election cycle; but also consider working at the polls. Take a day off from work, spend 15 hours helping your own neighbors exercise their right to vote. I am confident that just like me, you’ll find it extremely rewarding.

Why you should question the “database per service” pattern

I am not a fan of the database per service model. The correct pattern for the database model in a cloud-native environment is a data abstraction layer that hides the underlying database mechanics while allowing for transactions that span multiple services. The services should not know the architecture of the database, nor should they orchestrate their transactions.

Book review: Clojure for the Brave and True

LISP is used in university computer science programs as a language to teach some of the most critical concepts in computer science. Most graduates don't end up using LISP for a living, despite some incredible niche applications of the language, such as deep space exploration. Likewise, learning Clojure and its concepts will make you a better programmer, even if you don't end up using it for your projects.