Article

Brainstorming on DevCouch

Dev Couch Blog Cover

The reason we love working in collaboration so much at Edenspiekermann is because we believe that being a team is being more than the sum of its parts. We think together. We design together. We create together. And we deliver together.

For this reason, we have what we like to call “the DevCouch”. DevCouch—short for development couch—is a weekly meeting for the development team in our fancy couch area. Every Monday at 5pm sharp all the developers, whether front-end, back-end or even (gasp) design-minded, gather around the sofas and get ready for one hour of entertainment.

Preparing a session

At ESPI, we rely heavily on Slack for internal communication, and we have a channel specifically dedicated to DevCouch. During the week, but mostly on Monday, we start discussing topic ideas to bring in for discussion.

We also have an internal GitHub repository, essentially used as the issue tracker, where we post ideas, comment, assign and basically continue the discussion throughout the week. Our goal is also to keep track of what has been said during a DevCouch session, so that a new team member can go through our notes on a specific topic on GitHub.

Dev Couch Blog 1 Screenshot of the internal ESPI GitHub

Anatomy of a session

As far as I can tell, no two sessions are ever alike.

Sometimes we go through a few topics quite quickly as they don't necessitate lengthy discussions, such as introducing a new tool we discovered during the week, or reminding ourselves to stick to this or that best practice.

Sometimes someone gives a longer presentation on a specific subject, like how to properly handle caching on Ruby on Rails, or how to get started with Gulp workflows. To support that, we have an Apple TV that we can connect to with Bluetooth (as you can see from the picture). Ideally, we’d like a larger screen, but we make it work. :)

Sometimes a lucky developer who has had the opportunity to attend a conference will give us their feedback on the event, and go through their notes of the talks so we can all get something from the experience, even if we weren't there.

And sometimes we have endless arguments about what’s the best way to handle git branching or code reviews. Let’s be honest and say that from time to time, we end up stuck in a battle of opinions that is not quite as constructive as it should be. ;)

Debriefing a session

After an hour (but sometimes more), we call it a day and leave the couch (or at least most of us). Right away or the next day, we clean up our issue tracker by closing approached topics. We add relevant information, explanations and links so that anybody can come back to this and get what they are looking for.

And then, one week later, we all head back to the couches together—as I said, we grow as a team.