Every Friday is our Roti day. There are usually some interesting discussions.
Our Conversation
Here is kind of the conversation last Friday:
Me: Oh, man, we should spend more time to refactor our code. They suck, and why we actually started to use C++ somehow? I think everything we have is written in C. Also the code is actually not bad at all.
Friend A: Yeah, I heard that they actually decided to use C++ to just have something fancy on the resume.
Me: Wow, really? Unbelievable… but if they don’t know C++, how they can use it correctly…
Friend B: I don’t mind to use C++, if there is a good reason… It doesn’t make any sense to choose something just because it’s good, that should be explanation that why it’s good.
……
Me: definitely, also, we should always choose the right method to do the right thing. There are many things that doesn’t make any sense right now, like our build system, why just spend a week and stop everything, just fix it completely. Then we never need to worry about it again.
Friend A: It will never happen… Management won’t think it’s worth to do that.
Friend B: (laugh), correct, there is no business value to do that at all. No customer will complain about build system (we all laugh)
Me: Very true, management won’t do anything that doesn’t have business value… but how they define business value? The thing we want to do probably will never have business value…
Friend B: If we can have something like Google, you can have 20% time for your own to do whatever you want. How cool that will be… How much things we can get done…
Me: Indeed, many popular Google products are actually created from developer’s 20% time…
Friend A: Yeah, for sure, but it will never happen to us though… I remembered that someone mentioned this several years ago to the upper-management, the top management guy actually replied “I will never give people 20% of their time for doing nothing, never”
Long time silence….
So that’s where the talk ends. We all feel some sort of upset I guess. Let’s face it, that’s how a company usually works. If you ask me, it’s not surprising at all that any one in any management roles will say something like that. I told me wife this story and her action is “Indeed, I will say that as well. It’s the basic rule for any managers…”, However, my question will be if for an IT company, is this still true?
Why Google Does This?
Oh, Google, everyone has heard too many stories about them, their special offices, free lunch, dog in the office, and 20% creative time. All those rules are probably considered so wrong in a traditional company, but why it works for Google? Because engineers are the basic and probably the most recognized group in Google. They honor them. They respect them, and they know what they need.
As an engineer, I can totally understand what that means. I do my work not only for living and money. I also need to be passionated about what I am doing. I believe that I can always create something new, learn something new and work on something new. However, most time, your work won’t be exactly same as your interest. In that case, you probably will spend your spare time instead to work on your own, either for an opensource project, or having your own secret project, which won’t be any beneficial for the company.
On the other hand, with 20% of your free work time, engineer will definitely try to connect their interests with the work… Usually, it will turn into something very interesting and potentially very beneficial to the company… Then, why every IT company didn’t do it?
Not For Everyone I Guess…
I think another important reason that Google dare to do this is their confidence of the engineers they have. Rudimentarily, you need to trust your engineers to be good enough to have this kind passion. I can see many people in my previous companies and current company that consider work just as work. That’s probably the reason that Google’s hiring process is complicated and super tricky sometime. They are not only looking for people that works exactly like them, but treat work like them as well…
Personally, I believe that every IT company should think about this carefully and what kind of people you are looking for? What your company mission is? It’s just a business for some money? Or you are dreaming to change the world entirely? If you do, then why bothering to give your people 20% of their time? If you don’t trust them, then what a shame…
Anyway, this is probably just too ideal and won’t be realistic ever…