pr

楽天エンジニアスペシャル(1)Webアプリケーションエンジニア編 「運用ができて一人前」――Web開発の最前線で働き続けるエンジニアの挑戦

楽天では多くのエンジニアが働いている。その中でも特に、楽天というサービスの最前線で開発と運用を行うのが「Webアプリケーションエンジニア」だ。楽天の世界進出の第一歩となった「台湾楽天市場」の立ち上げにかかわったエンジニアに、「楽天でエンジニアとして働くこと」の醍醐味を聞いた。

 「『台湾楽天市場』の立ち上げ時は、短期間でサービスをリリースするために、猛烈に働きました。大変だったけれど、自分で提案して新しいことに取り組むことができる。動き出せば、想定外の使い方も出てくる。とにかく面白かったですね」

 2008年5月に公開した「台湾楽天市場」は、楽天と台湾企業の合弁会社が運営するサービスである。その立ち上げにWebアプリケーションエンジニアとして参加した楽天 開発部 国際サービス開発・運用課 国際サービス開発グループ エンジニアの和田裕美さんに話を聞いた。

 和田さんは2000年にWeb開発の世界へ飛び込んだ。2002年、当時和田さんが所属していたライコスジャパンを楽天が買収したことに伴い、楽天のエンジニアとなる。その後、楽天は急成長し、エンジニアの人数も大幅に増えた。「今では(楽天の中でも)古株です」と笑う。

 得意とする言語はJavaだ。アプリケーション開発では、オープンソースのフレームワークをいくつか組み合わせて使っている。Webサービス運用の必要上、UNIXシステムの管理にも詳しい。セキュリティのエキスパートでもある。このように、複数の技術分野にエンジニアとして関わっている。

  自分から動いて提案する、
それがサービス開発の醍醐味

 和田さんが参加した「台湾楽天市場」は、2008年1月に実装に入った。リリースは同年4月。5月の一般ユーザー向け公開前に、出店予定の店舗はWeb上の店舗を作らなければならない。つまり、わずか3カ月弱の間に大規模なマーケットプレイスを、一から開発しなければならなかった。

楽天 開発部
国際サービス開発・運用課
国際サービス開発グループ
エンジニア 和田裕美さん

 当時、和田さんが参加していたチームは10名弱。決して大所帯ではなかった。当然、1人ひとりに求められる責任は大きい。だが、和田さんはその状況を「楽しかった」と表現する。

 「日本版『楽天市場』では、適用技術の審議が慎重に行われます。サイトの規模が大きくなり、ソフトウェアの依存関係の波及範囲が広がっていますから。でも、新たに立ち上げる台湾版では、新しいフレームワークを使ったり、疎結合の考えを持ち込んだりと、比較的自由に試したいことを実行することができました。誰も止めなかった、というのが正確かな」

 多くの人々とのかかわりの中で、エンジニアとしての能力を発揮する。そこに面白さがある、と和田さんはいう。

 「台湾まで合弁会社の方のお話を聞きに行ったりもしました。事業にかかわる大勢の人が考えていることを念頭に置いて開発しました。リリース後に『燃え尽きた』と思うほど、プロジェクトが進行している間は忙しかったのですが、とても充実していましたね。リフレッシュのために、2週間のお休みをもらって旅に行きましたよ」

  大規模サービスを運用するため、
