Velocity defeats itself. Get acceleration instead
what a spherical cow can teach us about task prioritization in software teams
what a spherical cow can teach us about task prioritization in software teams
When you want a simple utility function that isn’t part of the standard library, what do you do? A. Find a library and use itB. Write the function and add it to an internally shared collectionC. Cut and paste from StackOverflow I’ve done all three in my twenty years of development, and I’m here to … Read moreimport { utility} from StackOverflow
A viable system continues to function in a changing environment. We want our companies—and some teams—to be sustainable this way. How does your team contribute? Does your team have all the components of a viable system… and should it? Stafford Beer (1926-2002) coined the Viable Systems Model (VSM) to describe what it takes. A Viable … Read moreThe Viable Systems Model, and where my team fits
Are we succeeding as a software team?Well, if our job were feature delivery, we could look at the parade of JIRA tickets in our “complete” column. That is only part of our job, though.The purpose of a software team is to provide valued capabilities to customers, internal or external. To do that, our software has … Read moreFive Measurements You Should Make and Then Ignore (Plus One to Watch Intently)
Can you see a pattern in these examples? SendGrid sends emails for you. You provide it with a webhook URL. It uses the webhook to “call you back” about what happens with those emails, like when they are dropped because your request was invalid. On AWS, you need to listen to an event bus if … Read moreEvery SaaS Integration needs an Upstream Point of Contact
We get better decisions by forming a shared (overlapping) understanding. We do that with participation from everyone who changes the software.
Have you ever been on a really good software team? There’s this feeling of connectedness, of shared purpose. We know what we’re building, and we are skilled at building it together. This kind of team can grow some amazing software. When we work at making our team great like this, we look for new ways … Read moreSoftware development pushes us to get better as people
At my first real job, around the turn of the millenium, software engineers were graded on a bell curve. On a scale of 1 to 5, most people should get 3s, with a lower number of 4s and 2s and a much lower number of 1s and 5s. The bell curve, also called the normal … Read moreSymmathesies follow a power law, not a bell curve
As a software engineer, what is your job? and what is your value? On many teams, the work is “add features to this codebase.” We congratulate teams for moving JIRA tickets from “defined” to “delivered.” Meanwhile, the value to the business depends on value to the customers, or to people or software who in turn … Read moreProduct teams own capabilities, not (only) code.
TL;DR: When different parts of an organization need to coordinate, it seems like a good idea to help them coordinate smoothly and frequently. Don’t. Help them coordinate less — more explicitly, less often. Software systems get big, and they have lots of parts, and those parts need to talk to each other. Maybe we’re building … Read moreBetter coordination, or better software?