Owlyで採用した技術

このエントリーは、エキサイト Advent Calendar 2017の12/2の記事です。

こんにちは、エキサイトで電話占いフレンズを担当しているエンジニアの大重です。よろしくお願いします。
今回は、先日新しくリリースしたOwlyというサービスとそこで採用した技術の選定理由について紹介したいと思います。

Owly

Owly(オーリー)は、占い師に直接電話をかけて占いをしてもらえるサービスです。
鑑定料金は業界最安級の10分980円からで、通話料は0円、占い師に自分の電話番号が知られることも無いといった特徴があります。
このブログを閲覧している皆さんは占いにはあまり興味が無いかもしれませんが、是非試してみてください!
登録はこちらから! → Owlyの仮登録
(ダイレクトマーケティングはこれで終わりです)
Owlyで採用した技術_f0364156_15331092.jpeg

採用技術と採用理由

さて、本題ですが、今回Owlyを開発するにあたって、いくつかの(私たちチームにとって業務で使ってこなかった)新しい技術を採用しました。
そのうちの2つが、 LaravelVue.js です。
(これらの技術がどのようなものであるかは、今回は割愛させていただきます。)
まず、新しい技術を採用した大きな理由としては、これまで業務として触れてこなかった新しい技術を使いたい!という思いがあったからです。
これまでは、主に BEAR.Sunday / BEAR.Saturday と jQuery を使って開発を行ってきました。
もちろん既存技術に問題は全くありませんが、新しいことをやりたい!と思うのがエンジニアの性で、今回は新しい技術を採用することにしました。

Laravelの採用理由

■弊社の別のチームで既に導入実績があった
新しい技術を採用する際にネックとなるのが、どういう問題が起こるかわからず知見もノウハウも無いという点です。
その点、社内では既に実績があり何かあれば聞くことができる上に、私たちのチームは新しい技術に触れられるということで、申し分なかったです。
■フルスタックなフレームワークであり、標準的なMVCである
リリース日が早めに設定されていたので、学習コストをそこまでかけずに早い開発スピードで進められる必要がありました。
そのため、フルスタックであり慣れ親しんだMVC設計ができる Laravel はちょうど良かったです。
■Middlewareが便利
Laravel の提供している Middleware という機能は、HTTPリクエストに対して事前処理や事後処理が簡単に定義できます。
サービスの性質上様々なバリデーションやフィルターが必要なため、Middleware の機能を活用することで本質ではない横断的な処理を共通で定義でき、大変便利です。
Owlyで採用した技術_f0364156_15492219.png

Vue.jsの採用理由

■Laravel と相性が良い
Laravel を作った人が Vue.js を支援していて、 Laravel に入っている package.json にもはじめから Vue.js が記述されているという推しっぷりが凄いです。
■MVVMアーキテクチャで、簡単簡潔にコーディングできる
モダンなMVVMアーキテクチャであり、React や Angular などに比べて複雑ではないため、学習コストも低いだろうということで採用しました。
■デザイナーさんも理解しやすい
VueコンポーネントはJSの処理部分以外は見た目はほぼHTMLなので、デザイナーさんでも理解しやすく、協力してコーディングしやすいというメリットがありました。
Owlyで採用した技術_f0364156_15492617.png

以上のような理由で今回は Laravel と Vue.js を採用し、無事にリリースを迎えることができました!

終わりに

短いですが、今回のブログは以上となります。
やっぱり、新しいことを始めるのは楽しいですね。
Laravelは簡単にページを作ることに関してはとても得意なので是非試してみてください。
Vue.jsはLaravelと一緒に使うと簡単に実装できるので是非試してみてください。
そして、何か悩み事があれば是非Owlyで占い師に相談してみてください!(ダイマ)

明日はAndroid大好きマンの牧山君によるAndroidの話です。
是非ご一読ください!

by ex-engineer | 2017-12-02 10:00