インターネット上で何らかのサービスを展開するとき、
アプリケーション開発で大きな鍵を握るのは“品質”
- ――リクルートライフスタイルの中における、
お2人が所属するチームの役割を教えてください。 小川氏:リクルートライフスタイルでは、
宿・ ホテルを探して予約できる 「じゃらん」 や、 クーポンももらえるグルメ情報サービスである 「ホットペッパー グルメ」 など、 日常的な消費行動に対して価値を提供することがビジネスドメインとなっています。その中で私たちのチームは、 新しい軸となる事業やサービスを開発する役割を担っています。 特徴的な部分としては、
企画と一緒になって開発を進めていることがあります。企画は別の部署が担当していますが、 同じスペースの中で2つの部署が一緒になって仕事をするような進め方もしていますし、 それぞれの部署の担当者同士でのコミュニケーションも多いですね。 「僕たちは企画です」 「僕たちはシステムを作っています」 という形ではなく、 「一緒に新規事業を作っています」 というマインドで働いています。 - ――従来のパソコン+ガラケーからスマートデバイスへと、
ユーザが使う端末はここ数年で大きく変化しました。開発者として、 こうしたデバイスの違いで強く意識することは何でしょうか。 小川氏:ユーザとの距離感が1つのポイントとして挙げられると思います。スマートデバイスはユーザとの距離感が近い一方、
アプリケーションが落ちる、 あるいは表示速度が遅いといった不満があれば、 すぐに離れてしまいます。そういった部分にこだわらなければユーザに見放されてしまうため、 これまで以上に品質が大切になっていると感じています。 豊島氏:Webサイト上で提供するサービスとアプリケーションとの比較で言えば、
やはりアンインストールの概念があることが大きなポイントではないでしょうか。ユーザにアプリケーションを気に入ってもらえれば近しい関係になりますが、 一度アンインストールされると逆にすごく遠ざかってしまう。そのため、 アプリケーションがアンインストールされないように、 あらゆる面で気を配っています。
ロジックツリーでアプリケーションの機能を絞り込む
- ――開発したアプリケーションをユーザビリティの観点から検証することもあるのでしょうか。
小川氏:ユーザインタビューやユーザテストは重点的に実施しています。特に新規で開発したアプリケーションについては、
そのアプリケーションに対するアンケートを実施したり、 提供している機能についての意見を聞き、 その内容を反映したりしています。実際、 アプリケーションの挙動に違和感がある、 このボタンを押したときにこの画面に遷移しないのはストレスが溜まるなど、 さまざまな意見を集約してアプリケーションを改善することもあります。 豊島氏:ユーザインタビューで一番悲しかったのは、
便利に使ってもらえるだろうと考えて組み込んだ機能が全然理解されなかったケースです。説明すると理解してもらえるのですが、 アプリケーションの画面だけではわからなかったんですね。そういったときに、 やっぱり機能の説明も必要なんだなと改めて実感しました。 小川氏:アプリケーションに機能を詰め込み過ぎると、
そもそも何のアプリケーションか曖昧になるので、 どう引き算するかもすごく大切になります。たとえば何かを予約するアプリケーションに対して、 気になったものをあとで参照できるクリップの機能を充実させると、 そのアプリケーションの目的は予約なのか、 それともクリップなのかが不明瞭になりかねません。そもそもユーザに何をしてほしいのか、 どういった体験を提供したいのかは、 常に意識していることの1つです。 - ――具体的に、
どのように考えて機能を絞り込むのでしょうか。 小川氏:よくロジックツリーで考えています。一番大切なことは何かをまず考え、
それを分解していく。アプリケーションの目的を分解して考えていくことにより、 この要素はそぎ落とせる、 これは必要だといったことを考えやすくなります。これはアプリケーションに限った話ではありませんが、 たくさん盛り込もうとすれば目的が見えづらくなるし、 リソースも分散してしまいます。そこで引き算して、 何をすべきか明確にしていくことは重要ではないでしょうか。 たとえば電卓ってすごく良いと思うんです。計算にだけ集中していて、
ユーザが迷いようがない。一般的なアプリケーション開発ではそこまで絞り込めませんが、 だからといって電卓に予定表の機能をつけるのはおかしいですよね。ただアプリケーションを開発していると、 あれもこれもと機能が増えがちで、 おかしいことに気づかない。そのときにアプリケーション全体を俯瞰し、 不要な機能を省くのは大切でしょう。 豊島氏:エンジニアが企画側に対して、
この機能を追加するとアプリケーションとしての整合性がなくなるといった話をすることもあります。エンジニアはアプリケーションの細部まで把握しているところがあって、 企画側が見落としている問題に気づくこともあります。それをエンジニアが指摘し、 「たしかにここは直すべきだよね」 といった会話が生まれることもよくあります。
守りと攻めの両面でアプリケーション開発を支える基盤チーム
- ――スマートデバイスの技術は変化し続けていますが、
それにはどのように対応されていますか。 小川氏:たとえばiOS向けアプリケーションの開発で言えば、
現場ではすでに、 今から作るものに関してはSwiftにする方向で動き出しています。もうSwiftだよねっていう。ただ根拠はあって、 まず一番に見るのは品質です。従来のObjective-Cよりもメンテナンスしやすく、 言語としても洗練されています。そういった品質に加え、 今後発展するのはSwiftで、 Objective-Cは現状維持になりますよね。それを考えたとき、 新しいほうに投資するのは適切な判断だと思っています。 豊島氏:Swiftについては、
リクルートライフスタイルで求められるこういう機能を実装できるのかなど、 時間をかけて計画的に試験し、 その結果を受けてこれで大丈夫だろうとジャッジしました。検証はさまざまな側面から行っていますが、 たとえば自社で独自に開発しているライブラリが問題なく使えるか、 あるいは初めてSwiftを書く人がいたとき、 どの程度大変なのか、 工数はどれくらい変わるのかなども見ています。 小川氏:基盤の開発チームというと一般的には守りのイメージだと思いますが、
豊島がまとめている基盤チームは新技術を積極的に採り入れたり、 あるいは社内に広めるための活動をしたりなど、 攻めるところは積極的に攻めつつ、 一方で守りも固めています。 豊島氏:それで言えば、
最近の取り組みとして 「守りのCI、 攻めのUI」 があります。まず守りの部分では、 CI (Continuous Integration:継続的インテグレーション) ツールの強化を進めています。アプリケーションのソースをプッシュすると、 それを解析し、 品質レポートを出力しつつアプリケーション配信サービスにアップロードするところまでを自動化しています。ツールとしてはJenkinsを中心に、 ソースコード解析をSonar、 テスターなどへのアプリケーションの配布にDeployGateを使っています。 これらを導入する前は開発チームの中にビルド職人みたいな人がいて、
その人でないとビルドできないとか、 Google Playにアップロードするのはこの人、 といった感じだったんですが、 そうした人たちがやっていることを紐解いて自動化しました。開発者が何か意識する必要はなく、 最小のコストで一連の開発フローが自動的に流れるような作りになっています。また、 最近はCIをカスタマイズしたいという要望も生まれていて、 すでにCircleCIやTravis CIのように、 YAMLで設定をカスタマイズできるしくみを導入しています。 - ――もう1つの攻めのUIとは、
どういった取り組みなのでしょうか。 豊島氏:アプリケーションを開発していると、
工数や締め切りの関係上、 どうしてもアニメーションの細部まで気を配ることができないケースって多いと思うんです。そこに対して、 僕らで最先端の思い切りこだわったユーザインタフェースを作ってみようよという話でプロジェクトが始まりました。 現状で考えている目標は、
100個ほどのUIパーツを作り、 そのうち10%くらいが実際に世の中に出しているアプリケーションに使われることです。完成度の高いUIパーツができたら、 オープンソースでの公開なども視野に入れています。また、 これをきっかけにして、 企画側と開発側でのユーザインタフェースについての会話が活発になることも期待しています。ユーザインタフェースに違和感があっても、 具体的にどうしたいのか、 企画側から伝えるのは意外と難しいんですよね。そのとき、 「この50番のUIパーツみたいな感じで」 というように、 会話を成立させるためのツールとして使われればうれしいですね (写真3)。
求められているのは自分の範囲を決めないエンジニア
- ――腕時計型や眼鏡型など、
ウェアラブルデバイスも盛り上がっていますが、 それらについてはどのように見ていますか。 豊島氏:リクルートライフスタイルとしては、
来店するだけでリクルートポイントが貯まる 「ショプリエ」 (写真4) というサービスでApple Watch向けのアプリも提供していますが、 実際にスマートウォッチでどんなユーザ体験ができるのかは模索中です。個人的には、 スマートウォッチのようなウェアラブルデバイスだけでなく、 リモートで鍵を閉めたり照明をつけたりできるスマートホームも視野に入ってきているので、 それを店舗運営に活かせないかということも考えています。 小川氏:たぶんウェアラブルデバイスは、
すべてのものがインターネットにつながるIoT時代までのつなぎだと思っています。もちろんキャッチアップする必要はありますが、 次は間違いなくIoTが来ると思っているので、 そこに向けて何をすべきかを考えることのほうが多いですね。 - ――最後に、
リクルートライフスタイルで求められているエンジニア像を教えてください。 小川氏:範囲を決めない人でしょうか。エンジニアだけどマーケティングの知識も持つ多能工のような形もありますし、
インフラからフロントエンドまで対応できるフルスタックエンジニアのような働き方もあります。働く中でどんどん進化していって、 「自分はこれをやる人なので」 などと範囲を自分で決めつけずにやれる人にとっては、 リクルートライフスタイルは働きやすい職場だと思います。 豊島氏:自分で学習し続ける人ですね。エンジニアとして興味がある方向にどんどん伸びていく人。それとエンジニア以外の人たちともフラットに会話ができる人。自分は技術屋だからなどと変な線引きをせず、
ほかの職種の人たちともしっかり会話ができるとよいですよね。 - ――本日はありがとうございました。