What World-Famous BBQ Taught Me About Software Development

Franklin Barbecue is one of the best-regarded barbecue spots in the country. A few years back, my wife and I took a trip to Austin, with one goal being to get some of the world-famous smoked meat.

Like a lot of best-in-class spots, one doesn’t merely walk in and get some food (I’m looking at you, Tartine!). On any given day, hundreds of people have a similar idea to you, so you’ll end up waiting. Potentially a lot.

On the day we went to Franklin, we showed up around 10:00 am, an hour or so before they opened. Already there was a line that would have easily wrapped the whole building. We got in line behind some Austinites who were there for someone’s birthday and were soon followed by some fellow tourists from Wisconsin. Obviously, this was not a new phenomenon: there were public restrooms in the parking lot, staff circled through a few times to sell beer, and the truly prepared visitors had brought lawn chairs and coolers. It was smart planning: we didn’t even get in the building until 1:45 pm. We waited for about four and a half hours in total.

The barbecue was great, as you might expect. At the time, the wait was a thing we went through to get to the barbecue at the end. But since then, I’ve really come to appreciate how much more that experience meant to me because of the wait. The journey and the struggle created a sense of anticipation and drama that amplified the whole thing. Again and again, since then, I’ve seen parallels at work that remind me of what turned out to be a much more meaningful experience than I’d ever anticipated.

1. The Lows Amplify the Peaks

While Franklin did everything you might expect to make the wait bearable, it was still a long wait. There was boredom. There were sore feet. But that stuff has faded away with the years. What stuck with me was the anticipation that built during that time and the sense of excitement when we actually got the damn food.

The funny thing is, Michigan has a decent barbecue place — Slow’s, which I love. When I eat there, I don’t feel like I’m missing out all that much. (I feel much the same way about Field & Fire as compared to Tartine.) But there’s no wait. No wait’s convenient and all, but without that build-up and anticipation, it’s just not the same experience.

I’ve noticed the same phenomenon in the projects I’ve worked on over the years. Many projects are mostly frustrating or boring or stressful. But those negative elements don’t stand out so much in hindsight: if anything, they make the wins you had on those projects all the more memorable. In times when things aren’t going so well, I sometimes think of that line at Franklin and find it comforting.

2. Trial Strengthens Relationships

The people in front of and behind us in the line at Franklin were super nice. The Austinites told us about living in the city and the last time they came to Franklin. We chatted with the Wisconsinites about our time living in Madison.

Five years later, I remember neither the names nor the faces of those people. But I remember the experience, the camaraderie, and the conversation much better than just about any batch of small talk with strangers in about ten years (with maybe the exception of the urban planning consultant I chatted with in San Francisco — outside Tartine).

The same thing is true — actually more so — with the relationships that have come out of software development projects. While the people I’ve worked with at client companies have been in similar time-bounded contexts, I ended up developing a sense of appreciation for each of them. We may not have had much in common, and most of the relationships faded with the completion of the project, But we struggled through doing something difficult together. I’m enriched by having known and worked with those individuals.

3. Support Customers Through Frustration

In a service industry… sometimes your customers just have to wait. They may be frustrated. They may get angry and a little rude. But sometimes there’s nothing you can do: 200 other people got there for barbecue first, and the code won’t just write itself. Maybe the best you can do is offer beer or soda to those who want one.

It’s easy to forget that this is your everyday reality, and your customers may have never gone through something similar. Waiting five hours for fast-casual barbecue? Struggling through a nine-month software build-out? Both are well outside of most peoples’ everyday experience, even if you’ve been through the same thing many times before. Do what you can to make things easier for them, and they’ll appreciate it in hindsight, if not adequately in the moment.

At the end of the day, working at a software consultancy and a barbecue restaurant have a lot in common — your goal is to leave your customers satisfied that you did everything in your power to give them a good experience. Sometimes “good” is shaped more by the realities of their problem than their ideas about an ideal experience, but you do what you can. It may not be exactly what they expected going into the experience, but that can turn out to be a more memorable and rewarding experience than expected.