With a little bash scripting, a modern reverse proxy like Traefik, and Docker Compose, we can put together a fairly robust and simple approach to zero-downtime deployment. Moreover, this approach is flexible and scalable, even for dynamic container backends.
There's an old saying regarding the difficulty of learning the Japanese bamboo flute, known as the shakuhachi, "It takes three years to learn to shake your head." This is in reference to the difficulty of mastering even seemingly simple techniques. The only way around this is to make small progress, through practice, each day. This is applicable to any craft we might seek to master.
Vercel's hefty price tag promises to be worth it if the developer experience and product hold up. But in my recent experience, the product and especially customer service, do not.
Investment in people is absolutely essential to building a business that's not just getting by but actively thriving. People-first leadership offers an approach which consistently cultivates an environment where folks can show up and do their best work, propelling the business forward in ways that are otherwise almost impossible to replicate.
In developing software products, we're often accustomed to prioritizing incremental delivery. This is usually a good way to mitigate the risk of working on the wrong thing. However, sometimes our problems don't fit neatly into accretive methodologies and we need to consider other ways of driving value.
One-on-ones are an important resource for both managers and individual contributors. However, it's easy to misuse them and squander the opportunity altogether. Let's explore how to get the most of out of these meetings by turning them into high-leverage touchpoints.
Magic: The Gathering, poker, and business strategy all have something in common: they're vulnerable to a cognitive bias known as results-oriented thinking. But to optimize for success, we should avoid this bias and strive to replace it with sound strategy.
Coming to engineering management as a discipline requires a completely fresh set of skills. A common mistake is to assume that our previous expertise will make this transition seamless. In reality, it's important to recognize the need to shift mindsets entirely.
When does something become valuable to someone else? I've struggled with this question, hesitating at times to share unfinished work because it hasn't reached a level of polish that satisfies me. But the truth is, our unpublished work has no value to anyone.
I've always had a strong inclination towards action: if something isn't working or about to break, I feel compelled to jump in and lend a hand. However, sometimes that's a leadership blunder which does a greater disservice to the longer view of things.
AWS costs are tricky: they can grow in seemingly unbounded ways and often represent significant portions of our engineering budgets. However there are techniques we can use to get them under control and even reduce overall spend significantly.
Crafting effective update emails to a wide audience can be challenging, but by examining the components of a well-structured email, we can bridge the gap and ensure effective communication.
Data is a powerful tool that can have an outsize impact on how we develop products and operate our businesses. That said, the value of data is rarely the data itself but instead the insights we derive from it. In order to ensure these insights are meaningful and impactful it's important to ask the right questions.
Platform Engineering offers a unique value prop to engineering orgs by focusing its attention on the holistic system. This in contrast to and in direct support of teams which focus on a narrower domain. In doing so, platform teams elevate and accelerate the work of their peers and drive exceptional business value.
Leverage is a powerful tool that applies to many things, including the code we write. However, tech debt like all leverage, comes with interest payments. How do we know when to start spending bandwidth on addressing it? We'll look at a framework that can help us ensure we don't reach a point of insolvency with our codebase.
There's a secret when it comes optimizing growth: it's about doing our work in public. But there are barriers that can make this difficult or even impossible. Here's how we build a culture that enables building in public.
You're a soloprenuer building a SaaS in 2023. What does your ideal tech stack look like? There's a few things that make indie development different and we should design our stack around our unique goals. Let's explore an ideal web stack we can build the future on.
Hiring is hard and your broken pipeline is making it harder. But with this simple framework, you can dramatically improve your odds of hiring exceptional software engineers.