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
20250527_NEWT‐Tech-Talk_hosoi
Search
reiwa-travel
May 27, 2025
0
260
20250527_NEWT‐Tech-Talk_hosoi
reiwa-travel
May 27, 2025
Tweet
Share
More Decks by reiwa-travel
See All by reiwa-travel
QA Career Talk vol.5 〜QAエンジニアの生存戦略~
reiwatravel_0405
0
11
20250527_NEWT‐Tech-Talk_semba
reiwatravel_0405
0
310
20250527_NEWT‐Tech-Talk_fukuda
reiwatravel_0405
0
300
20250527_NEWT‐Tech-Talk_magara
reiwatravel_0405
0
330
reiwatravel_20250416_vpoe-magara_lt
reiwatravel_0405
1
1.3k
reiwatravel_20250225-newt-tech-talk-14_lt2
reiwatravel_0405
1
360
20241128_NEWT‐Tech-Talk_nakano
reiwatravel_0405
0
170
CTO-of-the-year-2024_reiwatravel
reiwatravel_0405
0
98
20241106_Company_Deck_for_engineers.pdf
reiwatravel_0405
0
11k
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Embracing the Ebb and Flow
colly
86
4.7k
How GitHub (no longer) Works
holman
314
140k
Docker and Python
trallard
44
3.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Agile that works and the tools we love
rasmusluckow
329
21k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
940
Writing Fast Ruby
sferik
628
61k
Transcript
アプリ開発での取り組み 令和トラベル流 急成⻑を⽀えるAI × プロダクト開発の最前線 Kazuho Hosoi
⾃⼰紹介
⾃⼰紹介 3 • X (Twitter) : @hossynohito • (株) 令和トラベル
海外旅⾏アプリ「NEWT (ニュート)」 Android アプリエンジニア 先週から駆け出し iOS アプリエンジニア • ex Sansan, メルペイ, ツクルバ, etc... Kazuho Hosoi
今回の話
今回の話 • NEWT アプリチームでの、アプリ開発における AI 活⽤の現状を紹介 • コーディングでの AI 活⽤の話がメイン
• 具体的な活⽤シーンの紹介も 5
AI ツールの話
何を使うか • 社としては、AI 活⽤のための課⾦がされていて、⾃由に使える状況 ◦ OpenAI, Anthropic, Gemini の API
key を各⾃に発⾏ ◦ Github Copilot を有効化 ◦ Devin を契約 ◦ AI 課⾦補助もあり ◦ etc… • アプリチームとしても、モデルや AI agent を限定しない • 各⾃が⾊々トライしてみることで、まずは触りまくって知⾒を広げる 🔥 7
iOS/Android で使っているもの • 🍎 iOS ◦ モデル:GPT, Calude, Gemini ◦
コード補完:Github Copilot ◦ AI エージェント:Cline, Copilot Agent, Devin • 🤖 Android ◦ モデル:GPT, Calude, Gemini ◦ コード補完:Gemini on Android Studio ◦ AI エージェント:Cline, Firebender, Codex CLI, Copilot Agent, Devin 8
iOS/Android で使っているもの • コーディング AI agent は公式に IDE でサポートされているものが未だないので、 Cline
や Devin 等、IDE 外で動作するものも活⽤ ◦ 最近、Copilot Agent が各 IDE で使えるようになったのトライ中 ◦ とはいえ、公式 IDE での対応は待ち遠しい(切実) ▪ Android は、Gemini AI agent on Android Studio が準備中とのことなので期待 9
Rules の整備 • AI agent コーディング精度向上のために、Rules を整備 • プロンプトで、うまくいったこと/いかなったことを 追記していくことで
AI agent を成⻑させる 🤝 • 🏷 Tips ◦ .clinerules や firebender.json に agent-rules を読ませる指⽰を 記載し、Rules 本体は1本化 ◦ 改善案を AI agent に考えてもらう ◦ 新旧設計が混じってるコードベースについて Rules で⾔及 10
その他 AI による開発サポート • Devin Code Review ◦ Pull Request
上で、Devin にコードレビューしてもらう ◦ Rules に沿ってレビューさせる • Devin Search ◦ 対象のリポジトリのロジックの確認や、⾼度な grep として使ったり • claude-code-action ◦ Github 上で、Claude に作業やコードレビューをお願いできる 11
AI agent 活⽤状況の話
AI agent 活⽤状況 • AI agent にコード書かせて、⽣産性爆上がりですわ〜 • もう⾃分でコード書いてないっす •
という状況には、まだ辿り着けてません 👶 • やりたいことによって、まるっと任せられることもありつつも、 複雑な既存コードに対して、仕様から実装というのはまだまだ難しい 13
AI agent 活⽤レベル • 仕様を渡して、コードの指⽰なく実装できる ◦ 「〇〇 API を使って、△△画⾯で、このデザイン通りに実装して」 •
仕様とコードの指⽰を渡して、広く実装できる ◦ 「〇〇 API を XxxxViewModel で呼ぶようにして、XxxxScreen の XxxxComponent に表⽰して」 • 仕様とコードの指⽰を渡しつつ、⼩さくスコープを区切って実装できる ◦ 「〇〇 API を XxxxRepository から呼べるようにして」 ◦ 「XxxxScreen の XxxxComponent を追加して」 ◦ 「XxxxViewModel.foo() で XxxxPepository.bar() を呼んで、取得したデータを XxxxComponent で表⽰して」 • 具体的なコードを指⽰して実装できる ◦ 「〇〇 API を呼ぶための XxxxApi を追加して、foo() メソッドで Xxxx クラスを返すようにして」 14 やりとりが少ない 今このへん
AI agent 活⽤レベル • 少しずつ、良い感じのコード出⼒してもらいつつも、精度向上の余地がいっぱい • Rules の整備が重要で、AI agent が上⼿くコーディングするための、
コンテキストの整備や仕組みを整えていく必要がある • 今は⾃分でコード書く⽅が早い時もあるけど、未来への投資で試⾏錯誤しまくる 🏃 15
具体的な AI の使い所の話
Figma MCP で UI を実装 • Figma の URL を渡すと、構造化されたデータから
UI を実装 ◦ デザインシステムを基に既存コードが実装されていれば、 Color や Typography も良い感じに ◦ ⽂⾔リソースの定義とか単純作業がミスなくできる ◦ UI Preview の mock データにも流⽤できたり 17
GraphQL スキーマから実装 • GraphQL スキーマファイルを読ませ、指定の qurey/mutation か らApi や Repository
クラスを実装 • Apollo でのコード⽣成の⼿順や、⽣成されたコードの場所を Rules で教えあげると精度が向上 18
UI Preview, UnitTest, CI コードの⽣成 • これらのコードは明確なものが多いので、精度⾼く書いてもらいやすい • Preview や
UnitTest は量産することになるので相性がいい 19
⼤規模なマイグレーション作業 • iOS の TCA ライブラリにおける破壊的変更への対応 ◦ パターンは同じだが、影響箇所が⼤量にあり、 各箇所で個別の変更が必要になるようなケース •
移⾏ガイドを作成し、読み込ませることで精度を向上 20
Androider の iOS ⼊⾨サポート • iOS アプリ開発を始めた Android アプリエンジニアの学習サポート •
AI の⼿厚いサポートで、グッと敷居が下がる ◦ 例えば、👇 のような⼈に聞くのは躊躇するようなことを優しく教えてくれる ▪ 「Android における 〇〇 は iOS でいう何ですか?」 ▪ 「この Swift のコードを Kotlin で書くと?」 ▪ 「このコンパイルエラーなおして!」 ▪ 「TCA を Kotlin で説明して」 ▪ 「Android の Pull Request の内容から、iOS の変更箇所教えて」 21 優しい Claude の設定
チームでの活動
チームでの活動 • チームの定例で、使ってみたノウハウやトピックスを共有 • (予定)AI エージェントライブコーディング会の実施 ◦ AI への指⽰の出し⽅をワイワイすることで、効果的なプロンプトをチームで学ぶ狙い •
他チームのノウハウをインストール ◦ アプリ開発でも使えそうなものはどんどん取り⼊れていく 23
まとめ
まとめ • アプリ開発でも活⽤シーンはいっぱいある • が、AI 使って⾃分でコーディングしない!には全然、辿り着けてない 25
今後、⽬指したいところ • 精度向上 ◦ 細かい指⽰を減らしつつ、⼈間による修正も減らす ◦ 解釈が苦⼿なところの Rules の整備をして AI
agent を成⻑させる • iOS ⇔ Android 仕様シェア ◦ 基本的に仕様は同じアプリなので、⼀つの情報源をもとに実装ができる未来 ▪ 例えば、⼀つの詳細仕様書を渡して、iOS/Android それぞれで AI agent にコードを書いてもらう ▪ 例えば、どちらかで書かれたコードから AI に仕様 or コードを書いてもらう 26
Thank you! 27