What Developers Can Learn from the Coffee Industry
November 17th | 2016

As a developer, I’ll be the first to admit it: We kind of suck sometimes.

A lot people outside the web development community have been left with some pretty bitter experiences when it comes to our profession. But before I go on about the things we as a community occasionally do poorly, I think we also deserve a bit of credit. 

We have a lot of things to stay on top of. New things happen every single day: new JavaScript frameworks, new ways to store data, new browser features (all of which act differently in each browser)… and a lot of pressure is put on us to build fast, compatible, accessible, “groundbreaking” experiences with each project we touch. This is usually done under some crazy timelines, too. And to make matters worse, most people in other disciplines are unaware of this constantly shifting landscape and the challenges we face. A post recently circulated the internet about how it feels to learn Javascript in 2016. Even if you’re not a technical person, I suggest reading it because you just might empathize with the tribe of people who have been doing this for years.

The quick advancement is definitely an exciting and good thing. However, living in such an environment makes us very susceptible to scoff at anything that challenges our opinion, breaks the consistency of our carefully crafted systems or adds unexpected complexity to our problems. Sometimes this struggle can cause us to become blind to the myriad of work that has happened before we touch a project. The overwhelming number of “moving parts” we have to keep track of can turn our focus away from a sound strategic foundation and instead shift our emotions towards hostility and cynicism.


As a “true” modern Millennial tech-worker, I also worked as a barista for several years and continue making coffee as a pretty serious hobby. With this passion for coffee, I’ve learned a lot about the amount of care that goes into growing, harvesting, processing and shipping good coffee. It’s an immense amount of work with many opportunities for things to go wrong before the coffee gets to a roaster, let alone a barista.

The specialty coffee community has a huge amount of respect for all of the people that handle the coffee leading up to the moment a customer is being handed their cup. Baristas and roasters envy those who get to travel to origin and see the farms where their coffees grow. They actively seek opportunities to listen to the producers to help address their problems. They proudly put the names of farmers on the bags of coffee in their cafes. Some friends of mine have even gone so far as to bring producers from places like Brazil, Costa Rica and Mexico to the U.S. so that they can share their unique knowledge and expertise stateside. That’s the kind of thirst for knowledge, respect and education that exists in specialty coffee.


Unfortunately, I’ve barely seen a glimpse of this in our industry. 

What if the baseline for our passion and respect was at this level? What if developers looked forward to the no-rules brainstorming meetings where early ideas are thrown around (while having to hold back on commenting about execution)? 

Or what if we got excited – instead of sullen and downcast – about taking inventory of an organization’s structure, talking about workshop methodologies — or even debating the exact style of photography used for a new brand? What if people like business analysts and anthropologists were regularly brought in to talk to engineering teams? I think we need to find more ways as a community to grow beyond our trade and consider the totality of all the work that has been done before we get our hands on it.

When you involve yourself at earlier stages and in different disciplines you’ll be able to: a) feel the weight of being at the final step in a long process filled with hard work, and can approach the work with that respect and b) properly communicate problems or alternate solutions to the rest of your team with the context, respect and knowledge that’s necessary for healthy and efficient problem solving.

So let’s work on being more involved and curious. More welcoming than cynical. More accessible at every stage.

Beyond making ourselves easier to work with, I think we’ll grow in our own areas of expertise through this expanded knowledge. And ultimately every project will benefit by the improved communication and environment this can create.

tl;dr Get involved. Respect the work that comes before you. Take every chance you can to learn, educate and possibly even inspire.