Slide 1

Slide 1 text

Rails and Spice スパイスファクトリーでの Rails を中心とした技術選定の話

Slide 2

Slide 2 text

三澤 悠人 Yuto Misawa Chief Technology Officer 2016 年にスパイスファクトリー株式会社の立ち上げに参加。 様々な受託案件の要件定義から設計、開発、運用のフェーズを経験する。 現在は組織作りやマネジメントの部分がメインの仕事。

Slide 3

Slide 3 text

- スパイスファクトリーについて - React & Ruby on Rails について - AWS & Ruby on Rails について - これまでの技術選定について - さいごに

Slide 4

Slide 4 text

スパイスファクトリーについて

Slide 5

Slide 5 text

私たちは世界がより良い方向に向かうよう、変化を加速させる“触媒” スパイスとしての 役割を全うすることをミッションとした新しい DXエージェンシー です。 最新テクノロジー、UIUX、アート、マーケティングなどの技術・メソッドを用いて、 モノゴトを素早く、 美しく、本質的に再定義し、クライアント企業のデジタルトランス フォーメーションを支援いたします。 – 革新の触媒 – “The Spice Of Innovation” スパイスファクトリーの事業

Slide 6

Slide 6 text

スパイスファクトリーの事業 高度なシステム開発からUXUIデザイン、そしてサー ビスのグロースを強力に推進するマーケティング支援 まで。 私たちは開発会社でもデザイン会社でもマーケティン グ会社でもない、それら全てを内包した Digital Integrator としてクライアント企業のデジタル・トラ ンスフォーメーション(DX)を全方位で支援してい ます。 デジタルビジネス創出支援 Digital Business Creation ブランディング支援 Brand Creation UIUXコンサルティング UIUX Consuiting アジャイルシステム開発 Agile Software Devlopment WEBサービス開発 Web-Service Devlopment 求人 / HRシステム開発 HR-System Devlopment ポータル / EC開発 E -commerce Devlopment コーポ レ ートサイト 制作 Corporate Website Designs IRサイト 制作 IR Websites Design 多言語 サイト 制作 M ulti- L anguage Web Design コンテン ツマ ー ケ ティング支援 Contents M ar k eting Support H ubSpotカ スタ マ イ ズ・導入 支援 HubSpot Customi z e & Support WEBサイト 運用保守 Website O peration Support WEBサイト 表示高速化 Website Speed O ptimi z ation プロ トタイ プ / MVP 開発 P rototype Development

Slide 7

Slide 7 text

チームについて Digital Service Development Div. チームの力をベースとして 高い開発力と技術力で 世の中をより良くするサービスを生み出す

Slide 8

Slide 8 text

React & Ruby on Rails について

Slide 9

Slide 9 text

React & Ruby on Rails について

Slide 10

Slide 10 text

React & Ruby on Rails について https://graphql.org/

Slide 11

Slide 11 text

React & Ruby on Rails について https://github.com/rmosolgo/graphql-ruby

Slide 12

Slide 12 text

- REST のエンドポイントの設計を考えたり定義をするより楽だった (体感) - React と Rails 間の Schema の共有がいい感じ - TypeScript との相性が良さそう (graphql-code-generator) - フロントとバックが分離することで、Rails はビジネスロジックに集中できる React & Ruby on Rails について 嬉しいこと - 増えていく mutation をどう管理するかを考える必要がある - devise の認証周りは REST のままになっている状態 - キャッシュやモニタリングなど、GraphQL ならではの課題への対応も必要 - 担当者が Rails と React で分かれており、API の用意 -> React の実装の連携が必要 今後の課題

Slide 13

Slide 13 text

AWS & Ruby on Rails について

Slide 14

Slide 14 text

AWS & Ruby on Rails について Rails の実行環境として Amazon ECS on Fargate AWS Code シリーズを使用した CI / CD AWS CloudFormation を使用した 構成管理 S3 / Aurora / ElasticCache / Elasticsearch Service などのサービス群

Slide 15

Slide 15 text

- インフラの運用コストを抑えられる - Pull Request で AWS の構成変更や環境変数の設定変更が投げられる (ただし認証情報は除く) - production と staging 環境で同じ Docker Image を使える - 環境の複製が容易 AWS & Ruby on Rails について 嬉しいこと - 開発環境では Rails を Docker では実行していない (そもそも実行すべきか...?)
 - CloudFormation の yaml をいい感じに分割したいがそこまで手が回ってない - プロジェクトを横断して専任で AWS 周りをサポートしてくれる人が欲しい 今後の課題

Slide 16

Slide 16 text

これまでの技術選定について

Slide 17

Slide 17 text

これまでの技術選定について - 当時使っていたフレームワークのマイナー化 - 新規サービスの立ち上げが多い会社の状態 - 素早くプロジェクトを立ち上げる必要性 - 細かいスペックは変わっていく - 思想的に共感できるか Ruby on Rails という選択肢

Slide 18

Slide 18 text

これまでの技術選定について - 会社の規模拡大に伴う案件の変化 - PoC のプロジェクトの要望が増えた - 一方で高負荷・大規模のプロジェクトも増加 - 成長を続け継続的な開発を行う案件への対応 AWS という選択肢

Slide 19

Slide 19 text

これまでの技術選定について - デザインチームの発足 - より良い UX を提供したい - デザインチームとのスムーズな連携 - 開発フローのさらなる改善の可能性 React という選択肢

Slide 20

Slide 20 text

- ただ Web アプリケーションを開発しているだけの状態 - 技術の簡易化による危機感 - さらなる価値を提供できる必要性 より幅広く高品質な “価値” を人々に提供する為に 思想として共感できる新しい技術を取り入れる これまでの技術選定について 当時の課題

Slide 21

Slide 21 text

さいごに

Slide 22

Slide 22 text

採用募集中 スパイスファクトリーでは、ものづくりで世の中を良くしたいメンバーを募集しています。 Ruby on Rails や React、AWS などの技術を用い、360° デジタルインテグレーターの一員として他のメンバーと協力し、 さらにはクライアントともチームになり、ものづくりのプロセスを大切にしながら、世の中に新しい価値を生み出すという ミッションに興味がある方を探しています! We are hiring!

Slide 23

Slide 23 text

Spice Up 世界に驚きと感動を、僕らのこの手で。