Slashdot Mirror


Software Development Practices At Google

prostoalex writes "It's widely known that Google allows its engineers to spend 20% of paid work time on personal projects (that are nevertheless considered property of the company). But how does the practice actually work? Joe Beda provides a helpful insight in his blog, pointing out other interesting software development practices at Google. The code database is open for everyone, the snippets and pieces are documented and one is encouraged to re-use existing code. The intranet is transparent to the max and the company accepts the fact that there's more than way to accomplish something, so a better method is always welcomed. Interesting to note that just like Hawaiian shirt days in Office Space, the 20% per projects are "actively encouraged" - Joe suspects his review ratings might slip if he doesn't have one soon."

5 of 246 comments (clear)

  1. Re:Personal projects? by Rei · · Score: 5, Insightful

    You're paid to do it on company time, though. If you want to own it, do it on your own time and pick something else for company time.

    --
    "It felt almost as good as stealing cars from grandma." -- Margaret Thatcher, probably.
  2. Re:Personal projects? by yitzhak · · Score: 5, Insightful

    It's not just getting paid to do it - having access to Google's codebase and infrastructure would allow you to do "pet projects" that simply wouldn't be possible on your own.

  3. Re:Personal projects? by ackthpt · · Score: 5, Insightful
    So you work on your personal project then google owns it? It seems like it would be more worthwhile to do them on your own time then.

    Get ready, this may come as a shock, but some people actually do contribute to their employer's welfare, because they realize what's good for their employer is good for them. I can see where people who feel unfriendly to an employer would develop their own special projects at home, especially if morale has sunk pretty low at the workplace or the company doesn't seem to be fairing well and the employee only has a job to lose, rather than an idea which would be sold off in a portfolio of patents/copyrights.

    As many people at Google have shares in the company and stand to gain much more, I can see where they may kick in some good ideas, especially if they wouldn't have much of an opportunity of developing them further wihtout quitting and raising some venture capital and hiring a bunch of employees (who may wish to withhold their own best efforts) into a startup.

    --

    A feeling of having made the same mistake before: Deja Foobar
  4. Innovative is good... by rice_burners_suck · · Score: 5, Insightful
    It's very interesting and refreshing to see a technology company that is actually run, as a business, in as innovative a fashion as its programs do from a technical perspective. And most surprising is that Google is actually quite successful. Companies like that can be counted on perhaps one hand.

    But one does have to remember one thing: It's not easy to make a company succeed in this fashion. Sometimes, as a manager, one wants to give one's employees everything, but one simply can't because of lack of resources. At Google, that isn't quite as large a problem, and they have the ability to perform some very long-range thinking and innovation, because their commercial success is giving them the freedom to do so. Their annual revenue is in the billions.

    I would say that Apple is also quite innovative in quite the same respect, though that will be highly debated, as is Wolfram Research, which will probably not be debated very much.

    Business that treat their employees like crap will ultimately lose. Businesses that are innovative in every respect, including business practice itself, don't have guaranteed success, but those that do succeed will do so in large quantities and the people who work there will have great fun in the process.

  5. Heard this idea from Fred Brooks at GDC by jparker · · Score: 5, Insightful

    At GDC 2003 or 2004 (can't quite recall) Fred Brooks (author of The Mythical Man Month, in case you're here by mistake) gave the programming keynote, and one of his suggestions was exactly this: to give your employees 20% of their time to work on whatever they want. He mentioned the benefits to morale, retention, etc., but he said the main benefit was the freedom to find new methods and new technologies. Pounding away on the day-to-day coding will only give you incremental benefits, but these 20% projects could provide the germ for an entire new product or business model. It's basically making everyone part of the R&D department.

    Also, if you have the chance, I highly recommend seeing him speak. In addition to being obviously brilliant, he's also a very entertaining and amusing speaker.