自力主義の開発者がAI駆動開発に慣れるまでの実践記録
はじめに
開発経験3年、Flutter/TypeScript/Golangを触るアプリエンジニアです。
2022年末にChatGPTが登場してから、一応使ってはいたものの、正直なところ「結局自分でやった方が早い」と思っていました。新しいAIツールが出るたびに試しては落胆する、そんな繰り返しでした。
しかし2024年、気づけば私のワークフローは大きく変わっていました。今では開発タスクの大部分をAI駆動で進めています。
この記事では、「自分でやる」が染み付いていた私が、どのようにしてAI駆動開発に慣れていったのか、その実践的なプロセスを共有します。
なぜAIを使わなかったのか
まず、私がAI活用に消極的だった理由を正直に書きます。
1. 内心どこかで仕事を奪われたくないと思っていた
技術者としてのプライドというか、「自分の価値がなくなるのでは」という漠然とした不安がありました。
2. AIのアウトプットが信用できなかった
特に初期の印象で、めちゃくちゃなコードを出してくる経験が何度かありました。「結局最終的には自分の目で見て確認しないといけない」と考えると、管理工数が増えるだけに思えたんです。
3. 言語化するのがめんどくさい
自分でググって実装した方が早い、そう思っていました。
困ったときは:
- Zenn/Qiitaのブログ記事を探す
- GitHubのissueやStack Overflowを見る
- 公式ドキュメントを読む
- 一応AIにも聞く(でも信用してない)
この順番で調べていました。
変化の下地 - 周囲の影響
2024年春の衝撃
会社に新しい業務委託のエンジニアが来ました。その人は大規模開発も、AI駆動開発で9割やるスタイルでした。
当時の私からしたら「あり得ない」と思いました。でも、確かに成果物は出ているし、スピードも速い。
SNSの影響
Twitter(X)などで、AI駆動開発の成功事例が次々と流れてくるようになりました。Claude Codeが話題になった頃です。
「本気でやらないと置いてかれる」
そう思い始めました。
会社の後押し
会社がClaude Max Planの費用を負担してくれたのも大きかったです。金銭的なハードルがなくなり、気軽に使えるようになりました。
でも、この時点ではまだ自己実装に固執していました。
転機 - 「慣れ」という名の積み重ね
決定的な「これだ!」という瞬間があったわけではありません。
個人開発で、YouTube見ながら楽して開発したいな〜と思って、とりあえずタスクを他人事のようにAIにやらせていたら、なんとなく要領を掴んだ感じです。
だんだんわかってきたこと
AIを触っているうちに、以下のことに気づきました:
指示したことは、大体ちゃんとやってくれる
逆に言えば、伝えづらいコンテキスト(既存のコードの書きっぷりとか)は、明示的に伝えないとやってくれませんでした。
新しいアプローチの発見
そこで、こういう進め方にしたらうまくいくと感じ始めました:
- とりあえず今までのお作法や自分のやり方は気にせず、動作確認ができるレベルでアウトプットを出してもらう
-
その後リファクタリングという形で、お作法に従うようにしていく
- 自分でコードを直す
- または既存のコードを参照させて、それに倣わせる
重要なのは「前に進める」こと。
いちいち中断して細かくダメ出しするのではなく、基本的に前に進めるイメージです。
成果物ができれば基本それをリバース(やり直し)せず、それを元にまた付け加えていく。どうしてもダメなら、新しく会話を始めて0からスタート。
この「リバースしない」という考え方が、私にとっての大きな転換点でした。
現在のワークフロー
今では、業務でも納期のない業務負債解消系(手作業を自動化するタスクなど)で活用しています。
典型的な開発フロー
1. Git Issueを立ち上げる
簡単に課題感と要求を書きます。
2. LLM AgentにそのIssueを読ませる
Claude等のエージェントに、Issueの内容を理解させます。
3. 調査フェーズ
- Issueを進めるために必要な調査をさせる
- 調査結果はIssueに進捗として書く
- 認識合わせすべきことがあればまとめさせた上でIssueにコメントさせる
4. 実装フェーズ
- 要求及び調査内容をもとに実装を走らせる
- 一旦書きっぷりは気にせず、挙動を実現することだけをゴールにする
5. リファクタフェーズ
- 動作確認して正常に動くことが確認できたら、気に入らない書きっぷりや、既存のコードに沿わない部分、非効率的な部分をリファクタする
- 自分で直すか、既存のファイルを読ませてそれに従わせる
AIに任せること/自分でやることの使い分け
最初の要求を伝える以外は、段々とAI経由になっています。
ただし、例外もあります:
デザイン反映系は、特にFlutterでanimationを含めての実装は自分でやることが多い
- Figma MCPや画像共有等を用いても思い通りにならないイメージ
- 勤務先がアプリで売り上げを立てているので、UI/UXには質が求められる
- ここは手抜きしにくい領域です
AI駆動開発の効果
開発速度と負荷の変化
一言で言うと「楽」です。
- 気づいたらできているイメージ
- 最近は調査結果もかなり正確なので、頼りになる
- ものを動かすことに関しては本当に強い
- 0→1でとりあえず動く成果物を作るなら、AIは最強かもしれない
注意点
TypeScriptあたりだと、as anyでLintエラーを回避しようとすることがあるので、そこは注意が必要です。
AI駆動開発に慣れるためのアドバイス
これからAI駆動開発に慣れようとしている人へ、私からのアドバイスです。
1. とりあえずAIちゃんの言う通りにやらせてみよう
意外といいものができるかもよ👍
可愛い子には旅をさせよ
最初は不安かもしれませんが、まずはAIに任せてみることです。思ったより正確にやってくれる、という安心感を得ることが第一歩です。
2. 結局、自分のインプットが重要
AIの出力の質は、あなたの指示の質に依存します。
3. たまーに勘違いするのでちゃんと見よう
AIもズレたことを言うことがあります。そこはちゃんと見てSTOPなりなんなり、適切に介入する必要があります。
4. とにかくAIと触れる時間を増やす
AIの特性、性格を掴むべきです。これは人とのコミュニケーションと同じで、触れば触るほど理解が深まります。
一番大きな考え方の転換
私にとっての一番の転換点は:
「思ったより正確にやってくれるな」という安心感
ちゃんと言った通りに、意外と動いてくれる。この信頼感が生まれたことが、すべての始まりでした。
まとめ - これから慣れていく人へ
AI駆動開発への移行は、一瞬で起こるものではありませんでした。
- 周囲の影響を受け
- 少しずつ触る時間を増やし
- 「慣れ」という形で、自然とワークフローに組み込まれていった
そんな感じです。
「完璧を求めない」「まず動かす→リファクタ」「リバースしない」
この3つの原則が、私のAI駆動開発の基礎になっています。
あなたも、まずは小さな個人開発から始めてみてください。YouTube見ながら、楽して開発するつもりで。
気づいたら、AIが頼れる開発パートナーになっているはずです。
この記事が、AI駆動開発に一歩踏み出すきっかけになれば幸いです。
Happy Coding with AI! 🚀
Discussion