技術にこだわる

 大規模なサービスを開発、運用するには、技術の裏付けが必要だ。楽天が組織として持つ技術力を、エンジニアとしてどのように見ているのだろうか。

 「楽天に入ってまず『すごい』と思ったのが、開発で使っている『楽天標準』です。言語処理系やミドルウェアのバージョンなどが細かく定められていて、想定外の組み合わせによる問題が起きにくいようになっています」

 最初は正直、違和感があった、と和田さんは語る。

 「どうして、自分で自由にパッチを当てたり、好みのバージョンを選ぶことができないのだろうって。承認プロセスを経ることでバージョンを上げることはできるのですが、最初は違和感がありました。ただ、楽天で働いているうちに、これだけ大規模な開発部隊であれば、こういう標準がないと破たんする、標準バージョンがあることで想定外のトラブルを防ぎ、本来の開発に集中できるのだ、ということが分かってきました。これは小さな会社ではあまり考慮されない、Webの開発案件を多数抱えている楽天ならではのことなのだと思いました」

 楽天で開発するサービスは巨大なトラフィックが予想されるため、スケーラビリティを十分に考慮する必要がある。セキュリティ対策への要求も厳しい。一方で、こうした難条件はエンジニアにとって腕を磨くいい機会となっている。

 「スケーラビリティについてはいつも考えていて、エンジニア同士でもよく議論しています。オープンソースのソフトウェアで良いやつはないか、とか、先日公開されたROMA(Rubyで実装された分散キー・バリュー・ストア。楽天技術研究所が開発し、オープンソース・ソフトウェアとして公開した)はどうだ、とか。ほかのエンジニアとの会話が勉強になる場合も多いですね。経験豊富なエンジニアも大勢いますから」。

台湾楽天市場

  「運用ができて一人前」
――サービス運用にかかわる楽しさ

 和田さんは開発だけでなく、サービスの運用にもかかわっている。「運用にこそWeb上のサービスの醍醐味がある」と和田さんは強調する。

 「極論すれば、開発そのものは、新卒で入ったエンジニアでも教科書通りにやればできると思います。一方で、運用はリリースした後が勝負です。突然トラフィックが集中したり、想定外の使い方をされたり、脆弱性を狙った攻撃をされたり、といったことが起こります。本当に予測が難しい。Webサービスにかかわるエンジニアは、運用ができて一人前ですね」

 エンジニアとしてWebサービスの開発、運用にかかわることの面白さを、和田さんは次のように語ってくれた。

 「事業やユーザーに求められていることを実際に形にできるのがエンジニアの醍醐味だと思います。『ちょっとこれできない?』って相談されたことを、すぐコードで書いて提案してみたり……」

 多くの開発現場では、開発エンジニアはあらかじめ定められた範囲の中で仕事をしている。だが、楽天のWebアプリケーションエンジニアは、かかわる人数が圧倒的に多い。

 「ほかのエンジニアや事業部門とかかわるだけじゃありません。エンジニアも、希望すればサポートに寄せられるユーザーからのメールを見ることができます。エンジニアって、自分1人で作っていると『いいものができた!』と思いがちですよね。でも、出店している店舗様からのメールを見ていると、思いもよらないところで『ここが使いづらい』という要望が見つかります。そういった声に耳を傾け、改善を重ねていくと、もともとの仕様とは違った形のサービスができることもあります。個人として『いいものができた!』というだけではなく、本当にユーザーが欲しているものを一緒に作っていける、という部分は本当に面白いし、やりがいを感じます」

 楽天ほどの規模でWebサイトを開発したり、運用を経験できる環境は決して多くない。サービスの最前線で働く和田さんは、Webサイトの規模、トラフィックの量、そして組織の大きさを、すべて「自身の楽しみ」に変換し、今日も新しい取り組みに挑戦し続けている。

提供:楽天株式会社
企画:アイティメディア営業企画
制作:@IT自分戦略研究所 編集部
掲載内容有効期限:2010年1月31日



会社情報

  • 会社名
    楽天株式会社
    Rakuten,Inc.
  • 設立
    1997年2月7日
  • 資本金
    107,534百万円(2008年12月31日現在)
  • 本社所在地
    東京都品川区東品川4-12-3
    品川シーサイド楽天タワー
  • 従業員数
    単体:2081人
    連結:4874人
    ※2008年12月末現在
    ※役員を除く契約社員を含む就業人員ベース
  • 代表者
    代表取締役会長兼社長
    三木谷浩史


エンジニアライフ執筆中

楽天開発部コラム事務局
「おれたち世界一になれますか?」