The API for Teams

The API for Teams in an IDE

In evolving toward greater agility, we must strike a balance between uniformity across teams and allowing flexibility for process tailored to unique team contexts.

As your organization grows from 2 to 10 to 50 teams, you have to be able to coalesce their delivery queues into an overall picture of what is being developed. However, if you push for too much uniformity, the process is no longer effective for all the types of work that go into developing your product, often to the detriment of quality and timely delivery.

Seeking that balance, I asked myself years ago what is the minimal commonality needed across teams. Coming from a (mostly back-end Java) programming background, I was inclined to express this in terms of an API. I call it The API for Teams.

Read more…

Four Outcomes of Effective Development Process

What should your development process provide?

Have you ever wondered why your team is using its current development process?

If you’re the person facilitating the process, have you ever been asked “Why are we doing things this way?” and found yourself unable to articulate anything beyond process mechanics?

For me, an effective development process is meant to provide four key outcomes beyond merely delivering work. I expect these outcomes irrespective of the methodology, framework, or tools being used. My focus here is team-level development process, but the outcomes certainly scale to the organizational level.

Read more…

The Story of Why I Left Riot Games

Image courtesy of Vladimir Gitlevich

“So this is it. This is going to be the thing.”

That’s what I remember thinking as I left the room where I had just finished a conversation with two female mentees.

I had wondered for some time when there would be an incident serious enough that I had to talk to leadership about unacceptable behavior in the workplace, and here it was.

Read more…

IBM developerWorks Podcast: Barry Hawkins on agile software development

Earlier this year, my friend Andrew Glover interviewed me for season 4 of his IBM developerWorks Java Technical Podcast series (iTunes) on the topic of Agile software development. The episode is titled "Barry Hawkins on agile software development" and runs 41:03 in length.

This was an enjoyable interview; I've known Andy for years, and his style as an interviewer is quite comfortable and flows conversationally. What I really enjoyed about the venue is that it afforded me the chance to talk about software development, the Agile ecosystem, and the primacy of a healthy company culture in ways that I typically do in one-on-one or small group discussions, or talks at conferences that don't get recorded.

Read more…

The Discipline Deficit

I consult with all sorts of companies looking to adopt elements of process and practice from the Agile/Lean offerings. Whether it's Scrum, Test-Driven Development, User Stories, Test Automation, Continuous Integration, Agile Estimation and Planning, Sprint Planning, or Sprint Retrospective facilitation, one challenge pervades across most scenarios. I have come to call it The Discipline Deficit.

Read more…

Is Agile/Lean as good as it gets?

I was recently catching up on episodes of The Java Posse, and came to the one that features an Open Spaces topic I convened at last year's Java Posse Roundup, Should We Shoot Agile in the Head? It was a vibrant conversation with plenty of input from experienced people. At the 49:50 in the recording, D. J. Hagberg posed an excellent question:

"Is Agile[/Lean] as good as it gets?"

I added Lean, since the question really applies to both, their overlap being so great.

The short answer is no.

Read more…

Agile: Your Mileage *Will* Vary

There is one question I can guarantee someone will ask as I begin an engagement with a new client. It usually comes in the second half of the first major session I have, called the Agile Orientation. By that point in the initial training, we have covered the roles and components of Scrum, using it as the primary (and my favored) option for an effective Agile process in most businesses. The looks on at least a few faces at that point let me know that people are starting to process just how disparate their current work life is from what I am describing. One of the more outspoken folks usually asks something like this:

If Agile requires all these things, and we can only implement part of it, is it still worth doing?

The answer is yes, with one caveat. A partial adoption results in partial benefits, so expectations should be adjusted accordingly.

Read more…

Is it just my company that has a hard time with Agile?

After an Agile adoption is underway and the feedback mechanisms of most Agile processes begin to function, one or more team members usually ask me something like the following:

Is it just my company that has a hard time with Agile?

No, it's not just your company. However, don't take comfort in that.

I shared something on Twitter that I think sums up why companies have a hard time with Agile:

Agile practices and processes serve motivated, self-directed teams who work hard. It does not create them. @barryhawkins

Read more…