Loading...

一覧へ

CPOとリードエンジニアに技術について聞いてみた。なんでRails使ってるの?

コラビットで使っている技術スタックについてお聞きしました。
技術選定をする基準や選定するときのポイントなどを、CPO(Chief Product Officer)の観点とリードエンジニアの観点でお聞きしました。
聞き手:株式会社FanReC 濵田(@hamadaysk

-Railsを選んだ理由ってなんだったんですか?

曽根ちゃん
可読性含めたプロトタイピングのしやすさかな?
OSSが豊富に提供されているし、フレームワークとして完成されているのも多く使いやすい。
そこまでコードを書かなくても実装が楽なので、ビギナーのエンジニアでもある程度クオリティとセキュリティの担保ができるということが魅力でした。

前田さん
初期の開発スピードが速いことは重要です。
ベンチャーなので、日々変化がありそれに対応ができる手段としてRailsが適しているなと。
今のところRails以上のフレームワークがないので使っているというスタンスです。

-なるほど!
ユーザー観点で言うとどんなことを考えて技術選定をしているのですか?

曽根ちゃん
「ユーザーにとって最適な体験」を常々考えていて、一番は「ストレスを与えてはいけない」ということ。
例えば、反応の遅さやボタンがどこにあるかなどのUIUXの部分も含めてです。
重要なんだけど、案外見落とされている本質的なことを突き詰めたいと思っています。
その観点でインタラクティブなフロントを意識していますし、技術選定もその軸がブレないようもなのを選定しているかな。

例えば、Vueはユーザーを「待たせない演出」ができると思って導入しました。
SPAなので、画面がそもそも切り替わらない、すべてのページでの体験を繋げることができるなと。
インタフェースがアニメーションで繋がることで、ユーザーもサービスをよりインタラクティブに感じるようにしたいというのが背景です。

メール周りはsendgridを使っていて、プラットフォームとしてかなりメジャーである(急にクローズしたりしない)ことと、オープン・クリックなどの数値分析ができる、という最低ラインがまずあった。
更に、エンジニア工数をかけずに、プロモーションメールを打ったり、メール施策の改善をテストしていったりしたかったので、エディタやABテストツール、分析ツールなどが備わっていた部分で採用しました。

タスク管理ツールとしてはbacklogを使っていて、非エンジニアでも使いやすくてガントチャートが使えるものを探していて、trelloやredmineなどを使って比較したところ、backlogが一番ほどよかったので採用した感じです。
これはHowMaのプロジェクトで導入してみて、徐々に他のプロジェクトでも使われるようになっていってスタンダードになっています!

前田さん
そうですね。
私の役割上、改修のしやすさ=保守性も意識していく必要があるため、Dockerの導入などして効率性や工数の削減し、クオリティを担保しています。
「こんな課題を解決するためにこんな技術を新しく使ってみようよ」と意見はあげやすいですし、組織として導入コストも見ながら技術選定をしていますね。

-今後やっていきたいことはありますか?
現状の課題も含めて教えてください。

前田さん
大規模データ(数百万〜数千万)を扱うプロジェクトをはじめ様々な案件が増えてきているなか、Rails以外でより良い選択肢があればなと思うことも出てきました。
この辺りは開発チーム全体で今後議論していく必要があると思っています。
また、チームビルドを経て一定のクオリティとスピードを持って実装ができる体制になってきました。
今後はさらにUIUX、保守性の部分に意識を向けられるようにしていきたいと思っています。
パフォーマンス計測など、様々な課題があるので全体最適をしつつも、個別最適もしていきたいと思っています。

曽根ちゃん
そうですね、保守性の部分は課題です。
既存のシステムを0からやり直すか?リファクタリングするか?など大きな意思決定が求められているフェーズに入ってきていると思います。
最近はマイクロサービス化されているものも多いので、そのあたりの概念も入れていきたいと思っています。

-Railsエンジニア採用やってます!

一覧へ