As Carbon Five grows, we experiment with different ways to define, elaborate, and communicate our company culture. One thing we do is organize semi-annual retreats, we call them summits, that rotate between our two main offices in San Francisco and Santa Monica.
These events are, first and foremost, about people. They are a way for our employees to establish a more personal connection with each other even though our offices are geographically separated.
The summits aim to be fun, light hearted, and not take themselves too seriously. We aren’t looking to hand down a set of values, guidelines, and rules that Carbon Five employees must follow. Instead we encourage people to discover and define our shared values by talking with each other: What is going on in the different offices? What is emerging across our design, development, and product management practices? What are the things that make coming into work every day enjoyable and inspiring?
We’ve been organizing company retreats for three years now. We thought it was time to share what what’s worked and what we’ve learned.
Get Out of the Office! Actually, go off the grid!
Ok, probably nothing that extreme, but we do find it helpful to get out of our normal surroundings. If possible, head somewhere with no wi-fi and no cell reception. The change of surroundings and lack of distraction is great for encouraging people to start conversations and connect with each other.
However, don’t make it impossible to get reconnected to the world. Even though we’re not asking people to disconnect for longer than an all day meeting, its comforting to know that connectivity is within reach for people who need it.
In the past, we’ve held summits at The Marin Headlands Center for the Arts, The Annenberg Community Beach House, and The Log Cabin
Provide Some Structure
From that first point it might sound like our summits are totally unstructured. However, gathering a group of people around the vague notion of “communicating” or “building relationships” can feel daunting, so we try to provide some kind of agenda for the day. We’ve tried many different approaches, from unconference style events organized around a theme to a day of talks proposed by our employees.
Find Out What People Are Already Thinking About
Figuring out what to talk about during a company offsite doesn’t have to be a lot of work. The people at your company already have professional goals and interests. Ask them what they’d be interested in talking about with the whole company. Is there a topic they’d like to learn about? A coworker they’d like to hear speak?
One thing that hasn’t been effective is asking people to give a presentation. Presentations are a lot of work. While we give employees time at work to prepare, crafting a new piece of content can still be overwhelming. And public speaking isn’t for everyone — not everybody enjoys it nor is everybody a natural on the stage. It can be demotivating and exhausting (for speaker and audience) to sit through a day of lackluster presentations.
Instead, we’ve explored alternatives that make it easier for everybody to participate:
- Do rounds of lightning talks. They’re short (5 minutes), don’t take long to prepare, and don’t require a lot of public speaking skills
- Organize moderated discussion groups. Often you’ll find that people are interested in a larger, less understood topic. Ask somebody to gather a set of questions and pose them to the group to discuss. Take advantage of your company’s collective knowledge to start figuring out how to approach this topic!
- Run an organized activity. If somebody in your company is experimenting with a new process, ask them to lead a workshop where everybody can try it out. This is an opportunity to both practice this new skill and everybody else learns something new.
- Invite a group or a speaker to come and run a workshop. Maybe your company is interested in diversity, or how to improve communication. This is a good opportunity to have an expert come in and share their perspectives.
We’ve tried all of these things at different summits. We’ve taught workshops on developing an experiment plan for your website, invited Code2040 to help us start talking about our diversity goals, and had lightning talks on a diverse array of subjects ranging from building your own keyboard to visual thinking.
But Don’t Provide Too Much Structure
We find that most of the value in our summits comes from people talking, forming relationships, and discovering similar interests, motivations, and goals. New projects and initiatives may be born out of this social time. So don’t provide too much structure. Instead:
- Set the start time later than your normal work day. Serve a light breakfast and let people ease into the day. Allow time for people to catch up with others they don’t get to work with regularly.
- Make the lunch break long. Encourage people to relax or take a small adventure (like a hike) during this time.
- Take an afternoon break. Give people a moment to digest the structured time you’ve set up throughout the day.
- Plan an evening activity. This year we went bowling!
Introduce New Faces
As more people join Carbon Five we can’t rely on everybody being introduced to each other organically. We’ve had to think of ways to facilitate people meeting each other. Make these introductions fun and memorable.
This year, we arranged a game of Family Feud. Two teams of new Carbon Fivers tried compete to name the most popular responses to survey questions about popular long running debates at Carbon Five.
Work on a (not work) Project Together
While talking is great, we find that taking some time to do new things together is good too. One way we do this is through a time bounded challenge. We form small cross functional teams and work on a fun project that lets us explore new technologies and ideas.
We want people who work in different offices to form teams together so they can build an in person bond. This helps us work better together the rest of the year when we’re remote. There’s a light hearted competition for a prize, but its mostly tongue in cheek. In fact, we encourage teams to share what they’re doing, bounce ideas off of each other, and help each other out if they get stuck with a new technology.
This year we formed seven teams and gave each a tessel. We asked each team to focus on making something that addressed education, transportation, or climate. The creativity displayed by each time was inspiring.
Take a Moment to Talk About What Worked
When the summit comes to an end, we ask everybody to take a moment and reflect. People share what they liked and what they wish would be different next time. We solicit this anonymously. The feedback we receive is thoughtful and helps us tune what works and dump ideas that didn’t live up to our expectations. Best of all, people always walk away from the summit with more camaraderie and a few new things they can try in their normal day to day work.
Establishing a healthy company culture can be difficult because it is fluid and defined by relationships amongst (often) shifting groups of people. We do our best to nurture a consistent, yet necessarily bottom-up culture here at Carbon Five. For us, summits are just one component of culture building that provides space outside of the normal work day to facilitate building genuine relationships between our employees.
As a full-stack software consultancy, we at Carbon Five get lots of questions from clients past, present, and future. We’re passionate about sharing our industry knowledge, so we sat down with our leadership team and got some advice for aspiring founders and product leaders as part of an ongoing 6-part series. We began our series with some practical answers from Partner and COO Don Thompson, in part two we asked Partner and CEO Mike Wynholds to tell us how it all comes together.
Here, we sat down with Courtney Hemphill, partner and technical lead, to give us some insight into keeping your startup lean and functioning smoothly.
How can I find great developers to hire?
There are a couple things that I’m seeing right now that I feel like are smart plays to finding great developers. I think great developers are not people that are created in 12 weeks at a Bootcamp, I think they’re people who are really interested in solving problems, and they’ve just found that their modus operandi for solving problems happens to be in code. The equivalent holds true for design. They’re just solving problems through a visual experience versus code. Finding those people is what you want to do. That doesn’t really answer the question though so I would say that code languages are something that people get really interested in. Meaning that new languages are coming out and each of those languages can solve specific problems.
I think great developers are not people that are created in 12 weeks at a Bootcamp, I think they’re people who are really interested in solving problems, and they’ve just found that their modus operandi for solving problems happens to be in code. The equivalent holds true for design. They’re just solving problems through a visual experience versus code.
Continue reading …
As a full-stack software consultancy, we at Carbon Five get lots of questions from clients past, present, and future. We’re passionate about sharing our industry knowledge, so we sat down with our leadership team and got some advice for aspiring founders and product leaders as part of an ongoing 6-part series. We began our series with some practical answers from Partner and COO Don Thompson, and in part two we asked Partner and CEO Mike Wynholds, to tell us how it all comes together.
How healthy is my codebase? Can I rewrite it, or can it be nursed back to health?
A hundred percent of the time, your codebase can be nursed back to health. In my experience, ninety-five percent of the time, that’s the path you should take. This is making one assumption, that there’s a product already built and in use. The bigger the codebase, and the longer it’s lived, the more likely that it has features or bugs or whatever, pieces of code that are in use, that people are relying on, but nobody knows about at the company. So whenever you talk about rewriting a codebase to be the same as an existing codebase, you are opening yourself up for a world of pain because it’s very likely that there’s nobody in the world that exists who knows all of the requirements. If you ever decide to rewrite a codebase, you have to start from first principles and say, “We have to start from the very beginning and define what this new product does, and as a basis, we’re going to use this old product, and we’re going to say this is our starting point.” The same way if a client came to us with wire frames and said, “This is what I want,” we’d say, “Well, we’re going to use this as a starting point, but we’re still going to go through our personas exercise, and our experience map, and our story mapping, and our story writing, because we need to understand all that in order to build this product.” If you can do it that way, then rewriting is actually completely doable. I’ve discovered that even though it can be a lot of work to nurse a codebase back to health, if the functionality is there and fulfilling the needs of the users, then to continue to fulfill the need of the users without any interruption, you gotta nurse it back to health.
A hundred percent of the time, your codebase can be nursed back to health. In my experience, ninety-five percent of the time, that’s the path you should take. This is making one assumption, that there’s a product already built and in use.
Continue reading …
Have you ever worked on a team that went off the rails? Product teams need lots of support to run efficiently. You need to move fast, but you also need to be aligned in order to build successful products. Here are a few activities we use to keep our teams moving. We often facilitate them in Stickies.io, a product we built for collaboration, but any of these activities could also be done using analog sticky notes.
When you need to generate ideas
We like to structure brainstorming sessions to help get the entire team working together towards a unified goal. We set a timer for 3-5 minutes to challenge ourselves to think fast and broad. Then, we review the ideas and do another rapid round, with 2-4 minutes this time. Finally, we give all team members 3 votes and prioritize our ideas based on votes. The sequence looks like this:
- Introduce the goal of the brainstorming session
- Run rapid rounds.You can run as many as needed. We typically reduce the time set as we go and build off of each other’s ideas.
- Set the timer for 3-5 minutes
- Individually ideate on post-its until the timer goes off
- Let everyone describe their top 3 ideas
- Give everyone 3 dots and ask them to vote on three ideas to explore further
- Arrange ideas by votes
In person, we use post-its, sharpies and sticker dots:
Continue reading …
As a full-service software consultancy, we at Carbon Five get lots of questions from clients past, present, and future. We’re passionate about sharing our industry knowledge, so we sat down with our leadership team and got some advice for aspiring founders and product leaders as part of an ongoing 6-part series. First up are some practical answers from Partner and COO Don Thompson on lessons learned from 15+ years of collaboration on client-driven technical projects and insights into how Carbon Five’s process enables companies of all sizes. Read Part 2 with Partner and CEO Mike Wynholds here. When do I build my internal team? Beginning day one is our preference. The happiest clients are the ones that have a team in place to take over before we’re done. It doesn’t have to be a CTO–that can simply be a junior developer. It can be a struggle for clients to make a junior hire if they have more confidence putting a senior person in place. They feel a Director or VP will have more confidence in some of the decisions they’re making early on, and can build out their own team. From our standpoint, either approach can be successful. Where do I find my talent, and how do I attract them? That is really tough. The early hires will often establish and shape a corporate culture so it is important to get it right. In addition to the roles to hire for, we encourage our clients to consider making diversity a hiring goal. Creating a balanced, inclusive team takes more time and effort than most company founders expect. When our clients do begin to ramp up hiring, we’re happy to help with writing a job rec and shaping a job description. We’re happy to help review resumes. We’re happy to interview people and really be that advocate for our client as far as where people can fit into the organization. We’re happy to give them desk space once they’re hired. We have a recruiter, and we’re happy to make introductions to on the behalf of our client. While we still encourage people to reach out to their own networks, remember to reach out well beyond it.
In addition to the roles to hire for, we encourage our clients to consider making diversity a hiring goal. Creating a balanced, inclusive team takes more time and effort than most company founders expect…while we still encourage people to reach out to their own networks, remember to reach out well beyond it.
Continue reading …
Several members of the Carbon Five team were in St. Louis this past weekend (9/24-26) for Strange Loop. The conference focuses on the intersection of computer science and industry. As usual the conference is committed to delivering tech-focused, fantastic content which has all been made available online.
Before you start wading through all those videos, however, we thought we could offer up a few of our favorites to share.
Propositions as Types by Philip Wadler
Dr. Wadler gives a lively overview of the history of computation and formal logic. Using this history he showcases how a deep understanding of the nature of the universe can be used to discover new programming language designs.
Continue reading …
It’s a common scenario for tech companies: Your hiring pipeline is dry and you can’t seem to attract new talent. You notice companies touting long lists of superficial benefits. Instead of improving your internal team, you find yourself worrying about getting a pro-grade ping pong table for the break room.
You don’t need helicopter rides or Massage Mondays to bring people into the fold. Instead, focus your energy on making lasting changes to your company’s DNA. It won’t be easy, but the results will keep your existing team happy, which translates to positive conversation about your organization. Here are a few strategies to get you moving in the right direction.
Continue reading …
For the past few Sundays a group of me and other C5’ers came into the office to work on BridgeTroll with a few junior developers. We hoped that BridgeTroll would get a few highly requested features, but mostly we really hoped the junior developers would get practice and pick up some good practices about TDD, agile, and coding in general.
This was actually our second iteration of teaching pairing (and teaching through pairing). The first time was on a weeknight and between setup and getting everyone on the same page, not much learning was had. This incarnation of the program addressed the setup issue and having continuity over the course of several weeks seemed to work well. To be fair, there was a lot of story preparation time we sunk in before the start of the program so that most of the time could be spent on developing so that helped. It also really helped that BridgeTroll has an excellent setup script, which made starting a ton smoother.
Why would anyone put on a free program to teach industry skills? There must be something they expect in return.
Continue reading …