Production vs. Shipping
July 16, 2012
I try not to 'rock the boat' too often. However, it is impossible to share this post without pointing out the differences in the cultures that I have worked in during my first few years in the web design industry. Out of respect for the ones that aren't getting the best review, I don't want to name names of the companies. I want to be sure to say that I have also had a couple positions with great company cultures that ended for other reasons.
My early exposure to web design and front-end development as a profession was more of a culture of 'production first'.
Production First Culture
By 'production first', I mean that producing something as a deliverable is the number one priority. While this might not be stated outright, it is created by the guidelines by which you work. There were positions that felt that at all times my hand should be on the keyboard or a mouse and in a tool that produces a deliverable. Research was a secondary option and it would usually be offered with the words "spend a couple of minutes".
The lesson I learned: My time at work is meant to be producing something. Research and efficiency are not as important as the fact that you are currently manipulating something into a deliverable.
To grow my skills, I had to spend time outside of work reading, doing tutorials, attending events and doing online training. I would leave work and read about how all of these other companies and people work. I would read that people talked with their co-workers about projects (outside of client meetings), sketched things while 'on the clock', took breaks when they were stuck on something (even doing fun things like ping pong or video games), paired with another person (where they both figured out a code solution together) and many other examples. So, I would read about these and then I would go back to work and not be able to apply any of them.
The White Whale
After a couple of positions with 'production first' company cultures, I started to question the things posted online. It began to feel like these companies were like unicorns or Bigfoot. Luckily, I get around to a lot of events and had great conversations with people that confirmed that some of these things were real. However, that left me 'chasing the white whale'.
I found one
So, now that I found one I feel compelled to share. I want everyone to know that not only do these companies exist, there's at least one here in Florida (where 4 out of my 5 blog readers live. Hi, mom.)
A 'Shipping Culture'
I now work at Envy Labs, which is based in Orlando. I would say that their culture has a focus on 'shipping'. In a shipping culture, the focus is a lot more holistic. While deliverables are the ultimate goal, everything involved in that process is important because it all affects how efficiently you ship and the quality of the things that you ship. It's doing things in the right way, but also choosing the right things to do.
An example: In a 'production first' culture, you may deal with network latency or slow tools for months or years in the name of getting things done. In a 'shipping culture', you dedicate some time to have things run better. (Recently at Code School, we had 2 devs jump off of other tasks in order to upgrade Ruby. Now the app runs faster for everyone that touches it locally. These guys spent some time working on a non-deliverable that makes everyone on the team get to a deliverable more efficiently.)
Here are some of the things that affect the overall process as I have seen them so far.
We have a beautiful office, located in the heart of downtown Orlando and on the 20th floor of a tower. There are separate rooms for types of work being done: design, project management and development. Then there are shared spaces like the couches, kitchen and ping pong 'arena'. (Oh and remember about the mystical practice of pairing? We have a room dedicated to anyone doing that.)
So, with all of these things you would think that maybe they do it to make sure that people are there all day. Nope. It's up to you when you work in the office. I can tell you firsthand that the combination of the people, the amenities and the freedom make me want to be in the office every day.
Everything about the company is wide open for discussion amongst the team. We have weekly standups where this communication is planned as well as some optional team building times like Whiskey Wednesdays or Free Lunch Fridays. The bulk of the communication happens online, though, via Campfire and Basecamp. This transparency makes me already feel like part of the team and that it would be perfectly ok for me to ask any question about projects, the team, financials, etc.
The combination of a fantastic workspace and dedicated time to team building and transparency results in a desire to be part of the team. You want to be there and you want to help out others because you feel like you are a part of something special. You could think that this is just me being new, but I routinely see requests for help (or even task swapping) go into Campfire and they are fulfilled with the quickness. Plus, I witnessed the team knocking out to-dos and fixing things in support for Code School customers throughout the 4th of July.
Paid to Think
I am now paid to think. Think first, then do what is the best solution or what will lead you to the best solution. Then, ship it.
I want to share how this works specifically related to the front-end side of things but I thought I should break up the posts a bit. If you're interested, check out: Mondays Rock