$30 off During Our Annual Pro Sale. View Details »

スタートアップにおける言語とフレームワークの選択 / Why we chose Ruby on Rails as a startup

Autify
March 19, 2021

スタートアップにおける言語とフレームワークの選択 / Why we chose Ruby on Rails as a startup

Autify

March 19, 2021
Tweet

More Decks by Autify

Other Decks in Technology

Transcript

  1. スタートアップにおける言語とフレームワークの選択
    2021年3月19日 銀座Rails#31
    Autify 松浦隼人

    View Slide

  2. 自己紹介
    松浦 隼人
    ● オーティファイ株式会社 CTO (2020年1月〜)
    ● Twitter : dblmkt
    ● 経歴
    ○ インフラ何でも屋
    ○ 某ブログサービスのインフラ担当
    ○ テクニカルサポート
    ○ インフラ + Rails
    ○ CTO (イマココ)
    ● 趣味
    ○ 翻訳

    View Slide

  3. https://autify.com/ja

    View Slide

  4. E2Eテストはハードルが高い? - Autifyを使えば
    E2Eテストはハードルが高い? - Autifyを使えば
    ● 手でやるのは工数がかかる
    ○ 自動化しましょう!
    ● シナリオ作る・書くの大変
    ○ テストシナリオ作成が簡単
    ● 実行するの大変
    ○ 複数のブラウザでテスト実行
    ● 作った後も大変
    ○ AIの力でシナリオ修正を支援

    View Slide

  5. View Slide


  6. View Slide

  7. 創業時からRailsを使用
    ● 創業時
    ○ コミュニティ翻訳ツール
    ○ 近澤がRailsで着手
    ● その後、共同創業者として山下がジョイン
    ○ 創業者2人が共通して知っているフレームワーク
    の方が望ましい
    ■ Railsでの開発を継続
    ■ 新サービスをリリース

    View Slide

  8. ピボットを経て
    ● Gitを使ったCMS
    ○ これまで作った資産を活用するため引き続き
    Railsを採用
    ● (Alchemist Acceleratorへ)
    ● BDDツール
    ○ 同様にRailsを採用

    View Slide

  9. Autify 開発前夜
    ● 当時、フロントエンドに強いエンジニアが在籍
    ○ バックエンド・インフラもできる山下と分業できる
    ○ Railsバックエンド + ReactフロントエンドによるSPA化を決断

    View Slide

  10. Autify PMFを迎える
    ● 製品完成前に契約獲得
    ○ Burning needsをとらえ、PMFを達成
    ○ 当社CEO近澤のブログ 「顧客のBurning needsを解決する」
    ● Reactを捨ててRailsのみに戻す
    ○ 初期プロダクトでは、リッチなUIなどは必須ではない
    ○ 実装コスト
    ■ 管理画面の方が機能が多い
    ○ フロントエンド・バックエンド間のコミュニケーションミスが多発
    ■ 開発を遅らせる原因に

    View Slide

  11. 価値を最速で届ける技術>>>(越えられない壁)>イケてる技術
    ● スタートアップの最初期
    ○ とにかく価値を最速で届けるのが最重要課題
    ■ 価値を届けられないと死ぬ
    ○ リッチなUIよりも問題を解決できること
    ■ スムーズな動作ですら最低限でいいケースも

    View Slide

  12. Autifyの開発本格化→正式ローンチ
    ● 2019年3月、ベータローンチ
    ● 2019年4月、フロントエンドエンジニア入社
    ○ ページごとに徐々にSPA化を始める
    ■ SPA化のメリットが大きいページから着手

    View Slide

  13. Autifyの開発本格化→正式ローンチ
    ● 2019年9月、エンジニアが複数入社
    ○ 分業が可能な体制に
    ● 2019年10月、正式ローンチ

    View Slide

  14. Autifyの現在
    ● 技術スタック
    ○ フロントエンド : React (TypeScript)
    ○ バックエンド : Ruby on Rails
    ○ インフラ : AWS
    ● ページごとのSPA化引き続き進行中

    View Slide

  15. ● 技術ではなくビジネスに集中する
    ● 考えることが一番少ない言語・フレームワーク・製品がベスト
    ○ Railsに乗りさえすればRailsは楽
    ■ 成熟した多数のgem
    ■ 使い古された機能 : 例、ORMや多言語化サポートなど
    ■ 大抵の開発者向けサービスでサポートされている
    ● 監視サービス、ログサービスなど
    ● 必要以上の分業より、1人でも面倒を見られるようできるだけ少ない技術で
    技術はビジネスを成長させる道具

    View Slide

  16. ● Choose boring technology (退屈な技術を選択せよ)
    ○ できるだけ少ない数の、枯れた技術
    (= 退屈な技術)を選んで使う
    ■ Known unknown : 何が起こるかわからないとわかっていること
    ■ Unknown unknown : 何がわからないのかもわからないこと
    ● 退屈な技術 = ナレッジが広く共有されているので、わからないことが少な

    ○ プロダクトをshipせよ
    技術はビジネスを成長させる道具

    View Slide

  17. まとめ
    ● スタートアップは価値を素早く届けないと死んでしまう
    ○ 最速で価値を届けられる技術を選ぶ
    ● 技術はビジネスを成長させる道具
    ○ 考えることが少なくて済む(退屈な)技術を選択すべし
    ■ Railsは成熟度、情報量などの点で優位

    View Slide

  18. View Slide

  19. https://autify.com/ja/careers/

    View Slide