AI 時代のエンジニアのキャリアについて考える(2026年4月現在)

AI 時代のエンジニアのキャリアについて考える(2026年4月現在) 前提 AI にできることはどんどん拡大している。 使い方次第で、様々な役割を果たすことができるようになっている。 各組織の CTO を筆頭に、 AI 利用のベストプラクティスを探る動きがあるが、いろいろなことができすぎて、最適解を定義するのは難しい。 これらを踏まえて、 AI 時代のエンジニアの生存戦略を考えてみる。 AI にできないこと AI の活用方法や可能性が無限大であることが、思考を整理するうえで妨げになっていると感じる。 そのため、まずは、 AI には絶対に無理なことは何かを考えてみる。 前提を把握しきれない AI に指示を出すのは人間なので、その人間がすべての前提を AI に伝えられなければ、納得できる結果が得られない。 やめる判断 AI は指示されれば、基本的にはその指示通りに動く。仮に、その指示が、やめたほうがいい設計や要件の場合でも続けてしまう。 要件や設計の矛盾を指摘する AI は矛盾点を指摘することがあまりないように感じる。 矛盾したまま進めると、後になって崩壊するリスクが存在する。 判断を下す 様々な案を提案はしてくれるけど、最終的にメリットとデメリットを比較して判断を下すのは常に人間側になる。 影響範囲を示す AI は指示したとおりに実装はしてくれるが、その実装がどこまで影響があるのかは提示してくれないように感じる。 提示してくれたとしても、コードレベルで修正内容を提示する程度ではないだろうか。 その修正をレビューし、問題がないかを判断する責任は人間側にあると思う。 人間がやったほうが早いこと 意見が対立した場合の調整 ビジネスサイド / デザイナー / エンジニア間で意見が対立した場合、それぞれの意見を聞いたうえで、最終的な判断をするのは人間しかできない。 例えば、人間同士の会話のように相手の話している最中に割り込むことがしずらいかな? または、 AI は文脈を理解していない可能性があり、プロジェクトの詳細などを一から説明しないとスタート地点に立てないことがある。 または、人間同士なら一緒に働いていれば、相手の思考プロセスがわかるようになり、最適な対応ができる可能性があるが、 AI には難しいことがある。 AI に実装してもらった場合に困ること AI が書いたコードを読めるのか問題 私は、「わかりやすいコードは、読んだだけで仕様がわかるもの」だと考えている。 読んでいて、仕様がわからないようなコードは読むのが辛い。 そのコードがベースになっても大丈夫なのか問題 機能を追加する際に、 AI が書いたコードがベースになり、それに合わせる形で実装が追加されていく。 ベースが悪いと、追加実装時に、悪いコードに引きずられて、どんどんと悪いコードが増殖していく。 AI が得意な分野 明確な仕様がある 評価基準が決まっている パターンが存在する エンジニアが進むべき方向 「決める側」に回る回数を増やす ...

2026年4月10日 · 1 分 · 奥田 智紘

設計思想 × Androidアプリ実装という自分の強み

ソフトウェア設計が分かっていても、 Android アプリが作れない理由 Android アプリの設計は「掛け算」で成立する Android OS 固有の制約 Kotlin を「使っている」と「使いこなしている」の差 Jetpack Composeは「 UI 実装」ではなく「設計そのもの」 「設計思想 × Android 文脈」が価値になる 自分の強みについて ソフトウェア設計が分かっていても、 Android アプリが作れない理由 ソフトウェア設計が分かっている人が、必ずしも Android アプリをうまく作れるとは限らない。 これは、 Android 開発を続けてきて、何度も実感してきたことだ。 設計原則を理解している。 責務分離の重要性も分かっている。 それでも、 Android アプリとして形にしようとすると、どこかで無理が出る。 その理由は、単に Android OS の制約が強いから、というだけではない。 Android アプリの設計は「掛け算」で成立する Android アプリの設計は、次の要素が同時に成立して初めて機能する。 Android OS 固有の制約 Kotlin という言語の前提 Jetpack Compose という UI モデル どれか一つだけ分かっていても足りない。 Android OS 固有の制約 まず避けて通れないのが、 OS の制約だ。 ライフサイクルが複雑で、いつ破棄されるか分からない プロセスは OS 都合で突然 kill される バックグラウンド動作や権限には厳しい制限がある これらを無視した「きれいな設計」は、実機上では簡単に崩れる。 Android では、 壊されることを前提に設計する 必要がある。 ...

2026年1月22日 · 1 分 · 奥田 智紘