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 engineering
When was the the last time you realized a project was doomed? That time you knew the plug should have been pulled, but you kept things quiet and watched the work painfully fizzle out. If you care enough about the work, you probably have these feelings often. Maybe there’s context…
Software project planning is extremely difficult. In every step of the process—design, build, test, release—a multitude of things will go wrong. For all the senior engineers, team leads, and engineering managers embarking on a challenging software project, here is a cheat sheet of activities to ensure your work runs as…
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…
1-1s are core to management. Ad-hoc feedback delivery, bi-weekly check-ins with your directs, monthly meetings with your skip-levels, annual performance reviews. Their use cases are well-defined and well-understood. 1-1-1s, on the other hand, can be much more interesting. Significant progress can be made if you’re able to get the three…
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…
As a leader, you may have grown accustomed to a variety of conveniences when it comes to communication. You rarely get interrupted during meetings, your ad hoc Slack messages receive prompt responses, and your under-researched opinions influence people more than they really should. Unsurprisingly, not everyone enjoys these conveniences. As…