株式会社ONE COMPATH

楽しく書けるRubyで作る、楽しみながら歩けるサービス 「あなたの一歩が宝に変わる」aruku&

今回は、Ruby bizグランプリ2020で特別賞を受賞した、ウォーキングアプリ「aruku&(あるくと)」について、株式会社ONE COMPATH(ワン・コンパス)のaruku&開発G 池本 聡氏、aruku&開発G 矢代 諭史氏、広報 千野 賢一氏にオンラインにてお話を伺った。

〈 aruku&開発Gのみなさん(前列)とaruku&企画Gのみなさん(後列) 〉

株式会社ONE COMPATHは2019年4月1日に、地図検索サービス「Mapion(マピオン)」を運営する株式会社マピオンを母体に、凸版印刷株式会社の電子チラシサービス「Shufoo!(シュフー)」の事業を統合して新しく生まれた会社である。
aruku&やMapion、Shufoo!の他にも、距離測定サービス「キョリ測」 や家事代行サービスの比較検討サイト「カジドレ」、新しいものでは、サイクルコンパスアプリ 「U-ROUTE(ユールート)」などがある。

5周年を迎えたaruku&

aruku&はつい先日、2021年11月7日に5周年を迎え「ゴーゴーあるくと祭り」を開催している。
残念ながら、この記事が公開される頃にはほとんどのイベントが終了しているが、「太陽が当たる!!100日ウォーキング」は2022年2月14日まで実施されているので、運動不足が気になる年末年始、来年からは少しは運動しようと思っている方は、「太陽への到達」に協力してみてはどうだろうか。(※1)

5周年を迎えたaruku&は、株式会社マピオンの時代からあるサービスである。
そう聞くと、地図が得意な会社が強みを生かして作ったウォーキングアプリと思うが、「それもそうなのですが、、、」とaruku&のコンセプトについて熱く語ってくれた。
「コンセプトが本格的なウォーキングアプリじゃないんです。
健康に関心がない人でも楽しく使ってもらえるか、歩くことに無関心な人でもどうすれば継続的に歩いてもらえるかを常に考えて作っているサービスです。」(千野氏)
ウォーキングに無関心な人でも、つい歩いてみようかなと思わせる、様々な仕掛けを取り入れているそうだ。

