Who’s Amitai?

I’m an independent software development consultant, coach, and trainer. In nearly 20 years comprising global finance, startups, agriculture, universities, and nonprofits, I’ve managed products, projects, and people; engineered code, tests, and releases; deployed and operated production systems; provided phone and desk support; and listened to, empathized with, and improved the lot of folks in all of these roles. (More about me…)

What’s this “coding tour”?

It’s when a programmer briefly visits several companies to join them in their coding work and to learn from each other. (More…)

I’m on tour June through mid-September, anywhere in Germany — and anywhere else in Europe, schedule and travel costs permitting.

You provide room and board. I mob and/or pair with you for a week. We do it because we both expect to gain. That’s the whole deal!

What’s it like to code with Amitai?

Enormous value to me. Helps my thinking, helps my energy, helps my code.Michael “GeePaw” Hill

Great. Very insightful comments.Alistair Cockburn

Love his open, interesting approach to problem-solving during coding. I can’t even describe it. It’s just inspiring.Jim Holmes

His focus on the “real” goals and value, and his ego-less way of working through a problem, made all of it possible.Nathan Arthur

How can I form my own impression?

Got 15 minutes or an hour to listen? Prefer reading? Need to see for yourself?

Listen to these episodes of Agile in 3 Minutes in this order: Effect, Retrospect, Wrong, Care, Surprise.

My interview responses for WeDoTDD were given on behalf of my then-employer, but remain very much my answers. I still stand by them.

How good is Amitai’s German?

Meine Ersten Farben

I understand some. I pronounce better than I understand, understand better than I speak, and speak better than my son — for now! — to whom I’ve been reading books like this.

Let’s prefer English, while also not worrying too much about avoiding German.

How do we invite Amitai?

Who else has gone on tour?

Lots of programmers. Here are just the ones I’ve gotten advice from:

Related: as of this writing, Lisi Hocke is on a testing tour (all posts).


I owe gratitude to lots of folks for helping me design and implement this coding tour. In particular:

  • Sal Freudenberg for her recent UK tour, my source of inspiration to do this
  • Llewellyn Falco for ideas about the format, based on our recent pair coaching
  • Nicole Rauch for the majority of the encouragement, advice, and local industry contacts I’ve received
Posted April 23, 2018 at 12:48:38 AM EDT Tags:

After two years of ruing my inability to attend the Mob Programming Conference, last week I finally made it. It was simultaneously everything I hoped for and exactly what I expected: the hybrid vigor of a conference crossed with an unconference, and the generalizable learning that only comes from concrete experiences.

