Upgrade to Pro — share decks privately, control downloads, hide ads and more …

成功する技術選定について

Hiroaki KARASAWA
December 09, 2024
1.3k

 成功する技術選定について

2024-12-12 フロントエンドの技術選定~2024年を振り返る~Lunch LT

https://findy.connpass.com/event/336320/

Hiroaki KARASAWA

December 09, 2024
Tweet

More Decks by Hiroaki KARASAWA

Transcript

  1. 株式会社 ダイニー © 2024 Dinii Inc. ※こちらの枠内に詳細や、画像を記載/貼り付けしてください。 白枠は、必要に応じて消していただいても大丈夫です。 成功する技術選定について 自己紹介

    Hiroaki KARASAWA (karszawa) 2023 ~ 株式会社ダイニー VP of Technology 2020 ~ 株式会社ダイニー Software Engineer 2019 ~ 株式会社メルカリ Software Engineer Google Cloud Champion Innovator (Modern Architecture, Serverless Application, Data)
  2. 株式会社 ダイニー © 2024 Dinii Inc. だれに? これから技術選定を行うシニアエントリーレベルなエンジニア なにを? ▪

    完璧に最適な技術など存在しない → 正解の『技術選定』など存在しない。 ▪ 重要なのは、ある程度のブレは自分で修正する覚悟と力量である。 成功する技術選定について 今日の発表で伝えたいこと
  3. 株式会社 ダイニー © 2024 Dinii Inc. 成功する技術選定について 事例:ダイニーにおける Hasura の採用

    GitHub Actions のデプロイフロー 飲食店の業務 SaaS として完璧に System of Record なサービスなの で当たり前に嬉しい Good: データがそのまま API になる 👍 かなり上手く設計しないとリリース時の瞬断が発生しがち Bad: デプロイフローが複雑になる 👎 Complex GitHub Actions workflow including App, Hasura, Database Migration Database + Hasura = API
  4. 株式会社 ダイニー © 2024 Dinii Inc. 成功する技術選定について 事例: ダイニーにおける Hasura

    の採用、から伝えたいこと 50点か60点かの比較でしかない。 結果から見れば成功かもしれないが、 ツラミもかなり多かった。 どうせ100点はない。
  5. 株式会社 ダイニー © 2024 Dinii Inc. 事例: ダイニーにおける Hasura の採用、から伝えたいこと

    成功する技術選定について 50点を60点に上げることに時間的・人的投資をすることにどれほど意味があるのか スタートアップなら現場に行って顧客の声を聞くことに時間を割くべきではないのか 事業を成功させるために重要なのは『技術選定』だけですか? 加盟店でシフト体験を行うテックリード
  6. 株式会社 ダイニー © 2024 Dinii Inc. ▪ 普段からアンテナを張り、きちんと実運用されている技術を採用する ▪ 奇抜さを避ける

    ▪ 少し難しいポイント ▪ 日本での流行り 󰢃 ▪ グローバルトレンド 󰢏 成功する技術選定について そうは言っても「10点」の技術を採用しないこと
  7. 株式会社 ダイニー © 2024 Dinii Inc. 事例: ダイニーにおける TypeScript, Node.js

    の採用 成功する技術選定について サーバーの処理系として Node.js よりも性能・安定性に優れた実行環境は多く存在する。 とはいえ、コミュニティも大きく、多くのサービスが Node.js ベースで開発されている。 すべてのプロダクトを TypeScript & Node.js で開発 👾👾👾 処理系云々より、サーバーレスでサーバーインスタンス自体を 無限にスケールさせてごり押す世界観が主流になってきている
  8. 株式会社 ダイニー © 2024 Dinii Inc. 反事例: ダイニーにおける Hasura の採用

    成功する技術選定について 当時は国外でもほとんど採用事例が無かった。 技術としての筋は良さそう + 投資も受けていたので潰れることは無さそう、と考えていた。 実際にはどんな方向に進化していくか分からないのでかなり危うい賭けだった。 逆に言えば、これだけの不確定要素を持ち込むのは一つの事業で一つまでに留めたい。 Hasura の採用はバクチだった!?
  9. 株式会社 ダイニー © 2024 Dinii Inc. 事例: ダイニーにおける Hasura の採用

    ※こちらの枠内に詳細や、 画像を記載/貼り付けしてください。 白枠は、必要に応じて 消していただいても大丈夫です。 ※こちらの枠内に詳細や、 画像を記載/貼り付けしてください。 白枠は、必要に応じて 消していただいても大丈夫です。 Hasura User Community Tokyo の立ち上げ Hasura 社との継続的な コミュニケーション Hasura’s Champion of the Year 成功する技術選定について Hasura PM と MTG Champion Mag Community Meetup ここに投資する! という覚悟が無いと実行できない
  10. 株式会社 ダイニー © 2024 Dinii Inc. TS 率90%の図 成功する技術選定について 事例:

    ダイニーにおける TypeScript, Node.js の採用 モブプロ会の様子 開発環境、パッケージ管理、デプロイ、モニタリング 言語ごと、フレームワークごとにセットアップが必要なものが多い = 言語・フレームワークを統一すればそこに集中できる 投資を一本化することですべてを効率化 社内勉強会、外部登壇、チーム横断のモブプロ会(毎週) 投資意図に即した環境づくり メインリポジトリの TS 率 99% 全エンジニアランダムのモブプロ会
  11. 株式会社 ダイニー © 2024 Dinii Inc. ▪ 結局100点はムリなので気楽に ▪ 決めたうえできちんと投資をする

    = 投資できる構成を逆算して採用する ▪ 覚悟がないと技術選定がブレ続ける = キメラが生まれてゼロ点、マイナス点に 成功する技術選定について 本日のまとめ
  12. 株式会社 ダイニー © 2024 Dinii Inc. 余談 成功する技術選定について 『技術への投資』の一環としてダイニー史上最大規模のスポンサーを実施予定 ※

    応募中 & 抽選なので本当にスポンサー出来るかどうかは未確定 TSKaigi へのスポンサー決定!? ← ダイニービール ※ イメージ スポンサーブースで僕と握手!