aruku&には、イタチの「ぽたろう」という公式キャラクターがいて、公式Twitter(https://twitter.com/arukuto_o)でイベントの告知などをしている。
ぽたろうは、語尾には「クト」がつき、体つきはムチムチしていてかわいい。
「デザインのテイストも親しみやすさをあげるために、見直したりしています。絵があると楽しくできますからね。」(池本氏)

基本的な使い方としては、地図上に出現する様々な住民キャラクターの依頼を受け、依頼を達成するとお宝カードがもらえ、集めると賞品が当たる抽選に参加できる。
キャラクターのいる場所に実際に歩いていくと、地図上で話しかける(タップできる)ようになり、依頼を受けることができる。
依頼された歩数を制限時間内に歩くと依頼達成となり、お宝カードがもらえる。
500歩歩くとウォーキングポイントがもらえるため、住民キャラクターに会いに行く際にもわざと遠回りをして歩数を稼ぐ人もいるそうだ。

様々なミッションに挑戦して賞品に応募したり、キャラクターを集める、ランキングで競うなど、それぞれの好みに応じた楽しみ方ができる。

他にも、月替わりの注目賞品や、期間限定の住民キャラクターの出現など、様々なイベントやキャンペーンで、ユーザーを飽きさせない工夫をしている。

直近の事例では、アイドルグループ「B.O.L.T」とのコラボレーション企画「B.O.L.T×aruku& 進め!まわりみち」キャンペーンがある。

B.O.L.Tが今年9月に発表した2ndアルバム「Attitude」には、“歩く”をテーマとした楽曲「まわりみち」が収録されています。「まわりみち」が持つ、諦めたり恐れたりすることなく前に向かって歩き出そう、という明るくポジティブなメッセージが、「aruku&」が目指す楽しいウォーキングアプリの世界観とマッチしていることから本コラボレーションが実現しました。
(https://onecompath.com/news/release/10587/より引用)

メンバーが住民として登場し、依頼を達成するとサイン入り色紙やポスターが当たるほか、ライブ会場ではaruku&限定ステッカーをプレゼントするなど、まさにファンにとっては「あなたの一歩が宝に変わる」イベントだったようだ。

スタンプラリー

コロナ禍で中止になったイベントの再開に一役買った例として、東京都港区が主催した美術館・博物館をめぐるスタンプラリー(※2)( https://onecompath.com/news/release/10593/)を紹介してくれた。
スタンプラリーは地域活性化を目的として開催されることも多く、現地に行くことは避けられない。
そこで、本スタンプラリーではできるだけ他の人との接触を避けながら開催する方法として、紙にスタンプを押すのではなく、aruku&のスタンプラリー機能を活用する。
対象の美術館や博物館に設置されているQRコードを読み込むとaruku&の中でプレゼントの応募カードを得られ、集めたカードの枚数によってプレゼントがもらえる仕組みだ。
昨年度まではパンフレットを入手しなければ参加できないイベントだったが、デジタル化することで多くの人がスマートフォンで気軽に参加することが可能となり、パンフレット印刷経費の削減にも繫がったという。

阪急電鉄と自治体と協働で、オリジナル16コースを作成し、阪急沿線の観光スポットを巡って「観光あるきカード」を集めると地域の賞品が当たるウォーキングイベント(https://www.hankyu.co.jp/area_info/kankouaruki/arukuto.html)を実施している。
このウォーキングイベントは、コロナ禍でも人との接触を避けながら自分のペースで巡ることのできるaruku&のプランのほか、開催日時は固定されるが地元のガイドと一緒に巡るプランを提供し、ユーザーの好みに合わせて選べるようになっている。

今後のイベント

2022年春には、5周年イベントで募集した「みんなのおすすめコース」から選ばれたウォーキングコースも追加される予定だ。
直近では、新年から干支の虎が住民として登場する予定だそうだ。
残念ながら今開催されているイベントは年末で終了するものが多いが、イベントは頻繁に更新されているため、現在実施しているイベントについては、公式Twitter(https://twitter.com/arukuto_o)を参照してほしい。

aruku& for オフィス

〈 広報 千野氏(左)とaruku&開発G 池本氏(右) 〉

このような個人で楽しむ使い方の他に、企業向け、いわゆるBtoBのサービスとしての使い方もある。
https://www.arukuto.jp/biz/

これまで企業で開催していた、運動会やウォーキングイベントがコロナ禍で開催しづらくなった。
その代替として、aruku&を活用したオンラインウォーキングイベントを提案しているのだそうだ。
「各社員がそれぞれ家の近くで歩くこともできるので、リモートワーク中でも参加することができます。
密にならないし、一ヶ所に集まる必要もありません。」(千野氏)
累計歩数や平均歩数、達成日数をグループを作って競ったり、中間発表を設けて話題を増やすなど工夫して、社員間のコミュニケーションの活性化にも役立てているようだ。

企業向けイベント 1day3000

導入企業が社内向けにするウォーキングイベントの他に、ONE COMPATHが主催し、どの企業でも無料で参加できる「1day3000」というイベントも随時開催している。
多くの人に無理なく参加してもらえるよう、1日3000歩を目標にしている。
「1day3000は当初、導入企業向けのイベントでしたが、今は、どの企業も無料で参加できる、広く開かれたウォーキングイベントです。
これまで5回開催しましたが、初回と比べて参加企業数が5.4倍、参加者数が14倍に増えました。」(千野氏)

これほど参加者が増えたのはなぜだろうか。
「コロナ禍でテレワークが急激に広まることで、通勤という運動機会が失われ、多くの企業様からは従業員の運動不足を心配する声があがりました。
運動会などのリアルイベントも難しい状況の中、オンラインイベントを気軽にできるものとして注目いただきました。
他にも、企業の人事や総務の方向けに健康経営に関するウェビナーを開催し、そこでこのイベントを紹介しています。」(千野氏)

なお、1day3000の第6回は2022/02/04(金)~2022/02/20(日)の17日間で開催される。
参加申し込み期限は2022年1月13日。詳しくは以下のURLを参照してほしい。
https://www.arukuto.jp/biz/1day3000/
残念ながら、本記事をお読みいただいている時点で締切を過ぎてしまっている場合、継続的に開催しているそうなので、次の開催をお待ちいただきたい。

開発効率を重視してRailsを採用

新規サービスとしてaruku&を開発するにあたっては、スピード感が求められたという。
そこで、開発効率を重視してRailsを採用したのだそうだ。
「社内でもRubyを利用し始めた時期でした。
フレームワークの機能を使ってスピーディーにものが作れる開発効率、小さく始めて大きくスケールしていく拡張性を考慮してRailsを採用しました。
認証機能に関するライブラリが充実していたことも決め手の一つでした。」(池本氏)

aruku&以外にも様々なサービスでRubyやRailsを使っているそうだ。
「最初は地図検索サービス『Mapion』の一部でRubyを使い始めました。
開発効率の良さを実感したことで、Rubyを社内で普及させようという動きが出てきて、社内で一気に広がっていきました。」(池本氏)
「Mapion」のほかにも、マピオン電話帳やキョリ測などもRubyで作られているとのこと。

利用しているgem

aruku&では、ユーザーの使うスマホアプリと通信するAPIと、社内および法人向けに提供している運用管理者向け管理画面で認証の仕組みを導入しているが、スマホアプリ用APIではDoorkeeper、管理画面ではdeviseと使い分けているそうだ。
スマホアプリにはログイン機能は無いが、なりすましを防ぐためにトークンによるセッション管理を実現する必要があった。
一方で管理画面では、IDとパスワードでログインする機能を実現する必要があった。
実現したい内容に合わせて使いやすいgemを検討した結果、このような使い分けをしているそうである。
これらのライブラリを採用した基準として、活発に開発されている、他のサービスでもよく使われていてリファレンスが多いことなどをあげてくれた。

他にも導入して、実際に使っている人から好評だった例として、select2-railsをあげてくれた。
「JavaScriptライブラリのラッパーですが、select2-railsを管理画面のプルダウンで使っています。
aruku&の管理画面で賞品アイテムを設定する際、アイテム数が非常に増えてプルダウンメニューから選択することが難しくなったので導入してみました。
賞品の名前の一部を入力すると候補が絞られて選びやすくなりました。
導入もスムーズにでき、社内の運用チームからも好評です。」(池本氏)

エンドユーザーの使いやすさだけでなく、サービスを運用する側の使いやすさも考慮しながら開発していることが窺えた。

バージョンアップはこまめに実施

RubyやRailsのバージョンアップをこまめにしているそうである。
それには理由があって、
「以前バージョンアップを溜めたことがありました。
しばらくバージョンアップしていない間に、サービスの規模がどんどん大きくなり、Railsのパフォーマンスに限界を感じていました。
そろそろ速く動くコンパイル言語等に移行した方が良いのではと議論したこともありましたが、Railsも性能が良くなっているはずだろうと思い、試しにバージョンアップをしてみることになりました。
そこで、Rails5.2にバージョンアップしたところ、サーバーのCPU負荷が大幅に下がり、台数も減らすことができ、パフォーマンスにおける課題が解消しました。
Railsの性能が想像以上に良くなっていたんですね。
それ以後は、RubyやRailsのバージョンアップは随時取り込むようにしています。」(池本氏)

また、こまめなバージョンアップのためにテストの整備を心がけているそうだ。
「RSpecは全機能書くようにしています。
普段から、全機能のRSpecの通しのテストを必ず通るようにしてからリリースするようにしています。
バージョンアップによる弊害は表に見えないと気づけないので、自動テストが重要になってきます。
仮にバージョンアップ時にどこか動かなくなっても、不具合などは拾えるようになっています。」(矢代氏)

Rubyの教育について

社内でRubyを積極的に使っていこうとなった時、Rubyに詳しい社内エンジニアを中心に勉強会を開催し、ハンズオンやチュートリアルを実施していたそうだ。

以前は、主に他の言語を使っていたサーバーエンジニアがRubyに乗り換える流れだったが、最近では、iOSやAndroidのエンジニアがサーバー側の開発もできるよう、いわゆるフルスタックエンジニアになる取り組みも進めているようだ。

「aruku&の開発チームは少人数構成で回していますが、その中でサーバーサイド(Rubyエンジニア)の人手が足りなくなることが多いです。
そこで、iOS, Androidのエンジニアを育成してサーバーサイドの開発も手伝ってもらっています。
Rubyエンジニアも非常に助かるうえに、手伝った本人たちもフルスタックエンジニアになりたいという目標を達成できるので、全員にメリットがある状況だと思っています。」(池本氏)

「最初は、MVCやフレームワークの構造を理解してもらうために、簡単な機能の改修や、画面のレイアウト修正などから着手してもらっています。
その後徐々に難易度の高いタスクをやってもらい、現状では、API設計やモデル定義までできるようになってきています。」(矢代氏)

iOS, Androidの開発者がサーバー開発者としてもどんどんスキルアップしていっているようであるが、教える際に何か工夫していたりするのだろうか。

「特に工夫をこらした教育のためのフレームワークがあるとかではなく、業務の中で成長していくケースが多いです。簡単な説明をしたらまずは作ってもらい、コードレビューを通して教えている状況です。」(池本氏)

「Railsは、初めて触れる人でも自身で調べたら標準的な使い方がわかって、一定の水準以上に品質が安定したものを作れる、そういうところが大きいかもしれないですね。」(矢代氏)

運用はAWSを利用

aruku&は、AWSを使用しているが、以前は、デプロイにCapistrano、モニタリングツールのNew Relicなど、ツール群もRubyのものを使っていたこともあるそうだ。

「AWSのEC2上でRailsを動かしています。
一部の機能はsidekiqでRedisにタスクをためて、処理した結果をAPIで直接返すのではなく、AmazonSNSを使って、スマホのpush通知機能を利用して別の経路でクライアントにレスポンスを返すということをしています。
APIのレスポンスを遅延させず、サーバーの詰まりがないように処理することができています。」(池本氏)

時代の流れにのって、Railsと共にスケールしていきたい

5周年を迎えたaruku&であるが、今後についてどのように考えているのかコメントをいただいた。

「プロトタイピングのフェーズからサービスのグロースの時期を経て、5年かけて大きく成長してきました。
Ruby、Railsで不安をおぼえた時期もあったのですが、今のところスケールできているので、技術選定としては間違っていなかったと思っています。
今後、更にスケーリングし、サービスが拡大しても、フレームワークに限界が来ることには恐らくならないと思っています。
一部、他の言語のマイクロサービスに移行する傾向もありますが、基本的にモノリシックなRailsを育ててきて、Railsに不満を感じる状況には至っていません。今後も使い続けていくと思います。」(矢代氏)

「Railsの新しい機能も次々と出てきています。最近ではマルチDBなども導入してさらに負荷を下げていける方法があるのではないかと思っています。
Ruby, Railsの新しい機能を取り入れながら、よりパフォーマンスの高いサーバーを作っていきたいですね。」(池本氏)

「aruku&はこの5年間、“あなたの一歩が宝にかわる”をコンセプトに、健康にあまり関心のない人でも、楽しく継続的に歩いていただけるサービスを目指してきました。
他社でも移動でマイルやポイントが貯まるサービスが出てきて、「日常生活の移動を価値に代える」というトレンドが注目されてきており、よりスケールアップしていく機運が高まってきていると感じています。
スケールアップしていくときは、RubyやRailsの機能に大いに期待しています。」(千野氏)

※1 ただし、太陽に到達した時点でキャンペーンは終了
※2 本スタンプラリーは2021年12月24日まで

※本事例に記載の内容は取材日時点(2021年11月)のものであり、現在変更されている可能性があります。