Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ユーザーファーストを実現するためのチーム開発の工夫
Search
ディップ株式会社
PRO
December 14, 2025
0
12
ユーザーファーストを実現するためのチーム開発の工夫
ディップ株式会社
PRO
December 14, 2025
Tweet
Share
More Decks by ディップ株式会社
See All by ディップ株式会社
プロフェッショナルへの道:ビジネスを動かすエンジニアリング思想
dip_tech
PRO
0
15
1年目エンジニアが働いてみて感じたリアルな悩みと成長
dip_tech
PRO
0
30
ベイズマルチファクターモデルとbPCausal
dip_tech
PRO
0
14
【dip】「なりたい自分」に近づくための、「自分と向き合う」小さな振り返り
dip_tech
PRO
0
190
dip はたらこねっと におけるAI活用事例
dip_tech
PRO
0
35
_dip_ユーザーに価値を届けるための_コードレビュー___サービスレビュー_ワークショップ_.pdf
dip_tech
PRO
1
40
AI駆動開発によるDDDの実践
dip_tech
PRO
0
510
20年超レガシー「バイトル」をAI駆動で再設計!事業成長を実現するリアーキ戦略
dip_tech
PRO
1
190
後追いテストからの脱却に向けた挑戦
dip_tech
PRO
1
930
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Optimizing for Happiness
mojombo
379
70k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Designing Experiences People Love
moore
143
24k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.7k
KATA
mclloyd
PRO
32
15k
We Have a Design System, Now What?
morganepeng
54
7.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Transcript
ユーザーファーストを実現するため のチーム開発の⼯夫 【モバイル】学⽣エンジニア3団体合同×ディップLT会 ディップ株式会社
春⽊ 渚咲 Haruki Nagisa 好きなこと ⾷べることと 楽器を演奏すること ディップ株式会社 ソリューション開発本部メディア開発統括部 Flutterエンジニア
/ iOSエンジニア 新卒でディップに⼊社 3年⽬ iOSエンジニアとしてバイトル‧バイトルNEXT 現在はFlutterでスポットバイトルを開発
01 ユーザーファーストを実現するために ⼩さく早く開発するためにやっていること その1 02 プルリクエストの工夫 ⼩さく早く開発するためにやっていること その2 03 ブランチ運用の工夫
⼩さく早く開発するためにやっていること その3 04 テストコードを書く ⼩さく早く開発するために取り組みたいこと その4 05 デザインシステムの導入 Agenda
ユーザーファーストを実現するために チーム開発で⾏なっている⼯夫を紹介しま す Copyright © dip Corporation, All rights reserved.
なぜユーザーファーストなのか Labor force solution company ⼈材サービスとDXサービスの提供を通して、 労働市場における諸課題を解決し、 誰もが働く喜びと幸せを感じられる社会の実現を⽬ 指します。 Copyright
© dip Corporation, All rights reserved. VISION
ユーザーファーストを実現するにあたってやっていること チームで⼀緒に話し合って考えたり、ユーザーの声を集 めて改善したりします。 Copyright © dip Corporation, All rights reserved.
⾔われたものだけをトップダウンで作るのではなく、
ユーザーファーストを実現するにあたってやっていること Copyright © dip Corporation, All rights reserved. • この機能は本当にユーザーが働く上で幸せか?
• そもそもこの機能は必要か? • ユーザーに理解しやすく使いやすいデザインになっているか? • この機能を実現するために⼀番簡単にシンプルに作れる⽅法はない か? • 迷った時は⼀番拡張性のある⽅法で実装してリリースし、実際にユー ザーにどう使われているか計測して考えたり
Dip Tech Visionに取り組んでいます Copyright © dip Corporation, All rights reserved.
⼩さく早く安全に継続して価値を届けられる開発をすることで • ユーザーに開発した機能を早く届けられる • ユーザーにとって価値のある機能かを早く検証できる • ⼩さく早く開発することで、バグの修正も簡単になり 安全に開発できる Copyright ©
dip Corporation, All rights reserved. →ユーザーファーストな開発につながる
⼩さく早く開発するためにやっていること その1 プルリクエスト(実装するコード)の単位を⼩さくする Copyright © dip Corporation, All rights reserved.
⼩さく早く開発するためにやっていること その1 • 提供する価値 • 機能 • 実装に必要なタスク(プルリクエスト) Copyright ©
dip Corporation, All rights reserved. ⼀番⼩さな粒度に分割する
⼩さく早く開発するためにやっていること その1 Copyright © dip Corporation, All rights reserved. →素早くコードをレビューしてマージ(=コードを合流)で
きる • ⼩さく分割することで⼈もAIも理解しやすくなる
⼩さく早く開発するためにやっていること その1 実際に素早く開発できているか、時間などを計測もしていま す Copyright © dip Corporation, All rights
reserved.
⼩さく早く開発するためにやっていること その1 Copyright © dip Corporation, All rights reserved. 計測はFindy
Team+というツールを使っていて、 エンジニア組織の開発⽣産性が優れた組織としてFindy Team Award 2025を受賞
⼩さく早く開発するためにやっていること その2 素早く開発できるブランチ運⽤の⼯夫 Copyright © dip Corporation, All rights reserved.
⼩さく早く開発するためにやっていること その2 以前はリリースごとに、リリースする資材をブランチに分けて管 理していました Copyright © dip Corporation, All rights
reserved.
⼩さく早く開発するためにやっていること その2 • ⻑期で開発する施策があると、リリースブランチも⻑期間存在す ることになる Copyright © dip Corporation, All
rights reserved. • 並⾏して動いている別のリリースブランチと差分がうまれて、ブ ランチをマージ(=合流)する際にコンフリクト(=競合)しやす くなってしまう 以前はリリースごとに、リリースする資材をブランチに分けて管 理していました
⼩さく早く開発するためにやっていること その2 コンフリクトとは 同じファイルの同じ場所のコードに、別々の変更が⼊ること で、差分を合流させる際にどちらのコードを優先させるか聞か れている状態 Copyright © dip Corporation,
All rights reserved.
⼩さく早く開発するためにやっていること その2 • コンフリクトが膨⼤な量になってしまうと、解消するのに 時間がかかる • コンフリクトを解消するタイミングでバグが起こってしま うリスクがある • リリースタイミングが変わったりブランチの役割が複雑に
なってきたりすると、理解するのが難しくなってくる Copyright © dip Corporation, All rights reserved.
⼩さく早く開発するためにやっていること その2 • トランクベース開発のブランチ運⽤ を導⼊しました。 Copyright © dip Corporation, All
rights reserved. • 機能をON/OFFできるフラグ こういった問題を解消するために
⼩さく早く開発するためにやっていること その2 トランクベース開発とは コードの変更の単位を⼩さく分割し(プルリクエスト)、頻繁 にmainブランチにマージする開発⽅法 Copyright © dip Corporation, All
rights reserved. • 開発途中の機能やまだ公開しない予定の機能もmainブラン チにマージしてリリースする • するとまだ公開したくないの機能もリリースの資材に含ま れてしまうので、機能をON/OFFするフラグが必要
⼩さく早く開発するためにやっていること その2 機能をON/OFFできるフラグとは Copyright © dip Corporation, All rights reserved.
機能を公開‧⾮公開することができる
⼩さく早く開発するためにやっていること その2 機能をON/OFFできるフラグとは • コード内にフラグを⼊れることで、⾮公開にしておきたい新機能 をフラグをOFFのまま本番環境にリリースしておき、準備が整っ たらフラグONにして公開する ◦ 例えば ▪
アプリ側が機能として未完成 ▪ API側が未完成 ▪ ユーザーサイトは完成しているがクライアントサイトが 未完成など Copyright © dip Corporation, All rights reserved.
⼩さく早く開発するためにやっていること その2 すると Copyright © dip Corporation, All rights reserved.
• ブランチ管理がシンプルになり理解しやすい • コンフリクトの解消作業がなくなり、素早く開発やリ リースができる • 公開したばかりの機能にインパクトが⼤きいバグが起き た時に、いち早く⾮公開にできる
⼩さく早く開発するためにやっていること その3 • テストコードを書く Copyright © dip Corporation, All rights
reserved. • スクリーンショットテストをする
⼩さく早く開発するためにやっていること その3 テストコードとは • コードが正しく動作するか⾃動で検証するために書くコード ◦ UIパーツが正しく表⽰されているか ◦ ユーザーの操作が正しく処理されているかなど Copyright
© dip Corporation, All rights reserved. • コードを変更したことによってUIや処理が壊れていないか確 認できる
⼩さく早く開発するためにやっていること その3 スクリーンショットテストとは • アプリ画⾯のスクリーンショットを撮って、変更した差分 を⾃動で⽐較できるテスト Copyright © dip Corporation,
All rights reserved. • コードの変更でデザインやレイアウトが崩れていないか検 出する
⼩さく早く開発するためにやっていること その3 スクリーンショットテスト Copyright © dip Corporation, All rights reserved.
変更前 変更後 差分
⼩さく早く開発するためにやっていること その3 • コードの変更に強くなる • ⼿動のテストが減るので開発速度が上がる • 安全なリリースをすることができる すると Copyright
© dip Corporation, All rights reserved.
⼩さく早く開発するために取り組みたいこと その4 デザインシステムの導⼊ これから取り組んでいきたい Copyright © dip Corporation, All rights
reserved.
デザインシステムとは • 再利⽤可能なUIパーツ(コンポーネント) Copyright © dip Corporation, All rights reserved.
• デザインの標準のルール ⼩さく早く開発するために取り組みたいこと その4 • 共通で使うまとまり
Copyright © dip Corporation, All rights reserved. 例えば ⼩さく早く開発するために取り組みたいこと その4
Copyright © dip Corporation, All rights reserved. 使う場所や状態によって、パーツを出し分けたり幅や⾼さを指定 する ⼩さく早く開発するために取り組みたいこと
その4
デザインシステムを導⼊するとよいこと • ルールが統⼀されて、デザインや実装がバラバラにならな い • 再利⽤可能なので、実装スピードが上がる • デザイナーとエンジニアのコミュニケーションが楽になる • 基準のUIパーツを1つ変更すると、全体のUIパーツも同じ
ように変更される Copyright © dip Corporation, All rights reserved. ⼩さく早く開発するために取り組みたいこと その4
さいごに Copyright © dip Corporation, All rights reserved. まとめ •
ユーザーファーストを実現するために ◦ なぜこの機能が必要なのか ◦ どう実現していくか チームで⼀緒に話し合って考える ユーザーの声を聞く
さいごに Copyright © dip Corporation, All rights reserved. まとめ •
⼩さく早く開発するために ◦ 粒度を⼩さく分割して開発を進める ◦ ブランチ運⽤をシンプルにする ◦ テストコード、スクリーンショットテストを書いて⾃動化 する ◦ デザインシステムを導⼊する
さいごに ありがとうございました Copyright © dip Corporation, All rights reserved.