It’s early 2024 and S3 continues its ubiquity in computing. The often touted adjectives “serverless” or “cloud-native” usually mean—”we’re using S3 for something.” Amazon continues to push the boundaries of scale and further solidifies itself as the foundation for countless applications, platforms, and companies. Recently, Amazon released their S3 Express…
software architecture
Art is subjective, soft, human, unique. Science is objective, formulaic, algorithmic, process-heavy. Think about a recent problem you faced and its surrounding context. Was your approach more artistic or more scientific? Did your perception change as you solved the problem? How did it compare with your colleagues? As with anything…
#1 — Do not criticize others while being blind to your own faults. Do not seek fault in others while staying blissfully unaware of your own. When others code slowly, it’s because they’re inefficient and don’t manage their time well. When I code slowly, it’s because I’m being thorough and…
Microservices are nothing new. After being deployed successfully by mega-companies like Netflix, many growing engineering organizations gravitate towards this architecture as an aspirational symbol of success. This journey is known to many as the “monolith to microservices” migration. A few companies (Spotify) have the clairvoyance to adopt microservices from the…
As a Junior IC How comfortable am I developing code and debugging issues? Could I give a presentation about my team? Do I know who to contact if I’m not sure how to solve a problem (besides my mentor)? Did I release a project end-to-end that required me to do…
Check out my original post on Staff Software Engineer Responsibilities! As a Staff Software Engineer, one of your hardest challenges is to influence without authority. If your position doesn’t hold authority by default, then your best bet is to align with it. This topic was inspired by an insightful quote…
This post’s goal is to provide you with a deeper intuition behind two of the most common software messaging patterns—queues vs. pub/sub. This is a deep topic which deserves thoughtful attention when designing software. This article is structured in three parts: Develop an intuition for messaging, queues, and pub-sub through…
[October 10, 2021] If you enjoy this article, check out my new post on this topic: Staff Software Engineer Responsibilities — Align With Authority. The path of the Staff Software Engineer represents the career progression of a technologist. Senior Engineer leads to Staff Engineer which leads to Principal Engineer which hopefully leads…
I recently read through a Hacker News thread discussing the article “Kafka Is Not A Database”, by Arjun Narayan and George Fraser. The opinions behind this topic are fascinating and I enjoyed sifting through comments from both sides of the table. For the purposes of this post, I’ve labeled these two broad…