Skip to main content

About jbrains

J. B. Rainsberger, sometimes called "jbrains", wants to help any software development professional find more peace on the job. He tends to help technical leaders, whether CTOs under pressure to "change the culture" or informal leaders struggling to improve how things work around them.

Programming Is the Easy Part

Well... maybe not easy, but computers are much more likely than humans to do what you tell them to do. And when it comes to how to do the job of shipping features to customers, we might disagree on the details, but it doesn't take more than a few years of arguing to realize that it helps to notice our mistakes very soon after we make them and to have code that isn't expensive to change safely and accurately. The techniques we need to achieve these goals are well-understood, well-studied, and simple to learn. (And this is why I continue to teach evolutionary design techniques, such as refactoring and TDD!)

The hard part comes when we try to do these things on the job.

Not People Problems, Exactly...

You've probably heard that "No matter what the problem is, it's always a people problem." It can be easy to interpret this as "people are the problem", but I'd rather interpret it more like this: no matter what else we do, code will be written and people will be involved. (And yes, there are people working on taking people out of the equation, but I don't like their chances.) I think of it like this:

If all you do is try to install a technical solution, you'll find out before long that that isn't enough on its own. You will eventually need a solution that treats the people as people.

This is where I help. I guide technical leaders through the challenging transition from pretending that purely technical solutions will make everything better to placing our shared humanity at the center of our collective work. And this is not touchy-feely nonsense. It's not about trust falls and teamwork retreats in the park. It represents a shift in thinking and action towards cultivating change that really works and truly lasts.

How I Help

Advice Without Blame

Break the cycles of frustration and blame that makes progress unlikely.

Adopt Effective Practices

Changing how you work in ways that resist the tendency to snap back to 'normal' when managers stop looking.

Compassionate Change

Concrete steps that lead to progress, rather than empty platitudes and sound respectful but ultimately don't change anything.

Leadership That Works

The support you need as you make peace with the limits of your authority and guide others through their own turbulent change.

Influences

This quick list of ideas and people might give you an idea what to expect from working with me. If you'd like to learn more, then read a few articles to better understand how I use these ideas in my work with clients.

Gerald Weinberg Leading Without Blame Theory of Constraints Evolutionary Design Autonomous Motivation Resistance As a Resource Virginia Satir Thinking Partnership The Five Dysfunctions of a Team Egoless Programming

Further Reading

Read articles about both the technical and leadership aspects of delivering software as a job. These articles are not only helpful, but they also give you a slightly clearer picture of how well we would work together.