あらゆる人と、metapsが交わる場所

【エンジニア横断勉強会】人気急上昇中のキャッシュレスアプリ pring の裏側にせまる!

f:id:meetaps:20190930095151j:plain

さて、始まりました。

 

メタップスの各社エンジニアが集まり行われる横断勉強会!

今回、発表してくれるのは、

立花優斗さんです。

f:id:meetaps:20191202114508j:plain

「プリン」というFintechサービスを開発しているイケメンエンジニアです。

 

前職ではそこまでコードを書くことがなく、
プリンに入社してきてから、がっつりコードを書き始めたんです。
と自信なさげに言っていましたが

 

プリンを支えるエンジニアとして、
バリバリコードを書き、貢献してくれています。

「プリン」ってどんなサービス?

それでは、立花さんが開発しているプリンについて、見ていきましょう。

プリンは、2018年3月にリリースした、Fintechのアプリです。
お店でお金を払うだけでなく、
個人間でもお金を渡すことができるサービスです。

 

f:id:meetaps:20191202121607p:plain

2019年の7月には累計総金額が80億円突破するなど
リリース以来、急成長を遂げているサービスです。(おめでたいっ!)

プリンの特徴

その特徴は、なんといっても

手数料が基本 0円!!

※一部金融機関出金、セブン銀行ATMの出金の際手数料が発生する場合があります。

 

f:id:meetaps:20191202121801p:plain

お金をもらうときの手数料はもちろん、
送金時や、支払時

"プリンから口座にお金を戻すとき"も基本的に手数料はかかりません!

 

ほとんどのキャッシュレス系のサービスでは、
自分の口座にお金を戻すときは手数料がかかりがちですが、、
ほとんどの出金を0円でできるのは驚異的ですね!

 

自分の知る中では、最もユーザーに優しいキャッシュレスサービスです。

 

というのも、プリンというサービスのビジョンが、
「お金コミュニケーションの創出」にある
からだそうです。

 

手数料の負担をとにかく抑え、もっと気軽にお金のやり取りをし、
お金のコミュニケーションを創る。

 

ユーザーにとっては、涙が出るほどうれしいので、
このまま続けてほしいですね。

 

ちなみにmetapsでは、オフィスで購入できるお菓子や、
食品、経費精算までプリンで行っています。☺️

 

f:id:meetaps:20191202122216p:plain
 

プリンの開発体制は? 

使用技術は多岐にわたります。

バックエンドは、
PHPのCodeIgniterというフレームワークも一部ありますが、
基本はRuby on Railsです。

 

Railsでは、Trailblazerというgemを使っています。
ざっくりいうとサービスクラスを作るためのgemで、ModelやControllerからビジネスロジックを切り離すことで、コードに秩序をもたらしてくれます。

また、最近、MetabaseというOSSのBIツールを導入したということで、
知見がたまり次第、共有しますとのこと。

ありがたいっ..!!!

 

f:id:meetaps:20191202121842p:plain

マイクロサービスアーキテクチャへの移行 

また、プリンでは、
積極的に以前のモノリシックなアーキテクチャから
マイクロサービスアーキテクチャへの移行を進めており、

 

インフラを1から見直し、
APIの再設計を行いながら、
もちろん新規機能開発と並行して移行しています。

 

もうすでにインフラの再設計は終わり
APIを鋭意開発中とのことです。


f:id:meetaps:20191202121907p:plain

PHPからRailsへの移行は、Trailblazerを使い肥大化を防ぐ

マイクロサービス化にあたり、
APIの再設計にくわえ、バックエンド言語の見直しを行い
Railsへの移行を行っています。

 

その際に、Trailblazerを用いることで
サービスクラスにロジックを切り離して、ModelやControllerの肥大化を防ぎ、
強力なフロー制御をおこなうことができるため、

 

可読性が向上が期待できるとのこと。

Railsで、マイクロサービスに移行しようというときや、
あまりにもControllerなどが膨らんでいるときは、導入を検討するのは
おすすめですよ!と熱弁する立花。

 

f:id:meetaps:20191202122006p:plain

プリンのアプリは、どうやって開発しているの? 

現在、プリンのアプリは、
iOS,Androidの両方で動作するCordovaというフレームワークを
用いて開発しています。
しかし、パフォーマンスや
メンテナンスコストの問題があり、

 

将来的には、KotlinやSwiftのようなネイティブ言語への移行を
予定しているとのこと。

 

f:id:meetaps:20191202122029p:plain

非エンジニアでも扱いやすいデータ可視化ツールMetabaseの導入

また、ユーザーの傾向分析やモニタリング業務には、エンジニアだけではなく、
非エンジニアの人もデータを触ることが多いと思います。

 

そこで、非エンジニアでも扱いやすい、
データ可視化ツールのMetabaseを導入しました。

SQLを扱えないひとでも、
クエリビルダがあるためわかりやすく、
ReadOnly権限を付与することもできるので、事故を防げて安心です。

 

また、入力するパラメータの型を指定するだけで、
カレンダーのような、適した形式のフォームを設定してくれます。

 

まだ使い始めて数ヶ月ということなので、
ぶっちゃけた、使用感などの続報に期待ですね!

 

f:id:meetaps:20191202122047p:plain

気になるプリンでの働き方は? 

労働環境。重要ですよね。

 

プリンは、フレックスタイム制をとっており
コアタイムが11:00-16:00。

基本的には週に1回定例を行い、
ここではエンジニアだけでなく、Biz側やベンダーも含めた進捗報告や、
新規機能の要望などを話していきます。

 

タスク管理は、GitHub Issueベースで行い、
カンバン形式で各タスクのステータスを確認しています。


また、日報を始め、インフラのアラートやエラーログ、ECSへのデプロイツールなどにSlack Appsやインテグレーションを活用し、エンジニアにとって働きやすい環境を整備しています。

 

f:id:meetaps:20191202122129p:plain

最後に。

累計総金額が80億円を突破し
人気急上昇中のお金コミュニケーションアプリ 「プリン」

 

そんなプリンの裏側まで、少しでも伝わったでしょうか。

市場規模からみても、今後伸びる可能性が高い、
キャッシュレスアプリ。

 

 プリンでは、新規機能やリプレースをリードしてくださるリードエンジニアや、APIなどをゴリゴリ開発したい!というバックエンドエンジニアを募集しています。

気になった方は、採用ページも覗いてみてくださいね!