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

20250527_NEWT‐Tech-Talk_hosoi

Avatar for reiwa-travel reiwa-travel
May 27, 2025
120

 20250527_NEWT‐Tech-Talk_hosoi

Avatar for reiwa-travel

reiwa-travel

May 27, 2025
Tweet

Transcript

  1. ⾃⼰紹介 3
 • X (Twitter) : @hossynohito • (株) 令和トラベル

    海外旅⾏アプリ「NEWT (ニュート)」 Android アプリエンジニア 先週から駆け出し iOS アプリエンジニア • ex Sansan, メルペイ, ツクルバ, etc... Kazuho Hosoi
  2. 何を使うか • 社としては、AI 活⽤のための課⾦がされていて、⾃由に使える状況 ◦ OpenAI, Anthropic, Gemini の API

    key を各⾃に発⾏ ◦ Github Copilot を有効化 ◦ Devin を契約 ◦ AI 課⾦補助もあり ◦ etc… • アプリチームとしても、モデルや AI agent を限定しない • 各⾃が⾊々トライしてみることで、まずは触りまくって知⾒を広げる 🔥 7

  3. 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

  4. iOS/Android で使っているもの • コーディング AI agent は公式に IDE でサポートされているものが未だないので、 Cline

    や Devin 等、IDE 外で動作するものも活⽤ ◦ 最近、Copilot Agent が各 IDE で使えるようになったのトライ中 ◦ とはいえ、公式 IDE での対応は待ち遠しい(切実) ▪ Android は、Gemini AI agent on Android Studio が準備中とのことなので期待 9

  5. Rules の整備 • AI agent コーディング精度向上のために、Rules を整備 • プロンプトで、うまくいったこと/いかなったことを 追記していくことで

    AI agent を成⻑させる 🤝 • 🏷 Tips ◦ .clinerules や firebender.json に agent-rules を読ませる指⽰を 記載し、Rules 本体は1本化 ◦ 改善案を AI agent に考えてもらう ◦ 新旧設計が混じってるコードベースについて Rules で⾔及 10

  6. その他 AI による開発サポート • Devin Code Review ◦ Pull Request

    上で、Devin にコードレビューしてもらう ◦ Rules に沿ってレビューさせる • Devin Search ◦ 対象のリポジトリのロジックの確認や、⾼度な grep として使ったり • claude-code-action ◦ Github 上で、Claude に作業やコードレビューをお願いできる 11

  7. AI agent 活⽤状況 • AI agent にコード書かせて、⽣産性爆上がりですわ〜 • もう⾃分でコード書いてないっす •

    という状況には、まだ辿り着けてません 👶 • やりたいことによって、まるっと任せられることもありつつも、 複雑な既存コードに対して、仕様から実装というのはまだまだ難しい 13

  8. AI agent 活⽤レベル • 仕様を渡して、コードの指⽰なく実装できる ◦ 「〇〇 API を使って、△△画⾯で、このデザイン通りに実装して」 •

    仕様とコードの指⽰を渡して、広く実装できる ◦ 「〇〇 API を XxxxViewModel で呼ぶようにして、XxxxScreen の XxxxComponent に表⽰して」 • 仕様とコードの指⽰を渡しつつ、⼩さくスコープを区切って実装できる ◦ 「〇〇 API を XxxxRepository から呼べるようにして」 ◦ 「XxxxScreen の XxxxComponent を追加して」 ◦ 「XxxxViewModel.foo() で XxxxPepository.bar() を呼んで、取得したデータを XxxxComponent で表⽰して」 • 具体的なコードを指⽰して実装できる ◦ 「〇〇 API を呼ぶための XxxxApi を追加して、foo() メソッドで Xxxx クラスを返すようにして」 14
 やりとりが少ない 今このへん
  9. AI agent 活⽤レベル • 少しずつ、良い感じのコード出⼒してもらいつつも、精度向上の余地がいっぱい • Rules の整備が重要で、AI agent が上⼿くコーディングするための、

    コンテキストの整備や仕組みを整えていく必要がある • 今は⾃分でコード書く⽅が早い時もあるけど、未来への投資で試⾏錯誤しまくる 🏃 15

  10. Figma MCP で UI を実装 • Figma の URL を渡すと、構造化されたデータから

    UI を実装 ◦ デザインシステムを基に既存コードが実装されていれば、 Color や Typography も良い感じに ◦ ⽂⾔リソースの定義とか単純作業がミスなくできる ◦ UI Preview の mock データにも流⽤できたり 17

  11. GraphQL スキーマから実装 • GraphQL スキーマファイルを読ませ、指定の qurey/mutation か らApi や Repository

    クラスを実装 • Apollo でのコード⽣成の⼿順や、⽣成されたコードの場所を Rules で教えあげると精度が向上 18

  12. Androider の iOS ⼊⾨サポート • iOS アプリ開発を始めた Android アプリエンジニアの学習サポート •

    AI の⼿厚いサポートで、グッと敷居が下がる ◦ 例えば、👇 のような⼈に聞くのは躊躇するようなことを優しく教えてくれる ▪ 「Android における 〇〇 は iOS でいう何ですか?」 ▪ 「この Swift のコードを Kotlin で書くと?」 ▪ 「このコンパイルエラーなおして!」 ▪ 「TCA を Kotlin で説明して」 ▪ 「Android の Pull Request の内容から、iOS の変更箇所教えて」 21
 優しい Claude の設定
  13. 今後、⽬指したいところ • 精度向上 ◦ 細かい指⽰を減らしつつ、⼈間による修正も減らす ◦ 解釈が苦⼿なところの Rules の整備をして AI

    agent を成⻑させる • iOS ⇔ Android 仕様シェア ◦ 基本的に仕様は同じアプリなので、⼀つの情報源をもとに実装ができる未来 ▪ 例えば、⼀つの詳細仕様書を渡して、iOS/Android それぞれで AI agent にコードを書いてもらう ▪ 例えば、どちらかで書かれたコードから AI に仕様 or コードを書いてもらう 26