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
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする...
Search
SlashNephy
September 02, 2026
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
DroidKaigi 2026 に登壇した際のスライド資料です。
https://2026.droidkaigi.jp/timetable/1235498/
SlashNephy
September 02, 2026
More Decks by SlashNephy
See All by SlashNephy
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
620
Hatena Engineer Seminar #23「新卒研修で気軽に『ありがとう』を伝え合える Slack アプリを開発した話」
slashnephy
0
1.2k
Other Decks in Programming
See All in Programming
高専、大学編入、そして未踏へ〜プロダクト開発とキャリアの歩み - Technical College, University Transfer, and On to “Mitou” / My Journey in Product Development and Career
pkmiya
0
120
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
190
T3DD26: From RAGs to Riches
martinhelmich
0
120
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
130
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
290
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
140
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
270
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
350
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.4k
バグを直したら useEffect が消えた
colorful12
3
780
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
470
Flow は今どうなっているか
mizdra
PRO
0
790
Featured
See All Featured
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
490
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Unsuck your backbone
ammeep
672
58k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
220
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
360
Navigating Team Friction
lara
192
16k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Building an army of robots
kneath
306
46k
Google's AI Overviews - The New Search
badams
0
1.6k
Transcript
個人開発という実験場 Android エンジニアが手にする4つの自由 id:SlashNephy 2026/9/2 @ DroidKaigi 2026 1
SlashNephy • 株式会社はてな • Web アプリケーション エ ンジニア • いろいろやってます
◦ Web フロントエンド・ バックエンド・インフラ • Android: 業務で1年程度 GitHub @SlashNephy 2
Android アプリ開発との出会い • Kotlin の経験 (趣味) はあった • Android ユーザー歴
10年くらい • 社内の「はてなリスキリングプログラム」 ◦ ▶Androiderを育成する「高速道路」と実戦を経て辿り着いた現在地 3
学ぶことが多い! 😇 • アーキテクチャ ◦ Lifecycle, ViewModel, Hilt, … •
フレームワーク ◦ Material 3 Expressive ◦ Jetpack Compose / Navigation 3 / Glance, … • ビルドシステム ◦ Gradle, AGP, KSP, ProGuard, … 4
さらに AI エージェントの発展 • Claude Code • OpenAI Codex •
Antigravity CLI エコシステムのほか、開発手法も絶えず変化 5
個人開発で業務を補う • 「はてなリスキリングプログラム」の実践 • 学んだ成果として、自分でも何か作ってみよう 6
業務と個人開発は、役割が違う 業務 — 顧客との信頼 個人開発 — 壊して学べる • 安定性が最優先 •
AI 利用にはセキュリティ・ 権利の制約 • 影響が及ぶのは自分だけ • 最新技術も AI も思いきり 試せる → 品質を守る合理性がある 7
業務と個人開発は、役割が違う 業務 個人開発 • チームでの合意形成と • プロセスは自分で設計 レビューを丁寧に • 組織の意思決定に沿う
→ チーム開発の品質を支える 強みがある できる • 自分のためのアイディア も実現できる 8
個人開発は 自由な実験場である 9
4つの自由 🗽 • 自由1: Alpha 版で運用する自由 • 自由2: アイディアを実装に運ぶ自由 •
自由3: プロセスを最小化する自由 • 自由4: 自分のためのアプリを作る自由 10
自由1: Alpha 版で運用する自由 • アプリの依存ライブラリを Alpha 版で揃える • 安定前の最新の機能を使える •
Renovate で最新に保つ 11
自由2: アイディアを実装に運ぶ自由 • AI エージェントを制約なく持ち込める • 思いついたら実装に入り、ダメなら捨てられる 12
自由3: プロセスを最小化する自由 • 品質ラインを定め、リリースサイクルを高速化 • 流行っている AI レビューボットも実験できる 13
自由4: 自分のためのアプリを作る自由 • 自分が欲しいから作る。好きなものを作る。 • ユーザーとして改善し続けられる 14
個人開発を実験場として 使い倒す 15
実験場1: Mitsubachi • 旅行の訪問先・写真を記録する ◦ Material 3 Expressive, Jetpack Glance,
… 初めてのアプリ。AI 支援を 最小限にして “土地勘” を作った https://github.com/SlashNephy/mitsubachi 16
実験場2: ときどき六法 • 法令の条文を読む・学習する ◦ e-Gov 法令 API, Firebase AI
Logic 特殊なドメインで AI との 相性を試す題材 https://github.com/SlashNephy/tokidoki-roppou 17
実験場3: OneMoreCoffee • 某カフェの店舗の訪問記録アプリ ◦ Maps SDK for Android, Maps
Compose, … 位置情報を使った 地図アプリを作ってみたかった https://github.com/SlashNephy/OneMoreCoffee 18
いろいろな題材で実験 旅行記録アプリ / 法令学習アプリ / 地図アプリ • 3つとも自分が使うために作った • 実験場として、4つの自由を行使してきた
19
• 自由1: Alpha 版で運用する自由 • 自由2: アイディアを実装に運ぶ自由 • 自由3: プロセスを最小化する自由
• 自由4: 自分のためのアプリを作る自由 20
androidx.compose.material3 Mitsubachi • 2025/10/22 に 1.5.0-alpha07 を入れた • 2週間おきに追従 Alpha
版 → 最新の機能が使えるということ 21
compose-bom-alpha • 通常は compose-bom (安定版) を使うはず • 全面的に Alpha を使いたいので
とにかく最新の機能を使いたいから! 22
Renovate • ライブラリ更新自動化 • CI 通ったら自動マージ • メジャー系は保留 // renovate.json5
{ automerge: true, packageRules: [ { matchUpdateTypes: ['major'], automerge: false, }, ], } 23
そこまでして作り たかったもの Segmented List Items (M3 Expressive) android-review.googlesource.com/c/ platform/frameworks/support/+/ 3806783
設定画面のような、角丸で グループ化されたリスト 24
alpha リリースより早く • androidx の alpha が出るのは約2週間おき • その間に入った実装も触りたい 25
SNAPSHOT を導入する // settings.gradle.kts maven(uri("https://androidx.dev/snapshots/builds/[build Id]/artifacts/repository")) { content { includeGroupByRegex("androidx.*")
} } 26
M3 Expressive 試行錯誤 • サンプルが揃っていない (2025年10月時点) • 使い方と見た目までがよくわからない (初心者 だからなおさら)
• そもそも、どれが Expressive なのかの区別が つかない 27
採用した M3 Expressive • ListItem (先述) • DropdownMenuGroup • LoadingIndicator
• TopAppBar の subtitle • Typography の Emphasized • …等、3アプリで速やかに採用 28
先に触った経験が下地になる • どのコンポーネントが最新 Expressive なのか • 見栄えと使い方を、実機で確認した • API がどう変化したのかを理解できた
29
気楽に API 安定化を待つ 実験的な API にアノテーションが付く @ExperimentalMaterial3ExpressiveApi opt-in して使えば、安定化した時に移行できる 30
「Alpha 版で運用する自由」の責任 最先端の実装に触れられる分 • 自己責任で不安定な API を使用する • 少ない実装サンプルの中から自己解決する 31
• 自由1: Alpha 版で運用する自由 • 自由2: アイディアを実装に運ぶ自由 • 自由3: プロセスを最小化する自由
• 自由4: 自分のためのアプリを作る自由 32
ボトルネックは移動した • AI で実装は、速くなった ◦ 着手の数時間後にマップも法令ビューワーも動いていた • 人間側の着想と判断は、速くなっていない ◦ 何を作るか、どこで完成とするか
33
AI によるイノベーション 産業革命と同じことが起きている • 織機が速くなると、次に不足するのは糸だった • 実装が速くなると、アイディアが不足してきた 34
思い立ったが吉日 でも裏を返せば • AI エージェントのおかげで実装コストは激減 • 思い付いたらすぐ試せる状態 だからアイディアを大切に育てたい 35
私の取り組み方 • アイディアを思い付いたら書き留めておく ◦ Notion とか GitHub Issue ◦ 1行だっていい
36
私の取り組み方 • 方向性が明白だったら AI とブレスト ◦ たとえば Superpowers Brainstorming スキル
• 曖昧な状態でも、とりあえず方向性を固める ◦ たとえば grill-me スキル 37
38
土地勘のないスタート • 最初のアプリ (Mitsubachi) はほぼ人力で • 学習の成果をアウトプットするために • “土地勘” が身についた
39
最初のアプリが参考実装になった 後続のアプリ開発では真似をさせた → 加速 // AGENTS.md Mitsubachi の実装パターン (モジュールレイアウト・ アーキテクチャ
) を参考にする。 ローカルに clone されているため、参照してよい。 40
「アイディアを実装に運ぶ自由」の責 任 • 自分が判断できるのは知っていることだけ ◦ 最初のアプリを手で書いて知識が定着させた • “土地勘” を鍛え、判断の質を上げる 41
• 自由1: Alpha 版で運用する自由 • 自由2: アイディアを実装に運ぶ自由 • 自由3: プロセスを最小化する自由
• 自由4: 自分のためのアプリを作る自由 42
だれも待たなくていい レビューがない、Approve 待ちもない リリース日を合わせる必要もない そのかわり、品質の基準を決めるのは自分 43
使えるものは全部使う 個人開発なので、なるべく無料で • linter ルール マシマシ • リポジトリの安全な Ruleset 整備
• AI に徹底的にレビューしてもらう 44
linter の整備 • Android Lint, ktlint, detekt を遵守させる • 全ルールを有効化
◦ 個別にルールを調整する 45
GitHub の Ruleset • main 直接プッシュ禁止 • マージできる条件 ◦ ワークフローの成功
◦ ≠ Change Requested 46
個人開発でもコードレビューしてもら う • PR 作成前 ◦ 別のエージェントに敵対的レビューさせる • PR 作成後
◦ AI レビュー bot 47
いろいろな AI レビュー bot 公開リポジトリなら無料枠がある • CodeRabbit • Gemini Code
Assist (7月に sunset 🌅) • Sourcery • Qodo, … 48
レビュー bot の様子 49
レビューへの対応 • 最初のアプリは自分で指摘に対応していた ◦ 自身の学習のためでもある • 以降はエージェントに判断させた ◦ 「レビューを確認し、技術的に妥当なら修正して。」 50
「プロセスを最小化する自由」の責任 業務と比べて、プロセスを簡素化するには • 品質は別で維持する仕組みが必要 • 品質のベースラインを定義しておく 51
• 自由1: Alpha 版で運用する自由 • 自由2: アイディアを実装に運ぶ自由 • 自由3: プロセスを最小化する自由
• 自由4: 自分のためのアプリを作る自由 52
いちばんのユーザーになる • 欲しいから作る・必要だから作る • リリースした後も、いちばん使うのは自分 ユーザー・開発者として、改善し続けられる 53
Mitsubachi • 開発を実践する最初のアプリ ◦ 技術スタック全般を振り返りたい ◦ DB, ネットワーク, ウィジェット, …
趣味にフォーカスして モチベを維持 54
ときどき六法 • アファメーションのアプリにインスパイア ◦ 肯定的な言葉を通知でくれる • 法令科目の学習で条文知識が必要 ◦ 定期的に通知で条文を送ったら覚えられる? ◦
→ 「ときどき」六法 55
OneMoreCoffee • 某コーヒーチェーンが好き ◦ 店舗のスタンプラリーのようなものがある • ときどき六法は Claude で •
OneMoreCoffee は Codex で ◦ エージェントの癖を理解したつもり 56
次の実験テーマ? • 自分以外のユーザーもターゲットにしたい • マネタイズも検討 ◦ ビジネスの視点を持つ ◦ 多くのユーザーにリーチする 57
「自分のためのアプリを作る自由」の責 任 • 自分専用に偏ってしまう ◦ 一人で開発していると凝り固まってしまう • インプットを絶やさず、他者の視点を借りる 58
業務への逆輸入 59
はてなブログ Android アプリ • 2025年11月 にリニューアル • 最新の技術でフルスクラッチ ✨ •
Pure Kotlin, Jetpack Compose, … https://staff.hatenablog.com/entry/androidappv3 60
はてなブログ Android アプリ (v3.0.0) 61
ウィジェットが追加 • アクセス解析 • お知らせ • 購読中のブログ 62
Glance の経験 ➡ 業務 • 私がウィジェット実装を担当した • 個人開発の経験が活きた • 先に触った経験が下地になっていた
https://developer.hatenastaff.com/entry/2026/08/26/110000 63
動作確認の自動化 ➡ 業務 • エージェントに mobile-mcp を使わせて検証 ◦ 自律的にエミュレータを操作させ、スクショ・録画 •
PR に動作確認の「証跡」として添付 ◦ 人間のレビュアーの負荷軽減・成果物の品質保証 64
PR の「証跡」 • 視覚的にレビュアーが理 解しやすい • 連続的な操作の検証では 録画させる指示 65
まとめ 66
個人開発の自由 • 自由1: Alpha 版で運用する自由 ◦ 実験的な API を自己責任で使い自己解決する •
自由2: アイディアを実装に運ぶ自由 ◦ 知っていることだけ判断できる。土地勘を鍛える 67
個人開発の自由 • 自由3: プロセスを最小化する自由 ◦ 品質のベースラインを自分で定義する • 自由4: 自分のためのアプリを作る自由 ◦
ユーザーが自分しかいない偏りと付き合う 68
まとめ • 好きなやり方で、好きなものを作っていい。 個人開発は楽しい! • 自分だけの実験場、はじめてみませんか? • おまけに、蓄えたノウハウは業務にも 逆輸入できます 69
hatena.co.jp/recruit ご清聴ありがとうございました 70 70