Google のソフトウェア開発
2007-04-29


Google 技術講演会「Developing Software in the Real World」に行ってきました。講演者は Google 東京 R&D センター ソフトウェアエンジニアの南野朋之さん。その 1 週間前に行われた、Mozilla Corporation の Seth BindernagelSeth Spitzer との講演会 (Mozilla Party JP 8.0 とは別物) には参加できなかったので、リベンジ (?) という形になります。

南野さんはインターンを経て Google へ入社、Google マップでの写真表示を開発された方で、今回の公演内容は Google でのソフトウェア開発体制、および Photos on Google Maps 開発の舞台裏に関してでした。

Google でのソフトウェア開発体制

OKR (Objectives and Key Results)
四半期ごとに目標 (長期、短期) を立て、成果を評価する。これが各エンジニア、個別チーム (5 〜 6 人)、会社などさまざまなレベルで行われる。
百聞はデモに如かず
20% ルールでの成果など、とにかくデモを作る。それに対してチーム内外からフィードバックを受けられる。
Design Doc
実際のコーディングへ移る前に、WhyHow を書いておく。
Weekly Snippets
週ごとに今週すること (したことだったかも) を書いておく。
強大なインフラ
数千台のクラスタ、ペタバイト規模のストレージ、Web データなどを (インターンでも) 自由に扱える。
何でも共有
全ソースコードは全エンジニアに共有される。Design DocWeekly Snippets など、誰が何をしているのかという情報も共有される。

Photos on Google Maps

機能概要
Google マップでお店やホテルを検索した際、その店舗に関する写真をバルーン内に表示する。
最初のアイデア
Web ページ中から住所情報などを元に関連する画像を取得する。
ノイズの除去
複数ページで使われている画像は、サービスのロゴやボタンなどである可能性があるので取り除く。
イメージ検索チームのシステムを利用してポルノ画像を取り除く。
精度の向上
住所情報だけでなく、店舗名とともに使われる特徴的な語も利用する。
デモ
自前の HTTP サーバーと Greasemonkey 用スクリプトでデモを作成。
公開
2007 年 3 月 8 日に公開。海外では Slashdot.org にも取り上げられた (該当するトピックがわかりませんでした) が、日本では反応が薄かった。(私自身気づいてませんでした。m(_ _)m)

質疑応答

Google をやめた人がソースコードを流出させる可能性について
NDA により縛られている。また、Google の社訓 Don't Be Evil には、そのようなマナーに反することをしなくても、良いソフトウェアは作れるという意味もある。さらに、ソースコードが手元にあっても、Google 外でそれを実行するのは難しい (数千大規模のクラスタを用意できないなど)。
Google 内に外部ソースコードが混入する可能性について
ソースコードのライセンス専門の担当者もいるはず。(中国語 IME の辞書問題に関しては残念。)
Google 内で出たアイデアのうち、実際世の中に出るものの割合は?
アイデアだけで終わるものもあるが、いったん走り出せば大体は世に出る。
日本語のメーリングリストもあるのか?
メーリングリストなどはすべて英語。前述の

続きを読む

[コンピュータ一般]
[Web 関連技術]

コメント(全0件)
コメントをする


記事を書く
powered by ASAHIネット