/Ben Northrop

The 3 Motivational Forces Of Developers tl;dr: “After 15 years in industry, I've come to realize that the most defining quality of a developer is his source of motivation. It undergirds all of his decisions and interactions. It predicts what kind of code he'll write, what technologies he'll prefer, and even how he'll succeed on a given assignment. And it's often quite easy to peg for any given developer after just a few days of working with him or her.” 

featured in #543


The 3 Motivational Forces Of Developers tl;dr: “After 15 years in industry, I've come to realize that the most defining quality of a developer is his source of motivation. It undergirds all of his decisions and interactions. It predicts what kind of code he'll write, what technologies he'll prefer, and even how he'll succeed on a given assignment. And it's often quite easy to peg for any given developer after just a few days of working with him or her.” 

featured in #542


The Ambiguous Zone tl;dr: The ambiguous zone lies between doing what we are told as engineers and doing what we want. If we are given specs that are missing something obvious, should we ignore what’s missing and do what we’re told? “The most effective developers I've worked with understand this, and are adept navigating this zone. They are curious about the perspectives and needs of other stakeholders, and ask good questions. They push back when things don't make sense, but do so tactfully.”

featured in #400


The Fallacy Of Splitting Time tl;dr: "There are two projects, both deemed important by the business, and both need a UI developer. Unfortunately, only one UI developer is available. Why not let the UI developer split time across both projects?" Ben explains why this doesn't work using the equation: Productive Time = Total Time - Overhead.

featured in #326


Code Ownership, Stewardship, Or Free-for-all? tl;dr: How do we best divvy up responsibilities in an engineering team, given the complexities of modern day technology stacks. Ben argues there are 4 things to consider: (1) Optimizing for productivity, (2) Code quality, (3) Risk of a developer leaving, (4) Developer happiness. Once we know how to weigh each, there are several models to consider: ownership, free-for-all, stewardship and conservatorship, all discussed here.

featured in #293


A Better Resume for Developers tl;dr: It pays to cram all the technologies used in a project onto your resume, since that's what job matching algorithms are designed to parse. Ben has designed an interactive resume to present your work in a different way. 

featured in #261


Always Do Extra tl;dr: Completing a project with some time left, you can do "more, extra or nothing," and "reasonably happy developers distinguish themselves by choosing extra" - providing a small, additional, tangential contribution to the project. If you're building a web form, research input security concerns. This provides a sense of "free will" and adds to your knowledge base.

featured in #260


The Myth Of Architect As Chess Master tl;dr: While the rules of chess are consistent, the rules of software are not. To be an architect, you need to understand the specific "game you're in" - the business drivers, risks, technical constraints, integrations, trade-offs, and so on. 

featured in #170