- 株式会社Housmart
- CIO
- 松江 宏樹
「ReTech」カウルのアプリ開発!1ヶ月半でアプリをリリースするための工夫とは
〜不動産系スタートアップ「Housmart」の、効率化されたアプリ開発ノウハウと、アプリリリース前に確認すべき「5つのポイント」に迫る〜
ReTech(Real Estate Tech)領域で、中古マンションの売買サービス「カウル」を展開する、株式会社Housmart。
「マンションの売買」という、一見するとユーザーとの接触回数は少なく思えるサービスだが、同社ではユーザーの「継続率」を重視しているという。
その継続率を向上させる施策のひとつが、カウルのネイティブアプリ化だ。2016年8月にはiOS版アプリをリリースし、継続率は30%増え、コンバージョン数も倍になった。
iOS版アプリ開発では、開発を効率化するために、さまざまな工夫を施したという。WebViewを効果的に活用した柔軟なアプリ設計に始まり、「Firebase(ファイアベース)」「Keen.io(キーンアイオー)」「Fabric(ファブリック)」などの各種サービスを有効活用している。
今回は、同社でCIOを務める松江 宏樹さんに、アプリ開発のノウハウから、そこから得られたリリース前の「5つのポイント」について、幅広くお話を伺った。
IT化が進まない不動産業界に、テクノロジーを注入
前職は楽天株式会社で、OSSで公開していた分散ストレージや、iOSアプリの開発をしていました。
Housmartに入社したのは、もともと楽天の同期だった、CTOの宮永に誘われたことがきっかけです。実際に作っているプロダクトの「カウル」も見て、IT化が進んでいない不動産業界には、できることが無数にあるなと興味を持ち、2016年の2月に入社しました。
カウルは、中古マンションの売却と購入をサポートするサービスです。売り出し価格や売買履歴だけでなく、賃貸に出したときの価格なども、実績ベースのデータで見ることができます。
▼中古マンションの売却と購入をサポートする「カウル」のウェブサイト
技術的なところで言うと、機械学習を使っているところも特徴的だと思います。今までは、業者が似たようなスペックの物件を比べて「5,000万円くらいで売れると思います」と判断していましたが、機械学習によって算出した「推定価格」を提供しています。
マンションの売買サービスでもKPIは「継続率」?
カウルの課金モデルは、1回の取引で手数料を頂くプランだけでなく、月々1万円の固定プランもあります。その分、手数料を頂かないので、結果としてコストを抑えることができます。
また、ゆくゆくはリノベーションや、家のメンテナンスの部分にも入っていきたいと考えています。買って終わりの関係ではなく、ライフプラットフォームとしてユーザーをサポートしたいと考えています。
ですので弊社では、「マンションジャーナル」というWebメディアも運営しています。購入に至るまでの手続きやローンなど、知識を学習するコンテンツを配信し、日々使ってもらえるサービスにしていこうと考えています。
そうしてユーザーさんと長い付き合いをしていくために、2016年の8月にはiOS版アプリをリリースしました。その結果、カウルの継続率は30%ほど上がり、コンバージョン数も2倍になりました。
アプリを最短でリリースするための工夫とは?
カウルのiOS版アプリは、工数で言うと240時間ほど、1ヶ月半という短期間でリリースしました。それを実現するためにも、アプリの開発工程には様々な工夫を施しています。
例えば、アプリ内のいくつかの画面を、ネイティブではなくWebViewで実装しています。どこをネイティブ実装にして、どこをWeb側で実装するのか、あらかじめ要件を固めて進めていきました。
基本的なところで言うと、ユーザーが見る機会が一番多い「物件の詳細画面」は、WebViewで作っています。今後もUIが大きく変わることが想定されていたので、Webで実装することで柔軟性を持たせています。
実はユーザー登録の部分もWebViewで作っています。登録はWebで行い、ログイン情報だけを、ネイティブ部分と共有する仕組みです。
ユーザー登録のフローって複雑で、それを全部ネイティブで実装してしまうと、変更があったときに追従するのが大変なので。いまはWebにお任せする形にして、ある程度形ができたら、ネイティブで実装しようと考えています。
外部サービスも積極活用。Firebase、Keen.io、Fabric
開発を効率化するために、外部ツールも積極的に活用しています。ツールを選定するポイントは、機能の網羅性や、使いやすさです。
例えば、Web版ではアクセス解析にGoogleアナリティクスを活用していますが、アプリでは「Firebase(ファイアベース)」を使っています。Firebase Analyticsなら、生データをGoogle BigQueryにダンプして、直接クエリを実行することもできます。
Firebaseは機能が豊富なので、他にもプッシュ通知の配信や、設定ファイルの配布に活用しています。
また、データ分析には「Keen.io(キーンアイオー)」という、ログ収集基盤のSaaSを使い、誰でもKPIをチェックできるようにしています。
アプリケーションからKeen.ioのAPIを実行して、アクセスログや行動ログを書き込みます。そうして保存されたログは、SQLを直接書かずに、UI操作だけでビジュアライズもできます。
開発中のベータ版の配布には、「Fabric(ファブリック)」を使い、開発担当でない社員もテストができる環境にしています。
Fabricには、「Crashlytics(クラッシュリティクス)」というクラッシュ検知のサービスもあります。Firebaseにも同等の機能があるのですが、今は使い慣れているということもあり、Crashlyticsを活用しています。
アプリ化を提案したのは大臣?月替わりの大臣の役割とは
実は、アプリをリリースするというのは、「大臣」が決めた施策なんです。
弊社では、毎月それぞれのメンバーに、大臣としての役割を与えています。「リテンション大臣」「コンバージョンレート大臣」など、現状の課題に担当を付けて、サービスの改善をしています。
実施した施策、数値がどのくらい変わったのかということを大臣が共有し、次のアクションを全員でディスカッションをして決めていきます。
実際に大臣がどのような施策を実施したかというと、例えばリテンション大臣は、メール通知を改善しました。シンプルなHTMLメールから、画像も使ったリッチなメールに変更したり、文面も大きく変えてみたりしました。
オペレーションのスピード改善大臣は、オペレーターが不動産情報を入力するスピードを計測して、所要時間を半分にしようと試みています。入力項目に対してサジェストを出したり、バリデーションをしっかりとかけて、オペレーションの改善を図っています。
大臣を決めることで、担当者が明確になりますし、やりがいも生まれます。エンジニア以外にはプログラミングが伴ってアクションが難しい部分もありますが、アクションの部分は最適な人に依頼するようにしているので、非エンジニアも含めた全メンバーが大臣を務めています。
アプリリリースで気をつけるべき、5つのポイント
カウルのアプリ開発を通して、アプリをリリースする前に、気をつけておくべきことが5つあるなと感じました。
まず、ユーザーにアップデートを促す仕組みを組み込むべきだということです。「新しいバージョンがあるので良かったらどうですか」というパターンと、「絶対にアップデートしてください」という2つのパターンを、リリース前に用意していた方がいいですね。
私たちは、Firebaseにある「Firebase Remote Config」という機能を利用して、アップデートが必要なバージョン情報を管理しています。
ふたつめは、アプリをインストールさせる導線の設計です。Apple公式の「Smart App Banner」を使うなどして、Webに訪れた人にも「アプリがあるんだ」と認識してもらうように設計するべきです。
みっつめは、サポートするOSのバージョンや対応デバイスを、開発前に決めることです。開発スピードが大きく変わってきます。
次に、リジェクトを想定したスケジュールを組むことです。2回目、3回目の申請で、前回まで言っていなかったことを突然指摘されたりもするので(笑)。
最後は、クラッシュ検知のツールを事前に選定しておくことです。今回はFabricを使っていますが、今はFirebaseなど選択肢も充実していて実装も簡単なので、とりあえず何かを入れておくべきだと思います。
モバイルで5,000万円の物件を買うという体験も、あり得る時代になってきたのかと思います。今後は、Android版のリリースも控えているので、より良いアプリを作っていきたいですね。(了)