It’s been several weeks since I was hired here at 37signals so I thought it might be interesting to share some of my experiences so far.
Ready, set, go!
One of the best things has been how quickly I’ve been able to jump in and start contributing. The very first project I worked on was a refresh of the Account screen in Basecamp. What started as an exercise quickly escalated to a new design that we wanted to actually put into the app. So it wasn’t long before I moved from Photoshop right into the app code to integrate the new design. This required me to build on my limited experience with Ruby on Rails, setup my computer for development, learn enough Git to be dangerous, and get a feel for application structure and conventions. None of this could have happened without the patience of my co-workers and the solid development structure/process that is in place here. Here are a few general observations:
- The 37signals community is huge! Every change is noticed — sometimes within minutes of being launched. Receiving instant feedback to your work is great (at least so far :)
- Git has been a surprisingly nice addition to my workflow. The ability to quickly switch branches and compare my version to the original has saved me countless hours
- There are new things being added to the apps constantly. It’s exciting to see all of the new features and improvements every day. It can be hard to appreciate all of this activity from outside the company, but we’re working on that
- No longer supporting Internet Explorer 6 is liberating!
In the first ten days or so I was able to design and implement a single screen redesign, get it deployed and write it all up at Signal vs. Noise. It’s pretty great to feel like you’re contributing and making a meaningful impact so quickly.
Working remotely
One of the biggest changes for me when joining the company was working 100% remotely. 37signals is based in Chicago, but half the team works outside the office — even the Chicago crew isn’t in the office every day. So it has been great to join a company that knows how to work with a widely distributed team. As you might assume, communication is the key to making the team effective and productive. Here are a few ways we stay connected:
Campfire
I have to admit that I didn’t get Campfire before I started working here. I’d been a long time user of Basecamp and Backpack, but Campfire never clicked for me despite a couple of attempts to bring it into a team workflow. What I was surprised to see is that Campfire might be the most important app that we use.
Our “All Talk” Campfire room is where the entire team gathers each day — we all stay logged-in anytime we are “at work”. Throughout the day we post questions, share screenshots, get feedback, collaborate on copy, and troubleshoot code. Campfire also talks to our apps so we get notifications when they are updated as we develop. It also serves as a way to quickly note to the team that you’re heading to lunch or will be away from the computer for a short time. But it’s not all business. We also find time to talk about the latest gadget/news/link/app/controversy and generally have a good time. Campfire is where all the typical conversations that happen in a physical office occur, but the difference here is that everyone can hear them, anyone can pay attention to what they want to, and it’s all archived so we can search through it later.
Campfire is also used along with instant messaging for the one-on-one and sidebar conversations when we want to chat, but stay out of the noise of the All Talk room. Jumping into our Small Talk room to work through a bit of code lets me work directly with a co-worker AND allows me to save a link to that conversation for future reference. This has been immeasurably helpful for me as I dig more into the tech side of our apps. Screen sharing via iChat is another great way a couple of us can quickly work together on a tricky bit of code.
In/out
Another key part of knowing and sharing what is going on with the comapny is with Backpack’s Journal screen. The journal lets everyone on the team set their current status (e.g., “Reviewing design comps”, or “Out to lunch”) and log the last few things that they have recently completed. There is no forced structure to it, we typically just update it a couple times a day as necessary. It’s a great way to get a quick snapshot of what is going on, who is working right now, and what they’re working on.
Of course we also follow project updates in Basecamp and keep an eye on external communications by checking into our Highrise account. Everything is out there for us to keep up with as we need to or want to.
Perfect balance
At 37signals I really feel more connected and current with what is going on than in any physical workplace I’ve been a part of. It is effortless to keep up with what my co-workers are doing and how what I’m doing contributes to the whole. I’m free to keep up with projects and learn new skills as they fit my interests. We collaborate how and when it makes sense, and stay away from each other when that’s the best way to work. That makes for a really effective working environment.
Levi Figueira
on 30 Jun 09What’s up with 37s and J-starting first names? :p haha
Sweet post and great to see and inside “scoop” of someone closer to outsiders of 37s (fresh in)! Good luck to you, Jason and best of lucks to 37s! You’ve been inspiring to me and hope you all keep inspiring me and others!
:D ~Levi F
Jeff Siarto
on 30 Jun 09Of all the things that 37Signals does right, their best decision was to drop support for IE6. You guys were some of the first to publicly do so and set a great precedent. Glad things are working out JZ!
José Bonnet
on 30 Jun 09What was the ‘best’ thing you had to handle at 37S until now, during the adapting phase? And the ‘worst’?
Thanks, jb
Tim
on 30 Jun 09JZ will have to learn that his posts are a little lengthy
Des
on 30 Jun 09I still hope you guys will move the journal into Campfire. The idea of logging into BackPack just to post an update, or see what someone is doing, puzzles me.
Basecamp and Campfire are both workflow tools, so I believe that finding out what your colleagues are doing should be there, specifically in campfire.
Zane
on 30 Jun 09I thought the post length was just right. Thanks for the insight into Campfire’s usefulness JZ.
Lee McAlilly
on 30 Jun 09Along the lines of what Des said, it seems that there is a lot of overlap with how you use Campfire and Journal.
Doesn’t this cause some dissonance?
Justin Jackson
on 30 Jun 09I disagree with Tim; I think a lengthy post is fine as long as you have valuable things to say.
I read the whole post (and the Design Decisions post) completely. I think JZ did a good job of communicating a lot of valuable information. He could have broken it up into smaller posts; but that would have been harder to follow (as a reader). It was good to have all the points in one place.
JZ
on 30 Jun 09RE: Campfire and Backpack overlap…
It doesn’t really feel inconvenient or like an overlap to me — I stay logged-in to both apps pretty much all the time. The Backpack journal is an entire page logging all kinds of things that have been done over the past few days. For us there are 30+ entries a day on a typical weekday. That’s a lot of clutter to introduce to Campfire.
We tend to use status on the Backpack journal for more formal things, i.e., what we’re working on now where if we needed to make a quick coffee run, Campfire is a better place for that update. I look at our Journal a couple of times a day, just to see what’s up as I post my updates.
For Campfire, “status” is just who is in the room and who is available to chat – that’s really all you need to know there. So it isn’t likely that you’d make the same update in both places.
Jealous
on 30 Jun 09Very jealous. :)
David Chartier
on 30 Jun 09I like the idea of helping members of a team to be more aware of what each other are doing, but a Backpack Journal page seems like overkill for this. We’re using Basecamp and Campfire at Agile Web Solutions, but an addition of support for status messages in Campfire could solve this problem much easier. Plus, with dedicated apps like Propane (which most, if not all, of us are using for Campfire), a subsequent addition of a system-wide keyboard shortcut for setting one’s status would make it even easier to keep each other in the know.
Tim
on 30 Jun 09Don’t take my opinion about the length of the post being too long as fact.
Simply look at how few comments are made on this post compared to the normal post at 37signals.
The # of posts is easily 1/2 the normal average … and that’s even counting the 4 comments of 12 total that have been made that talk about the posts length. If the length of the post was not brought up by me, the # of comments about be around 1/3 of the normal # of comments.
J
on 30 Jun 09Tim, I don’t want to be like you when I grow up.
davidinportland
on 30 Jun 09@J—seconded.
JZ—great post. Informative and interesting. Nice to hear someone so enthusiastic about their work and workplace.
Question—curious about the balance of Campfire/msg-based communications (even SMS) vs. actual time on the phone. I run a very distributed team and half my team loves the phone and the other half won’t touch it. Always interested to hear how other distributed teams strike their own balance.
Thanks!
JZ
on 30 Jun 09@davidinportland
Weekly usage: – Telephone: 20mins – Campfire/IM/SMS: 40+ hours
Phone calls are a last resort for us. We have a short weekly call for each of several sub-groups (designers, sys admins, support, etc) and occasionally will do a call for a quick huddle but it’s rare.
Typing offers instant transcripts and it seems to make you think a little more before you say something.
Justin Reese
on 01 Jul 09@Tim: The quality of comments on longer posts seems to be higher. The length seems to scare off trolls and decrease comment redundancy.
Posts should be as long as it takes to communicate the message.
Jake Boxer
on 01 Jul 09I am very jealous. I love 37signals, and I hope I have the opportunity to work there some day. Congratulations on your success :)
Paul
on 01 Jul 09@Justin Reese: Posts should be as long as it takes to communicate the message.
Well said!
Paul
on 01 Jul 09JZ, regarding the Account screen in Basecamp, I suggest changing “Enhanced Security” to “Enhanced Security (SSL)”. Also, below in the table you have “SSL Security” so it is worth unifying this one as well…
Don Schenck
on 01 Jul 09SHUT UP, JZ … just shut up!
:)
(Seriously, I’m very happy for you. And send birthday wishes along to Sarah.)
Oliver
on 01 Jul 09Thanks for this post! 37signals has been (and is) an inspiration for me and a lot people I know. Please give us more (regular?) posts of that kind (and include some pics from Chicago HQ, too ;).
Jason Morgan
on 01 Jul 09Jason, congrats. Followed you since your earliest petition to join their team and like the processes that were employed that finally got you in. Glad all’s working out.
Jason M :)
Michael Dick
on 01 Jul 09Great write up, I enjoyed the campfire details…sounds like 37Signals has communication down to a T. #jealous
Troy M
on 01 Jul 09I’m curious, you mention using GIT, do you use the Terminal or a GUI for working with GIT?
JF
on 02 Jul 09Troy: I believe we all use the Terminal to interface with Git.
This discussion is closed.