天国? or 地獄?

Googleのオフィス、「ランチが無料」とか「休憩の時の飲み物とかスナックが、一杯おいてある」といった話しは良く聞くが、「本当に、職場としてみたらどうなんだろう」って意味での話、あまり語られることがなかったような気がするんだが、

へ〜たのめも:Google のソフトウェア・エンジニアリング - livedoor Blog(ブログ):
Google Developer Day Tokyo の鵜飼さんのプレゼンより、「Google のエンジニアはどうやって開発しているのか?」

ってのを読んでみて、正直「ある意味で、厳しい職場なのでは?」と思った。

やはり、ソフトウェアを武器として大きくなってきた会社だけあって、

鵜飼さんは普段、毎週 0〜20個のパッチを書く。年間 3万5千行くらい。シニア・エンジニアやフェローになると、もっと書いていて、Google では、偉い人ほどコードを書きまくっている。

「偉い人ほど、手を動かす」っていうのは、良い意味でのプレッシャーだと思うし、いわゆる日本的な「世渡りだけはうまい」という人は残れないという、実力主義、能力主義が徹底していることの表れなのでしょう。


スケーラビリティ重要(いずれは Google Product になるのだから当然)。たくさんのマシンで並列化できるように
信頼性(Google はマシンが大量にあるので、ハードウェアは毎日壊れる。レプリカを作ってデータは多重に持つ。障害監視と自動的な障害復旧に力を注ぐ)

このあたりは、Googleならでは、という感じがしないでもない。

「マシンは壊れて当たり前」なんだから「ソフトウェアの作り方で回避する」という発想は、今までの経験から来ていることなのでしょう。自分の経験では、「極力止まらないように構築されたインフラ」の上で「インフラが止まらないことを前提としたソフトウェアを動かす」という仕事をしてきたことはあるし、企業の多くはそういう形での対応しかとってないじゃなかろうか?
考えようによっては、Googleの考え方が特異とも言えるかも知れない。

とにかく「一部が止まっても問題が出ないシステム」を作るためのノウハウは、かなり蓄積されているんだろうと・・・。
特にこの数年、インフラ中心の仕事してきていることもあって、そのあたりは非常に興味津々。なにしろ、Googleのサーバはワールドワイドにかなりの台数のサーバが設置されているわけだから、それをシステムとして、どう制御しているんだろうってのは、とっても知りたくありません?

パフォーマンス・レビュー(評価面接)は年に二回。基本的に本人が指名した同僚が、その人を評価する。上司の評価だとパフォーマンス・レビューのときだけ巧く立ち周る人の評価が高かったりするけど、一緒に働いている同僚のレビューなので、日々の仕事がそのまま評価に反映

コレは完全に、普段やっていることを見られるわけだから、世渡り上手なだけでは無理だね〜。
多分、周囲との普段からのコミュニケーションもしっかり出来ていないといけないだろうと思うし、

レビューが必須なので、個人プレイはダメ。チームでの活動が必須

ということからも、それなりのコミュニケーション能力を求められていて、いわゆる「一匹狼」的な志向の強い人も辛そう・・・。

周りから言われるほどでも・・・」という話しもあったりするようなので、実際のところはどうなんでしょうねぇ〜。
転職してみりゃ判ることではあるけど、自分で通用するの、って考えちゃう・・・。

とにかくプログラミングが好きという向きには、良い環境なのだとは思う。そのかわり、書いたコードの量に比例してドキュメント書くことも求められるようだけど・・・。
#まぁ、当たり前っちゃ、当たり前?

トラックバック(0)

コメントする