Mob programming is one of my favorite techniques. (For more about it, listen to Agile in 3 Minutes #32.) I learned it with Pat Maddox and Woody Zuill in 2014, have used it frequently in my consulting ever since, and treasure my occasional opportunities to simply be in a mob. The Mob Programming Conference’s 1.5-hour sessions were designed to maximize those opportunities. Woody likes to say mob programming is “All the brilliant minds working on the same thing at the same time on the same computer”; at every session of Mob Programming 2018, I saw brilliant people every time I looked around the room.

Turns out Lennart — my “brother from another mother”, as he put it — was able to give me some older-brother advice on my upcoming coding tour, because he went on tour in 2015. Now I have a better plan. Look for an announcement next week.

A week on, both of Lennart Fridén’s sessions have stayed with me. One was about solving problems in a fictional assembly language, where nobody’s an expert and we all have to learn together. I came in late, so I had even less information than everyone else, but within a few rotations and a few questions was able to make myself useful, and by the end had roughly the same working understanding as everyone else. If you’ve mobbed before, you’ve likely seen and felt this convergence of shared understanding. Lennart’s session was designed to highlight it.

His other session invited a few volunteers to role-play unconstructive mobster behaviors, then opened to group discussion about how we might overcome them. As one of the improv actors, I found it disturbingly easy to behave badly in a succession of audience-specified ways. I may have had slightly too much fun doing it, but I think my acting supported the session’s intended learnings, and if not, Lennart’s facilitation skills made it so. I guess if the tech coaching well ever runs dry, I can always take my talents to Silicon Valley:

My new calling: disruptive bullshit

In addition to seeing lots of old friends, I got to meet face-to-face with some folks I’d thus far only gotten to appreciate via Twitter. One of them, Lisi Hocke, wrote about her experience moberating two sessions, along with vivid details of her participation; read it and you’ll almost have the feeling of being there. With a little luck I’ll return to the Mob Programming Conference next year, perhaps as a moberator.

A conference that took me five years to return to was Software Craft[smanship] North America. The 2013 SCNA in Chicago brought me into a community of shared values I didn’t even know I was missing, and nudged me to make a significant career change. I can’t imagine how any subsequent SCNA could be as personally momentous, but at yesterday’s event in midtown Manhattan I enjoyed getting to know some 8th Lighters over lunch, to run into one of my Problem Solving Leadership cohort (and meet his whole company!), to ask Joel Spolsky a pointed question about Stack Overflow culture, and to feel for a multitude of reasons that my professional and personal homes — coaching and New York — are finally neighbors.

Sure is good to be here.

Posted April 20, 2018 at 02:57:23 PM EDT Tags:

Thanks to the power of the internet you can buy me a fancy coffee, but I’d much rather treat you, dear reader, to the beverage of your choice — in person. Here are some upcoming chances for us to do that:

(I’m considering Codeland, also in NYC. Let me know if you’re going.)

Another way is for us to work together. I’m available for consulting, coaching, or training, mostly in the New York metro area.

In Europe? You’re in luck! This summer I’ll be doing a coding tour, speaking at a few conferences, and consulting (mostly in Germany). More details forthcoming.

Might we meet and/or work together?

Posted April 2, 2018 at 01:34:53 PM EDT Tags:

A few weeks ago, I returned to work. A friend and fellow technical coach graciously invited me to his client to pair-coach for a week and solo for another. Since Bekki and Taavi were able to travel with me on this occasion, it was easy to accept.

Taavi's first Residence Inn (since being born)

I would strongly recommend that anyone, given the option, return to work in this particular way. I feel very lucky to have been given the option. My friend designed the guest-coaching environment at his client for my time to be meaningful to them — and, therefore, to me. It was an honor to be there. And it’s more wonderful than ever to be home again.

Meaningful for others

Clients typically invite me in because they want technical coaching.

I’m happy to accept. I enjoy programming with programmers, testing with testers, and managing with managers. I join in the work, observe where we’re going, and offer techniques and habits intended to help us get there. Along the way, we talk.

My recent two-week engagement has clarified for me once again that my impact typically stems from (most to least):

  1. One-on-one conversations
  2. Group conversations
  3. Anything involving computers

There’s a big gap between (3) and (2). Whereas techniques and habits are hard to change and slow to pay off, conversations can quickly strengthen human connections, bring instant insight, and improve conditions for further improvements.

Given I’m just visiting
When I’ve done my job
Then the folks involved feel more effective doing theirs

Clients are typically happy to have had me as a technical coach. It gets me close enough to have meaningful conversations.

Meaningful for me

Taavi falling asleep in the car

My son is eight months old. It’s been very special having so much time with him. I’m motivated to keep it this way.

I’m 39 today, and feeling reflective.

Today, I’m pleased to announce that I’ve gone independent.

Meaningful for you

You can engage me directly for consulting, coaching, or training in the New York metro area (and very occasionally elsewhere). We’ll design an environment for our time together to be impactful and valuable.

To learn more about what I can do for you, take a quick look at my one-page résumé and my coaching bio. Or a quick listen to my three-minute podcast.

Or just get in touch and let’s talk:

Posted February 9, 2018 at 06:47:48 AM EST Tags:
Photo by Steve Moubray
I peek at one group's BDD scenarios

At the Agile Coaching DC meetup tonight, about 50 people participated in my “Behavior-Driven Development for Everyone” exercise. The abstract:

Problems are better solved when you’re better involved. That’s how you make your living, and that’s what BDD is all about. We’ll work together to solve a problem in a way we can all understand and trust, expressing what we want in plain English and automating our tests with a tool called Cucumber. Don’t worry, you won’t be put on the spot at the keyboard — I’ll handle all the coding!

What we did

My goal was to illustrate two things:

  1. Cucumber the tool: side-by-side-by-side, how the three ingredients — the human-readable Gherkin spec, the programmer-readable step definitions that animate the spec, and the code being developed to meet the spec — are connected, or might fail to be, and how they must evolve together.
  2. BDD the practice: side-by-side-by-side, how the Three Amigos — Product Owners, Testers, and Developers — are connected, or might fail to be, and how they can collaborate via shared language (and optionally a tool like Cucumber).

To that end, after reviewing a few slides, I live-coded the first few bits of Gherkin, step definitions, and application code, using Cucumber in Perl. Then we split into a few groups to slice and sequence the remaining scenarios that add up to a properly scored game of bowling, and got back together at the end to compare results. Our findings are in the slides.

Here’s video of the first half:

And here are organizer Steve Moubray’s photos of the second half.

Read more

In addition to the references in the slides, here’s a story of my own about seeking greater effectiveness through BDD, from my series about the human value of TDD.

Learn more

What would BDD look like in your context? Need help getting started? Get in touch! I’d love to work with you (especially in the New York metro area or remotely) or refer you to an expert hands-on instructor near you.

Posted January 18, 2018 at 06:30:00 PM EST Tags: