2021年2月5日に「MoT Online Tech Talk Vol.1 No.1*タクシーアプリを支えるバックエンド」(connpass)を開催しました。
本記事では当日の内容を簡単に紹介します。
MoT TechTalkは、Mobility Technologiesのエンジニアたちが、タクシーアプリGOをはじめとしたサービスやプロダクトを開発する中で得た技術的ナレッジを共有するイベントです。
MoTが提供しているサービスやプロダクトはさまざまな技術を活用しています。
https://speakerdeck.com/mobilitytechnologies/mot-ver-2021-6
特にバックエンドについては、API系は以前からGo言語、管理画面系はこれまでRubyおよびScalaで開発していましたが数年前からGo言語への全面移行を進めています。
今回のMoT Tech Talkでは、JapanTaxiアプリとMOVアプリという異なるアプリが統合する形で生まれたGOが、どのようにしてデータ同期や決済代行サービスの対応など、2つのサービスの統合を果たしたのか、その舞台裏をオンライン配信しました。
今回はこちらのメンバーが登壇しました。
タクシーアプリGOで提供している機能や、その機能を実現するために必要な要素について概要を紹介します。
GOのシステムはMOVをベースにすることにしたものの、MOV対応タクシーだけでなくJapanTaxi対応タクシーの配車も可能にするために、配車の仕組みを統合していく必要がありました。
アプリ間の機能差や仕様差を整理した上で、どうすればダウンタイムなく統合できるか考える必要がありました。ここでは統合に向けて取り組んできたことを紹介します。
配車機能は無事に統合できたものの、現時点ではまだJapanTaxiアプリで実現できたことすべてがGOで実現できている訳ではありません。
また機能差を埋めるだけではなく、今後はGOならではといえる機能も提供していきたいと考えています。ここでは私たちが考えている少し未来について紹介します。
ここまでの動画やスライドをご覧になっていただいて、さらに深くGOのバックエンドを知りたくなった方はぜひこちらのコンテンツもご覧ください!
「移動で人を幸せに。」というミッションの達成に向けて一緒にチャレンジしてくれる仲間を募集していますので、事業内容や技術に対する考え方に共感いただけた方、MoTで特に活用しているGo言語での開発に関心ある方はぜひ採用情報もあわせてご確認ください!
タクシー車両の動態情報(位置座標やメーター情報)をクラウド上に収集するシステムについてより深く知りたい方はこちらの動画をご覧ください。
Tech Talk(38:05頃)では「MOV」と「JapanTaxi」それぞれ別に存在している収集システムを一元的に扱うための仕組みについて紹介しましたが、こちらの動画では現在開発中の次期システムについて紹介しています。
タクシー配車における必須処理のひとつに「Point-In-Polygon」判定という処理があります。
例えば駅や空港、病院など既存のタクシー乗り場がある場所に対して配車を行うのはトラブルの原因にもなり得るので避けなければなりません。また逆にすでにタクシー乗り場で待機している車両に対して配車指示をするのも同様に避ける必要があります。
こちらは「GO」の前身である「MOV」の資料ですが、ポリゴンで指定された特定エリア内に迎車位置が指定されていないか、タクシー車両が含まれいないかを判定する「Point-In-Polygon」をいかに高速に実現しているかを詳しく紹介しています。
MoT Online Tech Talk は不定期開催しています。過去の開催レポートは こちら にもありますので、ぜひご覧ください!
MoTの最新技術情報は公式Twitterアカウント @mot_techtalk で随時発信していきますので、ぜひフォローして続報をお待ちください!
MoT では多くの専門領域でエンジニアを大募集しています。興味のある方は 採用情報ページ まで!