hiring Moving Fast in Hiring Gives You an Edge Streamlining your hiring process is a source of competitive advantage. Measure it, and improve.
curated-content Curated Content June 2021 A few pieces of content I thought were worthwhile in the month of June.
architecture Volatility and Software Architecture Change is the only constant. But without further framing this particular truism isn’t very useful for informing how you ought to architect your system.
continuous-integration Shifting Compliance Left with Licensed and GitHub Actions Ensuring compliance with open source software licensing can be challenging for software engineering leaders, but there are great tools available in open source that can help you to get started.
programming Featured Finding Collective Ownership of the Codebase Code is not mine, it’s ours. Through that our code is mine. There's something incredibly harmful about an individual owning a piece of code. When I say owning a piece of code I mean they feel like they have a right, above and beyond the rights of
management The Water Cooler Outside Time and Space People usually worry about recreating the serendipitous water cooler talk in a remote context. In fact Marissa Goldberg (@mar15sa on Twitter) has a great thread about this very topic. It's an important and worthwhile consideration as a leader. Today though, I'm going to turn the issue
curated-content Curated Content May 2021 A few pieces of content I thought were worthwhile in the month of May.
programming Writing Code as if Deep Work is Impossible If you work in your own office, and regularly have uninterrupted stretches of deep work, congratulations, you and your organization are doing many things right. But consider for a moment if that’s the situation for everyone on your team. And then consider if it’s likely to stay true
productivity Pomodoros vs Deep Work The COVID based home office can be a hotbed of interruptions. Your kids and partner feel like you’re around, so they can just drop in real quick to ask you a question, or for a quick hand. And feeling like you’re chained to your desk for 8 hours
engineering-management Nothing's on Fire... So Now What? So you've done it. No more fires. You're the dog that has caught the car that you've spent so long chasing, you didn't know what you'd do when you finally caught it. You can start to feel like you'
startups Strategic Planning as a Pre-Product, Pre-Funding Startup Or: Pick a north star and start moving that direction
engineering-management Can Your Team's Velocity Be Too Fast? Velocity as measured by frequency of deploys can be too fast. How to address that depends on the causes.
curated-content Curated Content: April 2021 A few pieces of content I thought were worthwhile from the month of April.
engineering-management Killing Momentum with Good Intentions Today's story is a story about failure on my part. One of the joys of being an engineering leader is mentoring and guiding folks towards new shared best practices, mental models, and design patterns. One of my teams had been incrementally delivering a mission critical set of features
pull-requests What's in a Code Review? What's in a good code review? Where do you start? There are so many different angles we can take this one, depending on the goals of the organization and the team. Let's start by laying some groundwork. What can code review get us? * Increased Code Quality
learning-rust Learning Rust I've written before about the advantages of being a polyglot programmer, but it's been a bit since I've really been excited about learning a new language. Rust has changed that recently.
fundamentals Don't Rush Your Current Work At work it can often feel like you need to hurry up and crank out the current piece of work. And so you think, maybe I'll just cut corners a bit. I'll just skip writing those tests. Or I'll just skip refactoring the code
engineering-management Reviewing Code Reviews Reviewing your team's code review is an often under-leveraged tool you can reach for as an engineering manager in order to improve the efficacy of your teams' code reviews. (That and instituting a code review playbook, but I'm assuming you've done that.) Don&
fundamentals Breaking Down a Piece of Work When you have a large task to accomplish, how do you approach it? Do you start with data modeling? Do you start with diagramming communication between related services? How do you decide what to do first so the rest of it can be built on top of a foundation? One
curated-content Curated Content: March 2021 A few pieces of content I thought were worthwhile in the month of March.
pull-requests 9 Common Pull Request Failure Modes 9 ways to get pull request reviews wrong, and how to fix them.
engineering-management Reinforcing Stream Aligned Teams Supplementing stream aligned teams while sidestepping classic engineering management blunders.
programming Expanding Your Horizons as a Polyglot Programmer Learning multiple programming languages and putting non-trivial projects into production using those new languages has been one of the most powerful tools for me personally to expand my abilities as a software developer. It will help you to do the same. Why? Exposure to new ideas, paradigms, and ways of
fundamentals You Have a Personal Software Process You probably haven't thought about it, and you almost certainly couldn't articulate it to another engineer.