- Authors

- Name
- Youngju Kim
- @fjvbn20031
はじめに:恐れるのは当然です
最近、開発者コミュニティでよく聞かれる話があります。
「GitHub Copilotがもう自分のコードを書いてくれています。自分はただTabキーを押しているだけな感じがして」
「Cursorを使ってみたら……正直、自分より速いんですよね。ジュニア開発者ってもう必要ないんじゃないですか?」
「Claudeにスペックを説明したら、バックエンド全体を30分で作ってくれました。私みたいな3年目はどうなるんでしょう?」
この恐れ、よくわかります。そして、この恐れは決して大げさではありません。
実際、OpenAIのDevin、CognitionのAIエージェントたちはますます複雑なプログラミングタスクをこなすようになっています。Y Combinatorのバッチには「AIが90%以上のコードを書く」スタートアップが次々と登場しています。スタートアップ創業者たちは、5人の開発チームでやっていたことを今では2人がAIと一緒にこなすと言います。
でも、ここで立ち止まらないでください。この記事を書くのは、皆さんをさらに不安にさせるためではありません。現実を直視しながら、具体的で実行可能な出口を一緒に探すためです。
良いニュースがあります。AIがコードをより多く生成するほど、そのコードをデプロイし、運用し、管理するインフラの需要が爆発的に増加しています。その役割を担うのがDevOpsエンジニア・プラットフォームエンジニア・SRE(Site Reliability Engineer)です。
この記事では、バックエンド/フルスタック開発者が18ヶ月以内にDevOps/プラットフォームエンジニアに転換するための現実的で具体的なロードマップを提示します。
1. 現実的なAI代替の現状分析
AIが実際に代替している開発業務
正直に話しましょう。AIがすでにうまくこなしていることがあります。
繰り返しのCRUDコード作成:「Userテーブル用のREST APIを作って」と言えば、ClaudeやGPT-4が5秒で完成したコードを出してきます。モデルクラス・コントローラー・サービスレイヤー・バリデーションまで。3年目の開発者が30分かけて書くコードです。
ボイラープレートコード:新規プロジェクトのセットアップ・環境設定・共通ユーティリティ関数・ミドルウェア——これらはAIが非常に速く正確に生成します。
単純なバグ修正:スタックトレースを貼り付けると、原因分析と修正方法を提示してくれます。もちろん常に正しいわけではありませんが、最初の試みで当たることがかなり多いです。
ユニットテスト作成:関数を1つ渡すと、テストケースをさくさく作ってくれます。エッジケースもそこそこ拾ってくれます。
ドキュメント化:JSDoc・README・APIドキュメント——既存のコードを見せると自動でドキュメントを作成してくれます。英語でも日本語でも。
コードレビュー初稿:PRの内容を見せると、潜在的な問題点・改善方向・セキュリティの脆弱性を分析してくれます。
こうした業務がジュニア〜中級開発者の仕事のかなりの部分を占めていたことは否定できません。
AIが代替しにくい業務
しかしAIにはまだ難しい領域があります。そして、この領域こそ皆さんが移動すべき場所です。
システムアーキテクチャの設計:「うちのサービスのDAUが100万で、ピーク時のTPSが5万で、レガシーシステムがこう絡み合っているんですが、どうマイグレーションすればいいですか?」という質問は、コンテキスト・組織の政治・コスト・技術的負債が複雑に絡み合っています。AIは一般的なパターンを提示できますが、この特定の会社・この特定の状況での最善策は人間が判断すべきです。
運用環境の問題解決:本番サーバーが深夜3時に落ちたとき、ログが入り乱れ、監視アラームが鳴り続ける状況で原因を追跡するのは——数年間の経験と直感が必要な仕事です。
インフラセキュリティ管理:組織のセキュリティポリシー・コンプライアンス要件・規制環境・内部チームの能力を総合的に考慮したセキュリティアーキテクチャはAIには代替できません。
ビジネス要件の理解と技術的な翻訳:非開発者のステークホルダーとコミュニケーションしながら、曖昧な要件を具体的な技術仕様に変換する能力。
複雑なシステム統合:レガシーシステム+クラウドサービス+サードパーティAPI+内部マイクロサービスが入り乱れた環境での統合は、依然として人間の手が必要です。
2. DevOps/プラットフォームエンジニアリングが答えである理由
AIコードの爆発 = インフラ需要の爆発
ここに逆説があります。AIがコードをより多く、より速く生成するほど、そのコードを実行するインフラがより多く必要になります。
考えてみてください。AIのおかげでスタートアップ1社が3ヶ月でマイクロサービスを10個作ったとします。この10個のサービスをどこで実行しますか?Kubernetesクラスターが必要です。各サービスにCI/CDパイプラインが必要です。ログとメトリクスを収集しなければなりません。セキュリティの脆弱性をスキャンしなければなりません。コストを最適化しなければなりません。
AIがアプリケーション開発速度を10倍にすれば、DevOpsエンジニアの管理負担も10倍になります。
実際にこういう現象が起きています:
- クラウドコストが爆発的に増加し、FinOps(クラウドコスト最適化)専門家の需要が急増
- AIサービスを運用するためのGPUクラスター管理の専門家不足
- LLMをプロダクションにデプロイして運用するMLOps/LLMOpsエンジニアが希少
- 開発チームの生産性を最大化するInternal Developer Platform構築の需要増加
DevOpsがAIに代替されにくい理由
DevOps業務の核心は運用コンテキストにあります。
本番環境の特性・チームの技術レベル・コスト制約・セキュリティ要件・組織の開発文化——これらすべてを知っていて初めて最適なインフラを設計できます。AIはこのコンテキストを持つことができません。
またDevOpsには予測不可能な障害状況が常に存在します。昨日まで正常に動いていたシステムが今日突然止まる理由は千通りあります。ネットワーク障害・ハードウェア故障・バグ・トラフィック急増・サードパーティAPI障害・セキュリティ攻撃……AIは一般的なチェックリストを提供できますが、リアルタイムに変化する状況で判断を下すのは経験豊富なエンジニアの仕事です。
3. 開発者 → DevOps転換ロードマップ(18ヶ月)
では、具体的なロードマップです。現在バックエンドやフルスタック開発者であれば、プログラミングの基礎はすでに身についています。その上に以下を積み上げていきます。
0〜3ヶ月目:基礎固め
この段階で最も重要なのはLinuxとNetworkingです。DevOpsエンジニアとして、すべての基盤になります。
Linuxの深掘り
単純にコマンドを暗記するのではありません。Linuxがどのように動作するかを理解する必要があります。
- プロセス管理:fork・exec・シグナル・ps・top・htop・lsof
- ファイルシステム:inode・ファイルパーミッション・マウント・/proc・/sys
- ネットワーキング:TCP/IPスタック・socket・netstat・ss・tcpdump・iptablesの基礎
- システムリソース:CPU・メモリ・ディスクI/O・ボトルネックの特定
推奨資料:「The Linux Command Line」(William Shotts)、Linux Foundationの無料講座
Bashスクリプティングと自動化
繰り返し作業を自動化する能力はDevOpsの核心です。Pythonも良いですが、シェルスクリプトはサーバーのどこでもすぐに実行できる万能ツールです。
#!/bin/bash
# シンプルなヘルスチェックスクリプト例
set -euo pipefail
SERVICES=("web" "api" "worker")
FAILED=0
for service in "${SERVICES[@]}"; do
if ! systemctl is-active --quiet "$service"; then
echo "WARN: $service is not running"
FAILED=$((FAILED + 1))
else
echo "OK: $service is running"
fi
done
if [ $FAILED -gt 0 ]; then
echo "ALERT: $FAILED service(s) are down"
exit 1
fi
echo "All services healthy"
Git高度な活用
開発者としてGitはすでに知っているでしょうが、DevOps観点でのGitOps戦略を学ぶ必要があります:
- ブランチ戦略:GitFlow・GitHub Flow・trunk-based development
- Gitフック:pre-commit・pre-pushの自動化
- Git submodule・monorepoの管理
- GitOpsの原則:インフラ設定をGitで管理する
Dockerマスター
コンテナは現代のDevOpsの根幹です。
# マルチステージビルドでイメージサイズを最適化する例
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
FROM node:20-alpine AS runner
WORKDIR /app
RUN addgroup --system --gid 1001 nodejs
RUN adduser --system --uid 1001 nextjs
COPY /app/.next ./.next
COPY /app/node_modules ./node_modules
COPY /app/package.json ./package.json
USER nextjs
EXPOSE 3000
CMD ["npm", "start"]
- Dockerfileの最適化:レイヤーキャッシュ・マルチステージビルド
- Docker Composeでローカル開発環境を構築
- コンテナネットワーキング・ボリューム管理
- イメージセキュリティスキャン(Trivy・Snyk)
目標資格:なし(基礎段階・ビルドアップ)
実習プロジェクト:これまで作ったWebアプリをDocker Composeでコンテナ化。DB・アプリサーバー・リバースプロキシをすべてコンテナで構成する。
3〜6ヶ月目:クラウド基礎
クラウドを選ぶとき、AWSとGCPのどちらか一方を深く掘り下げた方が良いです。最初から複数のクラウドを学ぼうとすると浅くなりがちです。
日本の就職市場でもAWSが圧倒的に多く使われているため、AWSをお勧めします。
AWSのコアサービス
- コンピューティング:EC2・Auto Scaling Group・ECS・Lambda
- ネットワーキング:VPC・Subnet・Security Group・Route 53・CloudFront・ALB/NLB
- ストレージ:S3・EBS・EFS
- データベース:RDS・DynamoDB・ElastiCache
- セキュリティ:IAM(最重要!)・KMS・Secrets Manager・WAF
- モニタリング:CloudWatch・CloudTrail
IAMは特に深く勉強してください。セキュリティインシデントの大半は誤ったIAM設定から来ています。Principle of Least Privilegeを常に意識しましょう。
資格ロードマップ
AWS Certified Cloud Practitioner(CCP)→ AWS Certified Solutions Architect Associate(SAA)
CCPは2〜3週間の勉強で取得可能です。SAA は2〜3ヶ月集中して取り組む必要があります。SAAがあると履歴書でかなり目立ちます。
推奨学習資料:
- Stephane MaarekのUdemy講座(コスパ最高)
- AWS公式ドキュメントとハンズオンラボ
- TutorialsDojo模擬試験
実習プロジェクト:3ヶ月目に作ったコンテナアプリをAWSにデプロイ。EC2+RDS+S3の組み合わせから始めて、ALB+Auto Scalingに拡張する。
6〜12ヶ月目:Kubernetesの核心
この段階がDevOps転換の核心です。Kubernetesをきちんと理解すれば、就職市場での評価がまったく変わります。
Kubernetesの基本概念
Kubernetesは最初は複雑に見えますが、核心概念を理解すると論理的な構造が見えてきます。
# Deploymentの例
apiVersion: apps/v1
kind: Deployment
metadata:
name: web-app
namespace: production
spec:
replicas: 3
selector:
matchLabels:
app: web-app
template:
metadata:
labels:
app: web-app
spec:
containers:
- name: web
image: myapp:v1.2.3
ports:
- containerPort: 3000
resources:
requests:
memory: '128Mi'
cpu: '100m'
limits:
memory: '256Mi'
cpu: '500m'
livenessProbe:
httpGet:
path: /health
port: 3000
initialDelaySeconds: 30
periodSeconds: 10
学ぶべき核心リソース:
- ワークロード:Pod・Deployment・StatefulSet・DaemonSet・Job・CronJob
- サービス:Service・Ingress・NetworkPolicy
- 設定:ConfigMap・Secret
- ストレージ:PersistentVolume・PersistentVolumeClaim・StorageClass
- ネームスペースとRBAC:マルチテナントとアクセス制御
Helm Charts
Kubernetesアプリケーションのパッケージングのスタンダードです。自分でチャートを作り、既存のコミュニティチャートをカスタマイズする練習をしましょう。
# Helmでnginx-ingressをインストール
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm install ingress-nginx ingress-nginx/ingress-nginx \
--namespace ingress-nginx \
--create-namespace \
--set controller.service.type=LoadBalancer
CKA資格(Certified Kubernetes Administrator)
CKAはDevOps職種で最も認められている資格の一つです。実技試験であり、単純な暗記ではなく実際の問題解決能力を測定します。
準備方法:
- Mumshad MannambethのUdemy CKA講座(強くお勧め)
- killer.sh模擬試験(実際の試験より難しいので、これをクリアすれば本試験は楽に感じる)
- ローカルにkind(Kubernetes in Docker)またはk3sクラスターを構成して毎日実習
実習プロジェクト:既存のアプリをKubernetesに移行。Deployment・Service・Ingress・ConfigMap・Secretをすべて適用。HPA(Horizontal Pod Autoscaler)で自動スケーリングを設定する。
12〜18ヶ月目:深化+専門化
基礎が固まったら、今度は専門性を積み上げる番です。
CI/CDパイプライン
# GitHub Actionsの例:ビルド・テスト・デプロイの自動化
name: Deploy to Production
on:
push:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run tests
run: npm test
build-and-push:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build Docker image
run: docker build -t myapp:$GITHUB_SHA .
- name: Push to ECR
run: |
aws ecr get-login-password | docker login --username AWS --password-stdin $ECR_REGISTRY
docker push $ECR_REGISTRY/myapp:$GITHUB_SHA
deploy:
needs: build-and-push
runs-on: ubuntu-latest
steps:
- name: Deploy with ArgoCD
run: argocd app sync myapp --revision $GITHUB_SHA
GitOpsツールのArgoCDを必ず学びましょう。インフラ設定をGitで管理し、GitのステートとKubernetesクラスターの実際のステートを同期させるパラダイムです。現在最も広く採用されているCD方式です。
Observability(オブザーバビリティ)
運用上の問題を素早く見つけるには良いモニタリングが必要です。
- メトリクス:Prometheus+Grafana(Kubernetesモニタリングの標準)
- ロギング:ELK Stack(Elasticsearch+Logstash+Kibana)またはGrafana Loki
- トレーシング:OpenTelemetry+JaegerまたはTempo
ダッシュボードを1つちゃんと作ってみると、PromQLというPrometheusのクエリ言語が自然と身につきます。
IaC(Infrastructure as Code)
インフラをコードで管理するとバージョン管理・再現性・コラボレーションが容易になります。
# TerraformでEKSクラスターを作成する例
module "eks" {
source = "terraform-aws-modules/eks/aws"
version = "~> 20.0"
cluster_name = "my-eks-cluster"
cluster_version = "1.29"
vpc_id = module.vpc.vpc_id
subnet_ids = module.vpc.private_subnets
eks_managed_node_groups = {
general = {
instance_types = ["t3.medium"]
min_size = 1
max_size = 10
desired_size = 2
}
}
}
TerraformはDevOpsの必須スキルです。AWS CDKやPulumiも良いですが、Terraformが業界標準です。
AI/MLインフラの専門化(最もホットな分野)
ここから本当に差別化できます。LLMサービスを運用する会社には特別なインフラが必要です:
- GPUクラスター管理(NVIDIA A100、H100)
- vLLM・TGI(Text Generation Inference)でのモデルサービング
- モデルレジストリ(MLflow、Weights & Biases)
- フィーチャーストア
- データパイプライン(Airflow、Prefect)
この分野の専門家は現在非常に不足しています。DevOpsの基礎にこの専門性を加えると、市場で非常に希少な人材になります。
4. 実際の転職事例:3年目バックエンド開発者の話
背景:山田健(仮名)、2020年に国内大学のコンピュータサイエンス学科を卒業後、中堅IT企業でJavaバックエンド開発者として3年勤務。Spring BootでのCRUD API開発・JUnitテスト作成が主な業務。年収450万円。
転換を決意したきっかけ:2023年末、ChatGPTを使ってみたとき、自分が書いていたコードの種類の80%をAIが代替できると気づいた。周囲で「ジュニアは必要なくなる」という話も聞いた。漠然とした不安の代わりに具体的なアクションを取ることを決意。
0〜3ヶ月目(基礎固め)
退勤後に2〜3時間ずつLinuxを勉強し始めた。最初はls・grep・sedといったコマンドを覚える程度だったが、プロセスとファイルシステムの動作原理を理解するにつれて、まったく新しい世界が開けていく感覚があった。
Dockerはすでにある程度知っていたが、Dockerfileの最適化とネットワーキングは新しく学んだ。何より会社でも使っていた技術なので、すぐに実務に活かせた。
3〜6ヶ月目(AWS基礎)
UdemyのStephane Maarek講座でAWSを勉強した。個人のAWSアカウントを作ってフリーティアの範囲で最大限に実習した。月のAWSコストが2〜3千円ほどかかったが、これは投資だと思った。
SAA資格を取得したとき、履歴書に初めて「AWS Certified」のバッジが付いた。小さなことだが、確実に自信がついた。
6〜12ヶ月目(Kubernetes)
この区間が最も大変だった。Kubernetesの概念が最初はとても抽象的に感じた。Podとは何か、ServiceとDeploymentの違いは何か、ずっと混乱していた。
突破口は実習だった。個人のノートPCにminikubeをインストールして、会社のアプリと似た構造のアプリをK8sで動かし始めた。エラーメッセージを見て直して、また出てきたエラーを直す繰り返しをしていたら、概念が定着してきた。
CKA試験を申し込んだことがモチベーションになった。試験日が決まれば気を抜けない。最初の試験で72点(合格ライン66点)で通過した。
12〜18ヶ月目(専門化+就職活動)
ArgoCD・Terraform・Prometheus/Grafanaを学びながら、同時にポートフォリオを整理した。GitHubに以下をアップロードした:
- 3層アプリの完全なK8sマニフェスト
- GitHub Actions+ArgoCDベースのCI/CDパイプライン
- TerraformでAWS EKSクラスターをプロビジョニングするコード
- Grafanaダッシュボードのスクリーンショット
履歴書の前職経験をDevOps観点で書き直した。「API開発」の代わりに「Dockerコンテナ化およびデプロイパイプライン構築への貢献」のように。
就職活動を開始してから2ヶ月でスタートアップのDevOpsエンジニアポジションへの転職に成功した。
結果:年収620万円(約38%アップ)。もちろんより大きな企業でキャリアを積めば、さらに上がる可能性がある。
学んだこと:「最初は自分が開発者でもDevOpsでもない中途半端な存在になった気がして不安でした。でも開発経験があるDevOpsエンジニアはむしろ価値が高いんですよ。アプリケーションの観点からインフラを見ることができるので」
5. DevOpsでAIを活用する
DevOpsへの転換とともにAIを積極的に活用すると、学習速度が大幅に上がります。
インフラコード作成の自動化
プロンプト例:
「AWS EKSクラスターにRedisを高可用性でデプロイするHelm values.yamlを書いてください。
要件:
- Redis 7.x
- マスター1台、レプリカ2台
- 永続ストレージ10Gi
- メモリリミット512Mi
- liveness・readiness probeを含む」
障害原因の分析
エラーログをAIに見せて原因分析を依頼しましょう。AIはすぐにいくつかの可能性を提示し、確認すべき事項を教えてくれます。もちろん最終判断は自分でする必要がありますが、デバッグ時間を大幅に短縮できます。
Kubernetes YAMLの理解と最適化
複雑なYAMLファイルをAIに見せて「この設定は何をしているか説明して」「セキュリティ観点で改善できる点は?」のように質問すると、学習ツールとしても優れています。
AIOps:AIベースのモニタリング
将来的には、AIが監視アラームを分析して自動で初期対応するAIOpsが標準になるでしょう。すでにAWS DevOps Guru・Datadog AI・New Relic AIなどのツールがこの方向に進んでいます。
LLMインフラ運用の専門家 = 最も希少な職種
現在、最も需要が多く供給が不足しているポジションは「LLMインフラ運用の専門家」です。Llama・MistralなどのオープンソースモデルをGPUクラスターにデプロイし、vLLMでサービングし、コストを最適化する専門家が業界で非常に希少です。DevOpsの基礎にこの専門性を加えると、年収1000万円以上を狙えます。
6. 現実的な年収と就職市場
日本のDevOpsエンジニア年収の現状(2026年基準、概算)
経験レベルによって異なりますが、大まかな範囲は:
- ジュニアDevOps(1〜2年):450〜600万円
- ミドルレベルDevOps(3〜5年):600〜900万円
- シニアDevOps(5年以上):900万〜1,200万円
- DevOpsリード/プラットフォームエンジニア:1,200万円以上
- LLM/AIインフラ専門家:1,000〜1,500万円
開発者と比べてDevOpsは供給が不足しています。同じ経験年数でDevOpsはバックエンド開発者より平均15〜25%高い年収を得る傾向があります。
資格の価値
- AWS SAA(Solutions Architect Associate):書類選考の通過率アップ。日本市場で最も認められているクラウド資格。
- CKA(Certified Kubernetes Administrator):技術面接で非常に有利。「K8sできます」と「CKA持ってます」は大きな違い。
- Terraform Associate:IaC導入企業が急速に増えており、重要度が増している。
- GCP Professional Cloud DevOps Engineer:GCP使用企業で優遇される。
資格は目的ではなくツールです。実力が土台にあってこそ資格が輝きます。
ポートフォリオ戦略
GitHubに以下を整理しましょう:
- インフラリポジトリ:TerraformでEKSまたはGKEクラスターをプロビジョニング
- アプリデプロイリポジトリ:K8sマニフェスト+Helm+ArgoCD設定
- CI/CDパイプライン:GitHub Actionsワークフロー
- モニタリングダッシュボード:GrafanaダッシュボードJSON+Prometheusアラート設定
- README:各プロジェクトの目的・アーキテクチャ図・使い方を明確に説明
ブログも大きな助けになります。学んだことを記事にまとめると理解が深まり、採用担当者にも良い印象を与えます。
7. 最初の一歩:今すぐできる3つのこと
長いロードマップを見て途方に暮れているかもしれません。でも今すぐ、今日から始めることができることがあります。
1)Linux環境を作る(今日できる・無料)
- Macならすでにターミナルがあります。WSL2(Windows Subsystem for Linux)をインストールすればWindowsでもLinuxが使えます。
- 以下のコマンドを実際に実行してみてください:
# 現在実行中のプロセスを確認
ps aux | grep nginx
# ネットワーク接続の状態
ss -tulnp
# システムリソースの使用量
htop
# ファイルシステムの使用量
df -h
# 特定ポートを使用しているプロセス
lsof -i :8080
2)Dockerで最初のコンテナを実行する(今日できる・無料)
Docker Desktopをインストールして以下を実行してみましょう:
# NginxウェブサーバーのコンテナをSt実行
docker run -d -p 8080:80 --name my-nginx nginx
# 実行中のコンテナを確認
docker ps
# コンテナのログを確認
docker logs my-nginx
# コンテナ内部に接続
docker exec -it my-nginx bash
ブラウザで http://localhost:8080 を開くとNginxのデフォルトページが表示されます。これがコンテナです。
3)学習計画を立てる(今日できる)
具体的な日付と目標を設定しましょう:
- 今月:Linux基礎+Dockerマスター
- 来月:AWS開始+CCP資格の勉強開始
- 3ヶ月後:AWS SAA取得
- 6ヶ月後:K8s基礎+個人プロジェクト開始
- 1年後:CKA取得
- 18ヶ月後:DevOpsへの転職
カレンダーに勉強時間をブロックとして入れましょう。毎日2時間、週末4〜5時間で十分です。
おわりに:変化は機会です
AIがソフトウェア開発の形を変えているのは事実です。しかしそれは開発者の終わりを意味しません。
蒸気機関が登場したとき、手で布を織っていた人たちは職を失いました。しかし同時に、機械を操作して管理する新しい職種が生まれました。AI時代も同じです。
AIがコードを生成する速度が上がるほど、そのコードを安全に・効率的に・安定的に運用する専門家がより多く必要になります。DevOpsとプラットフォームエンジニアリングはその中心にある分野です。
恐れは行動のシグナルです。この記事を読んでいること自体が、皆さんがすでに変化に対応しようとしている証拠です。そのエネルギーを具体的な学習と実践につなげましょう。
最初にDockerコンテナを正常に実行したときのあの小さな達成感が、18ヶ月後にCKAを手にして、より良いポジションに転職するという旅の最初の一歩です。
始めましょう。今すぐ。