「COBOLは古い言語だから学ぶ意味がない」——そう思っていませんか?
実は今この瞬間も、あなたがATMでお金を引き出すとき、クレジットカードで決済するとき、銀行振込を行うとき、その裏側でCOBOLが動いています。世界に現存するCOBOLコードはIBM推計で8,000億行以上といわれ、毎日3兆ドル超の金融取引をCOBOLのシステムが処理しています。
本記事では「今からCOBOLを学ぶ価値があるのか」を、データ・日本の現状・キャリアの観点から徹底的に分析します。学ぶべき人・学ばなくていい人の判断基準と、実際の学習方法まで解説します。
- COBOLが今もインフラとして動いている規模と証拠
- 日本のメガバンク・官公庁・SIerでのCOBOL需要の実態
- COBOLエンジニアの年収水準と就職市場
- COBOL学習のメリットとデメリットを正直に比較
- 「COBOLを学ぶべき人」と「学ばなくていい人」の判断基準
- 2024年時点のモダンCOBOL(クラウド・API連携)の現状
- 具体的な学習方法と無料で使える学習環境
COBOLの現状:消えるどころか社会インフラの中枢にある
COBOLは1959年に誕生した古い言語ですが、「古い=使われていない」というわけではありません。むしろ現代社会のインフラとして不可欠な位置を占めています。
| 統計・事実 | 内容 |
|---|---|
| 現役COBOLコード行数 | 8,000億行以上(IBM推計)。Pythonの全OSSコードより多いとも |
| ATM取引 | 世界のATM取引の約95%はCOBOLプログラムを通る |
| 日次処理金額 | NYSEなど主要市場で毎日約3兆ドルの取引を処理 |
| 銀行取引 | 米国の対面銀行取引の約80%がCOBOLベースで処理 |
| 2020年コロナ禍 | 米ニュージャージー州が失業給付システム対応のため COBOLプログラマーを緊急公募(世界的に話題に) |
| IBM COBOL最新版 | COBOL 6.4(2023年)まで現在も活発に開発継続中 |
すべての行を1秒で読んだとしても、読み終えるのに約25,000年かかります。これほどの規模のコードが今すぐJavaやPythonに置き換わることはなく、少なくとも今後20〜30年は現役であり続けると多くの専門家が予測しています。
COBOLが使われている分野
COBOLが主に稼働している分野を整理します。どれも社会インフラの中核を担う領域です。
金融・銀行
COBOLが最も濃く残っているのが銀行・証券・保険です。コアバンキングシステム(勘定系)は国内外ともにCOBOL(またはPL/I)で構築されたものが大多数を占めています。三菱UFJ・みずほ・三井住友といった国内メガバンクも、数十年かけて構築したCOBOLベースのシステムを現在も稼働させています。
みずほ銀行は2019年に「MINORI」プロジェクトで基幹システムを刷新しましたが、それでもCOBOLコードを完全に排除したわけではありません。移行コストと既存資産の膨大さが、システム刷新の最大の壁です。
官公庁・公共機関
社会保険・年金・税務・住民基本台帳など国民生活に直結するシステムの多くはCOBOLで構築されています。米国でも社会保障局(SSA)やIRS(内国歳入庁)がCOBOLを使い続けており、これらは現代でも現役です。
製造・流通・小売
大手製造業の基幹業務システム(ERPのカスタマイズ層)や、物流・在庫管理システムにもCOBOLが残っています。1970〜1990年代に大規模投資で構築されたシステムは今も現役で稼働しており、「動いているものを下手に触らない」という判断が継続使用の理由です。
日本のCOBOL事情:需要は依然として高い
日本固有の事情として、メインフレームに依存した基幹システムが他国以上に多く残っている点があります。日本の銀行・生損保・大手小売・製造業のコアシステムはIBM z/OSやFujitsu/NECのメインフレーム上で動くCOBOLプログラムが支えているケースが多く、業界全体でのデジタルトランスフォーメーション(DX)が叫ばれる一方、その基盤となる古いシステムへの対応人材は慢性的に不足しています。
| 領域 | 日本でのCOBOL利用状況 |
|---|---|
| メガバンク・地銀 | 勘定系・外為・証券決済など基幹部分にCOBOLが残存 |
| 生命保険・損害保険 | 保険料計算・契約管理システムにCOBOLが多数 |
| 官公庁・自治体 | 住民・年金・税務システムにCOBOLベース多数 |
| 大手製造業 | 在庫・原価・受発注管理の基幹部分 |
| SIer(NTTデータ・富士通・NEC等) | 上記顧客の保守案件を大量に抱える |
DXの推進でクラウド移行が叫ばれていますが、数十年分の業務ロジックが凝縮した何百万行ものCOBOLコードを、短期間でJavaやPythonに書き直すのはほぼ不可能です。多くの企業は「クラウド上でCOBOLを動かす」か「コア部分はCOBOLのまま周辺をAPIで連携する」というアプローチを取っており、COBOLプログラマーへの需要は続いています。
COBOLエンジニアの需要と年収
求人市場の実態を見てみましょう。
求人の特徴
- 慢性的な人材不足:COBOLエンジニアの平均年齢は高く(45歳以上が中心)、若い世代の参入が少ないため常に需要が供給を上回っている
- 大手SIer・金融機関が主な採用元:NTTデータ・富士通・日立・NEC等の大手SIerや、銀行・保険会社の情報システム部門が主な採用先
- 未経験者への壁は低くない:業務知識(銀行業務・保険業務)とセットで求められることが多く、純粋な「COBOL未経験者歓迎」案件は限られる
- フリーランス案件も存在:保守・改修案件のフリーランス案件は単価が高い傾向がある
年収水準
COBOLエンジニアの年収は案件・経験・会社規模によって異なりますが、スキルの希少性から同年次の一般的なIT職より高めの傾向があります。
| 経験年数・ポジション | 目安年収 |
|---|---|
| 未経験〜3年(SIer新卒) | 350〜450万円 |
| 3〜7年(主力担当) | 500〜700万円 |
| 7年超(上流設計対応) | 700〜1,000万円 |
| フリーランス(保守案件) | 月80〜120万円(案件による) |
COBOLを書ける人間が減り続けている一方、レガシーシステムの保守ニーズは続くため、スキルの希少性プレミアムが発生しています。特に金融系基幹システムの上流設計まで担当できるCOBOLエンジニアは非常に高い市場価値を持ちます。
COBOL学習のメリット
①就職・転職の選択肢が増える
多くの学習者がPythonやJavaを選ぶ中、COBOLを選ぶことで競争が格段に少なくなります。金融・公共といった安定した業界で需要があり、ある程度スキルが身につけば仕事に困りにくい状態になります。
②業務システムの思想を深く理解できる
COBOLは「ビジネスロジックをそのままコードに落とす」設計思想で作られた言語です。レコード単位のバッチ処理、固定長ファイルの扱い、トランザクション管理の基礎を学ぶことは、現代のERPやクラウドサービスの設計を理解する上でも有益です。
③大規模レガシーシステムの読解力がつく
金融・公共系の大規模プロジェクトにアサインされると、既存のCOBOLコードを読み解く場面が必ずあります。読めるだけでも大きな強みになります。
④フリーランスとして高単価案件を狙える
COBOLの保守・改修案件はフリーランス市場でも一定数存在し、単価は高い傾向があります。他言語との掛け持ちでポートフォリオを広げる戦略としても有効です。
⑤プログラミングの歴史的文脈を理解できる
COBOLの設計思想(CODASYL委員会・グレース・ホッパーの貢献)や、バッチ処理・固定長レコードといった概念はコンピューターサイエンスの歴史の一部です。現代技術の「なぜそうなったか」を理解する助けになります。
COBOL学習のデメリット・リスク
①学習リソースが限られる
PythonやJavaScriptと比べると、日本語の書籍・オンラインコース・コミュニティが圧倒的に少ないです。エラーを検索しても情報が出てこないことがよくあります。
②業務知識とセットでないと価値が出にくい
COBOL単体の知識だけでは求人に対応できないケースがあります。金融業務・保険業務・官公庁業務の知識と組み合わせて初めて本番環境で価値を発揮します。
③開発環境の構築がやや難しい
本格的なCOBOL開発はIBM z/OS(メインフレーム)環境で行われますが、個人が手軽に触れる環境ではありません。ただし後述するGnuCOBOLを使えばPC上で学習は可能です。
④キャリアが特定業界・特定役割に限定されやすい
COBOL専業エンジニアとしてのキャリアは、金融・公共・製造の大手SIer案件に集中します。Web開発・スタートアップ・グローバルIT企業への転職には活きにくいため、キャリアの方向性を考えた上で学ぶ必要があります。
⑤モダン技術との親和性は低い
AI・クラウドネイティブ・マイクロサービス・モバイルアプリといった現代の技術トレンドとCOBOLの直接的な接点は少ないです。「最新技術を使いたい」というエンジニアには向きません。
こんな人にはCOBOL学習を勧める
- ✅ 大手SIer(NTTデータ・富士通・NEC等)や金融系情報システム部門への就職・転職を考えている
- ✅ 安定した業界・大企業でのキャリアを望んでいる
- ✅ すでにSIerに在籍しており、レガシーシステム保守に関わる可能性がある
- ✅ フリーランスとして高単価の保守案件を狙いたい
- ✅ 業務システム・基幹システムの仕組みを深く理解したい
- ✅ 競合の少ないニッチなスキルで差別化したい
- ❌ Web開発・スマートフォンアプリ・ゲーム開発が目標の人
- ❌ スタートアップやグローバルIT企業(GAFAM等)への就職を目指している人
- ❌ AI・機械学習・データサイエンス分野を志向している人
- ❌ 最新技術をどんどん使いたいという志向が強い人
モダンCOBOL:クラウド・API連携の最新動向
「COBOLはメインフレームの閉じた世界」というイメージは、2020年代では少しずつ変わりつつあります。
クラウド上のCOBOL
IBMはIBM Cloudでz/OS環境を提供しており、COBOLのワークロードをクラウドで動かすことができます。また、AWS・Azure・GCPでもIBMのLinux on Zシリーズを介してCOBOLを稼働させる事例が増えています。「COBOLはオンプレ専用」という時代は終わりつつあります。
COBOL + REST API 連携
既存のCOBOLプログラムをバックエンドに残したまま、フロントエンドをモダンなWebアプリやモバイルアプリに置き換える「フロントエンドDX」が進んでいます。COBOLの処理をREST APIとして公開し、ReactやVueから呼び出すアーキテクチャが現実の選択肢になっています。
COBOL ↔ Java / Python の変換ツール
IBM Watsonなどのコードマイグレーションツールや、AWSの「AWS Mainframe Modernization」サービスがCOBOLコードのJava変換をサポートしています。ただし完全自動化は現時点では難しく、COBOLの業務ロジックを理解した上での手動確認が必須です。ここでもCOBOLを読める人材の価値が生まれます。
IDENTIFICATION DIVISION.
PROGRAM-ID. TAX-CALC.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-PRICE PIC 9(7)V99 COMP-3 VALUE 12800.00.
01 WS-TAX PIC 9(5)V99 COMP-3.
01 WS-TOTAL PIC 9(7)V99 COMP-3.
01 WS-DISP PIC ZZZ,ZZ9.
PROCEDURE DIVISION.
COMPUTE WS-TAX ROUNDED MODE DOWN
= WS-PRICE * .10
COMPUTE WS-TOTAL = WS-PRICE + WS-TAX
MOVE WS-TOTAL TO WS-DISP
DISPLAY "税込合計: " WS-DISP "円"
STOP RUN.
これを見てわかるように、COBOLは英語に近い自然言語風の構文で書かれています。「COMPUTE(計算する)」「DISPLAY(表示する)」「MOVE(移動する)」など、命令語が英語の動詞そのものです。日本語話者には最初は冗長に見えますが、読みやすさを重視した設計のため、業務ロジックが把握しやすいというメリットがあります。
COBOLの実際の学習方法
ステップ1:無料の学習環境を用意する
メインフレームがなくてもPCでCOBOLを学習できます。GnuCOBOL(旧OpenCOBOL)はWindowsでもmacOSでもLinuxでも動く無料のCOBOLコンパイラです。
- Windows:GnuCOBOLのWindowsバイナリをインストール、またはWSL2上でLinux版をインストール
- macOS:Homebrew経由で
brew install gnu-cobol - Linux:
apt install gnucobol(Debian系) - クラウド:IBM Developer の無料z/OS体験環境(IBM Z Xplore)も利用可
ステップ2:基本構文を習得する(1〜2ヶ月)
COBOLプログラムは必ず4つのDIVISIONで構成されます。
| DIVISION | 役割 |
|---|---|
| IDENTIFICATION DIVISION | プログラム名・作成者などのメタ情報 |
| ENVIRONMENT DIVISION | ファイルや環境の設定 |
| DATA DIVISION | 変数定義(WORKING-STORAGE SECTIONなど) |
| PROCEDURE DIVISION | 実際の処理ロジック |
まずは COMPUTE文・IF文・EVALUATE文・PERFORM文 の4つを習得するだけで、基本的なバッチプログラムが書けるようになります。
ステップ3:ファイル処理を習得する(2〜3ヶ月)
COBOLの実務では固定長ファイルの読み書きが非常に重要です。SEQUENTIALファイルとINDEXEDファイル(VSAM)の扱いを学びましょう。
ステップ4:業務知識を身につける
COBOLを使う現場は金融・保険・公共が中心です。銀行の勘定系処理(入金・出金・残高照会・振込)、保険料計算、帳票出力といった業務知識があると実務に入ったときのキャッチアップが早くなります。
学習リソース
| リソース | 特徴 | 費用 |
|---|---|---|
| IBM Z Xplore | IBM公式の無料z/OS学習プラットフォーム。バッジ取得も可 | 無料 |
| GnuCOBOL公式ドキュメント | 英語だが最も正確な仕様書代わりに使える | 無料 |
| COBOL Programming Course(OpenMainframe) | GitHubで公開されている実習形式の英語コース | 無料 |
| 国内書籍 | 「COBOLプログラミングの基礎」等。古い書籍でも文法の基礎は十分カバー | 有料 |
よくある質問
まとめ:COBOLを学ぶ価値はある——ただし「誰にでも」ではない
今からCOBOLを学ぶ価値は確実にあります。ただしそれは万人向けではなく、「特定のキャリアパスを選ぶ人」に対しての話です。
- 価値がある人:大手SIer・金融・公共へのキャリアを目指す人、既存のレガシー保守に携わる人、ニッチなスキルで高単価を狙うフリーランス
- 優先度が低い人:Web・AI・スタートアップ・グローバル企業を目指す人
COBOLは「消えゆく言語」ではなく「社会インフラを支える縁の下の力持ち」です。学ぶ人が少ないからこそ、学べばスキルの稀少性が生まれます。目標と照らし合わせて、COBOLをキャリアの選択肢に加えることを検討してみてください。
COBOLの具体的な文法を学びたい方は、COMPUTE文(計算処理)・EVALUATE文(条件分岐)・PERFORM文(ループ処理)・IF文(条件分岐の基本) の各記事もあわせてご参照ください。