Here at Herrmann International one of our key fundamentals is that we try to "eat our own cooking" and use Whole Brain® Thinking in our own work. This post is part of a series where some of our team members talk about some ways they use Whole Brain® Thinking for their day-do-day work.
This post is by our Lead Software Engineer, Andrew Swerlick.
At first glance, software development might not seem like a job that involves a lot of day-to-day Whole Brain® Thinking. After all, a lot of what our team does seems like it's firmly situated in the technical, analytical A quadrant. Sure, we do have to collaborate with other internal teams on product design, requirements gathering, etc., but when it get to the point where our developers put their fingers to the keyboard and start writing code, all the other quadrants go away, right?
When I first started at Herrmann a couple of years ago, I probably would have said yes. But recently, our development team has adopted some practices that are showing me the value of writing Whole Brain® code.
These changes came out of an evaluation of our code review process. For those who aren't familiar with the concept, code review is a practice that most development teams adopt to help ensure high quality software. It's pretty much exactly what it sounds like: It's a process by which you ensure any code written by a developer is reviewed by at least a one of their peers. The reviewer(s) look over the code for obvious bugs, stylistic issues, clarity and new concepts.
After one of our last development cycles, we had identified some issues with the thoroughness of our review process and decided we wanted to write up some more formal guidelines for reviewers. We thought it might be interesting to try and structure these guidelines in the form of a Whole Brain® Walk-around. We weren't sure if it would really work, but it seemed like an interesting place to start.
At first, I was a little worried that this Walk-Around would be heavily weighted towards the A quadrant, but as I started working on it, I was pleasantly surprised to find that there was a lot of value in reviewing the code in a whole-brained fashion. After a few drafts and some discussion, this is what we came up with.
A disclaimer: Some of the items in the Walk-Around may be a bit technical for those who aren’t developers, but even so, you’ll quickly see how the process itself clarified for us that a Whole Brain® approach can help us think through all the issues and ensure we’re not overlooking anything important.
A:
Focus on what the code is doing and how that aligns with the acceptance criteria, both explicit and implicit (i.e., performance, security, deployability)
B:
Focus on how the code is written. Does it confirm to our various standards (stylistic, security, etc.)? Is it consistent with the rest of the code in the application?
C:
Focus on who this code is for. That means both the end users who will perform actions that touch the code and the other developers who will have to read and maintain it.
D:
Focus on how this code maps to the big picture of the business as a whole. Explore alternative approaches or models, both for the architecture and for individual lines of code.
We've been using this Walk-Around for about a month now, and here’s what we’ve observed:
It's definitely been valuable enough that we plan to keep using and refining it. To me, it's a great example of how Whole Brain® Walk-Arounds are incredibly useful tools that can be easily applied to all kinds of tasks, even those in very specific domains.
We've got lots of resources to make your team more innovative, efficient, productive and happy. Whether it's the software engineering team or some other group entirely, get your copy of the meetings toolkit to make more out of teamwork.