The Magic of Compound Efficiencies in Engineering
LinearB CTO Yishai Beeri lays out the data his team has gathered on compound efficiencies by real dev teams in the wild.
Join the DZone community and get the full member experience.
Join For FreeAs the milestone book Atomic Habits laid out, the key to life-changing habits is adopting one effectively and then layering another desirable habit on top of it.
The same is true for efficiencies in software engineering.
When your team adopts one efficiency, sees it bear fruit, then adds the next efficiency habit on top of it, the result is compounding efficiencies.
In this conversation, LinearB’s CTO, Yishai Beeri, reveals the data on compound efficiencies as experienced by real dev teams out in the wild.
“There are dev orgs that just visit their metrics dashboard every three weeks. That's nice, but that's not enough. That's not going to change behaviors that improve efficiency.”
Episode Highlights
- (2:53) Sourcing the data
- (5:57) Visibility for devs & managers
- (12:15) Improving code reviews
- (19:30) What are compounding efficiencies?
- (21:48) Streamlining the PR process
- (25:52) Results from efficiencies gained
- (33:40) Giving devs back more focus time
- (40:45) How to get compounding efficiencies for your team
Episode Excerpt
Conor Bronsdon: There's a great analogy for how you are improving the efficiency for Dev teams and something we can all understand food. If you ask a nutritionist, what is most effective as a diet for losing weight, they might tell you that all diets are effective in helping you lose weight because they give you visibility into what you're eating and they make you think about it and how much you should be eating. By being conscious of what you're eating and knowing the right amount of food to consume for your activity level, you'll start to move towards your natural balance, and you'll see those opportunities for improvement.
And I know you've said that this can apply to engineering as well. Can you tell me a bit more about that?
Yishai Beeri: A lot of the change that we wanna create, and this could be about our personal lives or about the Dev process, a lot of it is down to human behavior. So changing human behavior is about changing habits.
You mentioned the food analogy, like being aware of what I'm eating or not eating. That's a behavior change. Not like just the awareness, just being, not eating automatically, emotionally eating whatever, or tons of reasons why. Being aware helps me control and helps me improve my behavior.
The same thing happens with development and Dev teams and Dev processes by being aware of the productivity, the inefficiencies, the bottlenecks, by talking about them, by measuring them, by surfacing them, by making them important, and part of what we are striving to improve.
That alone starts to move the needle because if my focus is only on writing the code and I'm not aware of those inefficiencies, those wait times, those idle times, then I may be able to create a great code, but at a level of efficiency, that is not optimal. If I'm starting to think about and live, the pain and the, give it a name, give it a number like the contact switches, everything that is blocking the team from moving faster.
Now I can begin to focus and change behaviors around it. Awareness is the first level, the first layer, of behavior change, and that begins to move the needle.
Published at DZone with permission of Conor Bronsdon. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments