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
お薬手帳アプリ開発における スピード開発 x 安定運用の取り組み
Search
KAKEHASHI
PRO
February 22, 2023
Business
0
630
お薬手帳アプリ開発における スピード開発 x 安定運用の取り組み
TechPlay_2023年2月21日登壇資料です。
KAKEHASHI
PRO
February 22, 2023
Tweet
Share
More Decks by KAKEHASHI
See All by KAKEHASHI
生成AIと余白 〜開発スピードが向上した今、何に向き合う?〜
kakehashi
PRO
0
170
開発チームが信頼性向上のためにできること
kakehashi
PRO
4
88
他言語経験者が知っておきたいTypeScriptのクラスの注意点
kakehashi
PRO
1
30
「外部仕様書をDevinくんにやってもらってみた」に関連した色々話
kakehashi
PRO
2
47
複数チームでの並行開発を改善する取り組み
kakehashi
PRO
1
43
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
1.2k
自己管理型チームと個人のセルフマネジメント 〜モチベーション編〜
kakehashi
PRO
5
4.4k
なりたかった自分となりたい自分
kakehashi
PRO
2
800
そのアウトプットは世界とつながっている
kakehashi
PRO
2
270
Other Decks in Business
See All in Business
(4枚)PDCAサイクルとOODAループの違いを徹底解説
nyattx
PRO
0
150
202601〜【合同会社プレップ湘南】COMPANY DECK
prepp
0
200
【SBO勉強会】感謝されるAI活用&ツール導入法
sakiyogoro
1
240
採用ピッチ資料
s_kamada
0
420
Speee_2026年9月期第1四半期 決算説明資料
speee_pr
0
2k
未完成を最強の「通貨」に変える - civicship
hopin
0
200
Women in Agile Tokyo2026 「個をあるがままに生かす」は綺麗事でも簡単なことでもなかった
nekoyanagi
0
170
キャリアコンサルティングの継続利用がキャリア自律に及ぼす効果の検証
techtekt
PRO
1
150
全社員が使える環境を整える! n8n Enterprise導入と浸透施策の実践
enpipi
0
950
Mercari-Fact-book_en
mercari_inc
2
32k
about-oha
oha
0
20k
ARI会社説明
arisaiyou
1
22k
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
2.7k
Ruling the World: When Life Gets Gamed
codingconduct
0
150
Between Models and Reality
mayunak
1
200
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
53
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Docker and Python
trallard
47
3.7k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
お薬手帳アプリ開発における スピード開発 x 安定運用の取り組み 株式会社カケハシ 種岡篤志
自己紹介 ・カケハシ入社 3年目 ・Pocket Musubiを開発するチームに所属 ・バックエンドを主軸にインフラやフロントエンドも従事 ・2人の娘の育児に奮闘中 Copyright © KAKEHASHI
Inc. All Rights Reserved. 2
アジェンダ 昨年、iOS/Androidでリリースした電子お薬手帳アプリについて Copyright © KAKEHASHI Inc. All Rights Reserved.
3 スピード開発 安定運用 チーム分割
株式会社カケハシとは? Copyright © KAKEHASHI Inc. All Rights Reserved. 4
Mission: 日本の医療体験を、しなやかに。
Pocket Musubi 開発チーム Copyright © KAKEHASHI Inc. All Rights Reserved.
5 主に患者さん向けサービスの開発チーム LINE上で動作するWebアプリ(Pocket Musubi) エンジニア 10名 スクラム開発
おくすり連絡帳について Copyright © KAKEHASHI Inc. All Rights Reserved. 6
おくすり手帳アプリ( iOS / Android) 開発期間:約半年 LINE版Pocket Musubiとのデータ連携して より便利に!
アジェンダ 昨年、iOS/Androidでリリースした電子お薬手帳アプリについて Copyright © KAKEHASHI Inc. All Rights Reserved.
7 スピード開発 安定運用 チーム分割
スピード感ある開発できたのか? Copyright © KAKEHASHI Inc. All Rights Reserved. 8
システム設計概要 Copyright © KAKEHASHI Inc. All Rights Reserved. 9
FlutterFlow選定の背景 当時、社内にはiOS/Androidそれぞれ一人しかエンジニアがいなく、圧倒的 に開発リソースが足らない状況で、MVPを作らないといけない Copyright © KAKEHASHI Inc. All Rights Reserved.
10 Flutter ローコードツールの活用 iOS/Android両方のリリースが必要
FlutterFlowとは? Copyright © KAKEHASHI Inc. All Rights Reserved. 11
GUIでFlutterアプリが作れる ソースコードのDLとGitHubと の連携(有料プラン) デザインだけでなくロジックの 実装もツール上で可能
FlutterFlowを使ってみてどうだったのか? Copyright © KAKEHASHI Inc. All Rights Reserved. 12
FlutterFlowの使用感 Copyright © KAKEHASHI Inc. All Rights Reserved. 13
・各画面の作成とデザインの当て込みで活用 テストをきちんと書いて、将来的に容易にリプレース可能な準備をしておくこと で許容 ・ローコードツールが自動生成する抽象化コンポーネント管理 (FlutterFlowXXXのような抽象化した独自コンポーネントを作ってくれるが負債化の懸念) デザインの作成と修正したものを適宜エクスポート ロジックは自前で実装 ・ツール上だけではロジック実装が難しい or 設計観点でツール依存にする難しさ
システム設計概要 Copyright © KAKEHASHI Inc. All Rights Reserved. 14
ServerlessStackとは Copyright © KAKEHASHI Inc. All Rights Reserved. 15
インフラの管理だけでなく、アプリケーションコードの開発支援してくれる CDK ライブデバッグ可能( VS Code,WebStorm,IntelliJ IDEA) Live Lambda Developmentが優秀(Local環境でLambdaのロジック開発) メンバー毎の開発環境が簡単に構築できる
変更を都度デプロイ Lambdaが利用するサービスをローカルでモック Lambda開発のつらみ Copyright © KAKEHASHI Inc. All Rights Reserved.
16 CDKにhotswap deployments機能が追 加されたことで改善 しかし、ライブデバッグはできない LocalStackのメンテコスト高い ・利用するサービスのモック作るコスト ・LocalStackの変更追従コスト デプロイにかかる待ち時間発生 【Lambda開発パターン例】
Live Lambda Development 利用例 Copyright © KAKEHASHI Inc. All Rights
Reserved. 17 ローカルでLambdaの ロジック開発に専念 専用の開発DB ライブデバッグ Lambda以外のサービ スはそのまま使える
アジェンダ 昨年、iOS/Androidでリリースした電子お薬手帳アプリについて Copyright © KAKEHASHI Inc. All Rights Reserved.
18 スピード開発 安定運用 チーム分割
安定運用に向けて Copyright © KAKEHASHI Inc. All Rights Reserved. 19
おくすり連絡帳アプリはエンジニア総力戦で開発した
運用面での課題 Copyright © KAKEHASHI Inc. All Rights Reserved. 20
メンテナンス対象が増える 全員が等しくコードベースで理解するのが難しい 認知負荷の増大 ドメイン知識の共有の難しさ チーム分割
チーム分割のための輪読会 Copyright © KAKEHASHI Inc. All Rights Reserved. 21
トップダウンでチームを分割するのではなく チームの形としてどういうものがあるのか? チーム間のコミュニケーション方法は? などのベストプラクティスを体系的に学ぶことでチーム分割導 入ハードルを下げる
チーム分割 Copyright © KAKEHASHI Inc. All Rights Reserved. 22
・認知負荷が下がり、それぞれのサービスで開発・運用効率が上がった ・新しくメンバーが入った時のキャッチアップも楽になった
設計に関する課題 Copyright © KAKEHASHI Inc. All Rights Reserved. 23
DB DBが密結合 コンウェイの法則 (1つのチームで開発した影響) 開発スピードは間違いなく出た Pros Cons DBスキーマ管理や変更時影響範囲の確 認の負荷が高い
マイクロサービス化 Copyright © KAKEHASHI Inc. All Rights Reserved. 24
新規プロダクトはドメインの粒度が粗く、変更頻度が高いため、マイクロサービス化の意思決定が しにくい マイクロサービス化したサービスの運用経験者の有無 チーム分割を先に行っていたらマイクロサービス化の判断は変わっていたかもしれない 組織のフェーズや開発リソースなどの外的要因によって変わりうるため、今回の経験を今後の判 断軸として活かしていきたい
まとめ Copyright © KAKEHASHI Inc. All Rights Reserved. 25
FlutterFlowやServerlessStackを使ってスピード開発できた チーム分割することで認知負荷を下がり、安定運用につながった 新規プロダクト開発前にローンチ後のチーム構成を思案すると共に、マクロサービス化について 検討しておこう
全プロダクト絶賛採用強化中! Copyright © KAKEHASHI Inc. All Rights Reserved. 26
• フロントエンドエンジニア • バックエンドエンジニア • PdM • 開発ディレクター • UXデザイナー • SRE • データエンジニア ポジションの詳細はコチラ https://herp.careers/v1/kakehashi
Copyright © KAKEHASHI Inc. All Rights Reserved. 27 ご清聴ありがとうございました