3日、Twitterの日本オフィスにて、Twitterの技術に興味のあるエンジニアを対象にしたオープンセミナー「Twitter Tokyo Open House」が開催された。この日は昼過ぎから爆弾低気圧のために各交通機関ともに混乱していたが、会場には多くのエンジニアが訪れた。
やっぱりバックエンドを支えるエンジニアは
“バルス”を話題にするよね……
SNSが日々の生活に定着して久しい。2011年11月にニールセン・ネットレイティングスが発表したプレスリリースによれば、日本の場合、PCからTwitterへのアクセスは1455万人、Facebookへは1131万人となっている。これらに未集計のスマートフォンやケータイなどからのアクセス数を合算すれば、この数値以上の人々がSNSサービスを利用しているというのは容易に想像できよう。
Twitterの基幹システムのエンジニアであるRob Benson氏によれば、Twitterのサービスを利用するユーザーは、世界中で1億4000万人以上。1日あたり3億4000万ツイートをしており、そのうちの70%が米国以外の地域という。
とは言え、これはあくまでも平均だ。何かのイベントが起きるとトラフィックが増大する。例えば2011 FIFA女子ワールドカップ日本女子代表の優勝時はピーク時に毎秒7196ツイートを記録したという。それ以上に大変な状況になるのが「天空の城ラピュタ」の放送時だ。ハッシュタグ「#バルス」では、毎秒2万5088ツイートを記録したというから大変だ。Rob Benson氏は「Twitterは同時接続数が膨大で多くのI/Oが発生する場合があるが、こういった場合にも安定したサービスを提供しなければならない」と話す。
昼はコードを書く喜びに浸る!
Twitterエンジニアの1日はこうだ!
年を経るにつれユーザーの規模が大きくなっているTwitterであるが、会社組織も同様に大きくなっている。現在社員は約800人で、その半分が開発者とのこと。気になるのが彼ら開発者の1日はどういうサイクルで動いているのかというところだ。
このTwitterエンジニアの1日を紹介するために登壇したのは蓑輪太郎氏だ。IDは@higepon。この名前でピンときた人も多いだろう。彼は以前「MonaOS」を開発した人物だ。
蓑輪氏の説明によると、午前は米国本社とのやりとりのために使い、午後はひたすらコードを書く「幸せな時間」になっているという。「出社時間の9時は、本社があるサンフランシスコでは午後5時。ちょうど米国の社員が帰ろうとする時間ですからやりとりはこの時間にします。メールも、もしかしたらこの時間に出したら返信がもらえるかもっ!と期待しながら出します」と話す。その後は本社でリリースされたもののチェック。お昼時間を挟んだあとはミーティングなどの時間はなく、コーディング、テスト、レビューなどに集中する時間だ。
では、彼が書いたプログラムはどのようにテストされてリリースされていくのか? Twitter社内でのプロセスは以下のようになっている。
まずプロダクトマネージャーと作成するプログラムを決定後、ローカルで開発・テストを開始。次にできあがったものを本番に近い環境で動作テストを行ない、開発の他のスタッフにコードレビューををお願いする。2名以上のレビュアーから“Ship it!”というコメントがもらえたら、最終確認の“Preflight”のステージに移行。このステージではいろいろな開発チームが自分たちのプロダクトと整合性がとれているのかを半日くらいかけてチェックを行ない、その後正式にリリースされるという。「開発者はみんなフレンドリーで、教えてほしいと頼むと気軽に教えてくれる。私も他の人に聞かれたら同じように接したい」と話しており社内の雰囲気を気に入っているようだ。ちなみにプログラムは「早い場合は1日でリリースされる。これは驚異的なスピード」と語る。
蓑輪氏は2ヵ月前に入社したばかり。1ヵ月間の本社での研修があったというが語学などに不安はなかったのだろうか? 「TOEICはそこそこですが、それよりも良いプログラムが書けてある程度のコミュニケーションができる人のほうがいいと上司に言われた」という。
イベント中、奥からスタッフ同士の笑い声が聞こえてきたり、セミナー後にはピザとビールで歓談の場を設けたりと、外資にありがちな硬質な冷たい感じがなかったTwitter Japan。世界中でTwitterユーザーが増加しているが、こういった雰囲気が同社のシェア拡大につながっているのではないか、と感じるのは私だけではないだろう。