Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
鹿児島からRubyではじめるスタートアップ
Search
よしこ
March 05, 2023
Programming
0
1.7k
鹿児島からRubyではじめるスタートアップ
鹿児島Ruby会議02でスピーカー登壇した資料
https://k-ruby.connpass.com/event/272282/
よしこ
March 05, 2023
Tweet
Share
More Decks by よしこ
See All by よしこ
レンダリングを探訪する
yoshikouki
2
240
鹿児島工業高等専門学校向け講演「キャリアについて考える」
yoshikouki
0
550
鹿児島大学 法文学部 講義「キャリア論」
yoshikouki
0
1.2k
Rails Girls Kagoshima 1st イントロダクション
yoshikouki
0
1.8k
Ruby on Rails 7.0 で 新規サービスをローンチした
yoshikouki
0
730
GitHub Actions を使って Next.js を自動デプロイ
yoshikouki
0
210
LTでスクワットしたら未経験転職できた話
yoshikouki
0
100
ニート貴族が贈るコロナ禍の過ごし方
yoshikouki
0
59
リモートワーク × フレックス勤務
yoshikouki
0
88
Other Decks in Programming
See All in Programming
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
450
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.3k
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
Alba: Why, How and What's So Interesting
okuramasafumi
0
210
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
100
『改訂新版 良いコード/悪いコードで学ぶ設計入門』活用方法−爆速でスキルアップする!効果的な学習アプローチ / effective-learning-of-good-code
minodriven
28
4.2k
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
2.8k
rails newと同時に型を書く
aki19035vc
5
710
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
How to Ace a Technical Interview
jacobian
276
23k
How STYLIGHT went responsive
nonsquared
96
5.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Six Lessons from altMBA
skipperchong
27
3.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
We Have a Design System, Now What?
morganepeng
51
7.3k
Transcript
鹿児島からRubyではじめる スタートアップ 吉本康貴 / GMO PEPABO inc. 2023/03/04 鹿児島Ruby会議02 1
None
3 よしこ 吉本 康貴 CTO室 鹿児島エンジニアリングチーム • 理学療法士からエンジニアへ未経験転職 • コロナ禍初期の2020年6月入社
(当時29歳) • 前職は職員30名の介護保険施設で家族経営 • 最近のトピックは create-t3-app と ジェネレーティブAI @yoshikouki_ ペパボと私の紹介
4 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
5 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
6 ゴール • スタートアップで Ruby on Rails を採用 するメリットを知れる •
鹿児島でもメガベンチャーで スタートアップできることを知れる • Ruby on Rails を採用したスタートアップの具 体的な話が知れる
7 対象者 鹿児島Ruby会議02を 全力で楽しみたい人
8 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
スタートアップで Ruby on Rails を採用するメリット • Webアプリケーションに必要な多くが良い感じに揃っている ◦ もしくは素早く拡張できる •
MVCモデルやRails風なActiveRecord※1 は、賛否両論あるが気軽で素早い • 個人アプリでモダンな環境 (create-t3-app ※2 を採用) で開発しているが、 Rails ほど「気軽」ではない • CoC (設定よりも規約) を初めとする Railsway に従えば、 中長期的な複雑さはある程度抑制できる ※1 PoEAAでいうドメインレイヤーとデータソースレイヤーを包含したModel Active Recordから考える次世代の Ruby on Railsの方向性 ※2 T3スタックと呼ばれる思想に基づくWebアプリビルダーで、 Vercel が提供している https://create.t3.gg/ 9 素早い開発が可能 (高い生産性)
スタートアップで Ruby on Rails を採用するメリット 10 • 素早く、気軽である一方で、拡張性も十分に備わっている 大規模なアプリケーションでもスケーラブルに対応可能 •
「大規模になってくるとRailsは辛い」と言われたりするが、 それに対する知見はすでに存在するし日頃の努力により顕在化しない例も多々ある • 辛いのは Rails ではなくて設計の方というパターンも多い 多数のライブラリやツール、何より知見が存在する
11 “Rubyは死んだ?” スタートアップで Ruby on Rails を採用するメリット
12 「Rubyは毎年死んでいる」 by Yukihiro Matz “親切な人たち ”が言ってくる「 Rubyは死んだ」「 Rubyなんか使わない」まつもとゆきひろ氏がノイズを気にせず考える、 Rubyの価値
“Rubyは死んだ?” スタートアップで Ruby on Rails を採用するメリット
None
14 「まだまだ現役だぜ」ということを伝えたかった。 この場合、言葉のままの意味だが、「老兵」という表現やこの言葉の出自を考えると 適当かは分からない。 “老兵は死なず” スタートアップで Ruby on Rails を採用するメリット
15 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
16 運営の「教える」「活動する」ことに フォーカスできるようになる
※ 支払い方法は3種類 GMOレンシュについて 17 受講者情報を 一元管理 受講者・保護者との連 絡を確実に、 かんたんに オンライン決済でか
んたん集金。 一元管理 17 できること
GMOレンシュについて 18
GMOレンシュについて 19 バスケットボールチーム 鹿児島レブナイズ 鹿児島市 の実証実験 続報に期待してください!
開発チームのエンジニア構成 • 鹿児島のエンジニア 2名 • 別部署からの応援 1名 • プロジェクト最初期から2人で参画 し、今日まで作り上げてきている
20 鹿児島からも参画できる GMOレンシュについて
21 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
Ruby on Rails を採用したスタートアップの具体的な話 22 Railsway はできる限り遵守する それでも大変なときだけ、用途を限定した「サービスレイヤー」を導入する • GMOレンシュは以下を採用している
a. Presenter (View 専用) b. FormObject (form 専用) • 多数モデルが関与かつ複雑なロジックを持つ場合のみ • が、これらの使用はできる限り避ける ように心がける 出典: ApplicationModel のある風景
Ruby on Rails を採用したスタートアップの具体的な話 • 将来に渡る様々な要件まで盛り込みすぎても速度が落ちるが、とはいえ重要なので拡張可 能な設計は心がける • 状況が変わったら素早く修正を行う •
データモデリング • イミュータブルデータモデル a. RDBのレコードにUPDATEをなるべくかけないようなデータモデリング 23 テーブル設計が生命線といっても過言ではない
Ruby on Rails を採用したスタートアップの具体的な話 • Ruby on Rails に限った話ではないが、頼れるのであれば頼ったほうが良さそう •
特に認証と決済は、開発・運用コストが高く、万が一のとき深刻化しやすい • セキュリティ面でも、その界隈の専門家によって支えられる安全性を享受できる • レンシュでは Auth0、PGマルチペイメントサービス、Stripeなどを採用している 24 大変かつ任せられるところは積極的にSaaSを使う
25 アジェンダ 1. イントロダクション 2. スタートアップで Ruby on Rails を採用するメリット
3. GMOレンシュについて 4. Ruby on Rails を採用したスタートアップの具体的な話 5. これからやりたいこと
Ruby on Rails を採用したスタートアップの具体的な話 • 今後3〜5年を見越した技術選定でユーザー体験を上げていきたい ◦ (開発・運用コスト面や社内リソース・採用の都合などを加味する ) •
フロントエンドによる体験の充実 ◦ 現在、パーシャルや一部機能から React 化を進めていっている • バックエンド ◦ 素早さを保ちつつ柔軟さと堅さを両立したい ▪ 定期的なメンテナンスやリファクタリング (設計も含めた) ▪ 依存関係のアップデート (凄く大事) ◦ イミュータブルデータモデルを段階的に取り入れていきたい 26 良いプロダクトになる・あり続けるため、 良質かつ細かなユーザー体験 (MVP) を素早くリリースする確度を上げていく
Ruby on Rails を採用したスタートアップの具体的な話 27 地域コミュニティの醸成と支援 • 昨年・一昨年と続けてきた活動を続けていく ◦ K-Ruby
(鹿児島Ruby会議02を運営) ◦ Rails Girls Kagoshima ◦ エンジニアBar ◦ 鹿児島.mk ◦ #勝手に鹿児島大使 • コミュニティを継続させること。コミュニティ同士の相乗効果も?
28 鹿児島Ruby会議 03 やろうよ!
29 ゴール • スタートアップで Ruby on Rails を採用 するメリットを知れる •
鹿児島でもメガベンチャーで スタートアップできることを知れる • Ruby on Rails を採用したスタートアップの具 体的な話が知れる