
「COBOLは廃れてしまったのではないか?」
「COBOLは将来性なんてないでしょ?」
現役COBOLエンジニアである筆者も、現場で上記のような言葉をよく耳にします。
そんなCOBOLが廃れてしまったという話は事実なのでしょうか。実際に現場ではどのような状況なのでしょうか。
結論としてはCOBOLは廃れていないと考えています。
本記事では、現役COBOLエンジニアの視点から、COBOLはなぜ廃れたと言われてしまうのか、COBOLエンジニアが知るべき歴史や背景についてもご紹介していきます。
・COBOLはなぜ廃れたと言われてしまうのか
・COBOLエンジニアが知るべき歴史や背景
COBOLの誕生と全盛期を振り返る
現在では、COBOLは廃れてしまったと言われることが多いですが、全盛期はいつだったのでしょうか?
COBOLは、どのようにしてここまで活躍する言語になったのでしょうか。
この章では、COBOLの誕生と全盛期についてご紹介します。
COBOLはどのようにして生まれたのか
COBOLは1959年に誕生した言語になります。
それまでは、FORTRANという扱うのが非常に難しい言語が使用されていました。しかし、事務処理で帳票作成が主流になるにつれて、一般的に扱える言語の必要性が高まりました。
そこで開発されたのがCOBOLになります。
COBOLが誕生してから、アメリカ政府の事務処理システムはすべてCOBOLで開発されるようになったそうです。そこから全世界に広がっていきました。
日本では、6年ほど遅れて富士通がコンパイラを発表しています。
全盛期におけるCOBOLの活躍
COBOL言語の全盛期は1980年代といわれています。
登場してから約20年で最盛期を迎えていました。この時期の企業のシステムはCOBOLの割合が圧倒的多数を占めていました。それほどまでに業界の中では当たり前に浸透していた言語となっていたんですね。(現在でいうJavaみたいなものでしょうか。)
そういった状況下から、COBOLの技術者は注目を集めており、ここから2000年代に入るまで、COBOLエンジニアの人気が高まっていきました。
しかし、プログラミング言語のオープン化が進むにつれて、需要は徐々に減っていきました。
この時期に現役だった世代が、約40年後の現在では引退してしまっており、技術者不足につながっているということですね。
なぜCOBOLは廃れたと言われてしまうのか?3つの原因を解説
なぜCOBOLは廃れてしまったと言われているのでしょうか?
実際にそのような声が多いということは、そう思われる原因が存在しているはずですよね。
この章では、COBOLは廃れたと言われている3つの原因について解説していきます。
廃れたと言われる理由①「JavaやPythonなどの他言語の台頭」
COBOLは廃れたと言われている原因の一つ目が、他言語の台頭にあります。
1990年代後半や、2000年代からはJavaやPythonなど、オープン系言語が主流となっていきました。
それぞれの言語について、比較してみましょう。
項目 | COBOL | Java | Python |
---|---|---|---|
開発時期 | 1959年 | 1995年 | 1991年 |
設計目的 | 帳票処理、金融システム向け | オブジェクト指向、プラットフォーム開発 | 汎用的なプログラミングとデータ解析 |
文法の特徴 | 英語に近い構文で記述 | 型付け、オブジェクト指向が中心 | 簡潔で読みやすいコード |
主な用途 | 銀行、保険、給与管理システム | Webアプリ、モバイルアプリ、企業向けシステム | AI、機械学習、データ解析、Web開発 |
学習の難易度 | 中程度(専門知識が必要だが、理解自体はしやすい) | 中程度 | 低い |
コードの可読性 | 高い(分かりやすいが冗長) | 中程度 | 非常に高い(初学者でも理解しやすい) |
利用業界 | 銀行システム、保険システム、行政システム | 業界限定性なし | 業界限定性なし |
- COBOL
- メリット: 演算処理能力が高い。信頼性と安定性が高い。金融業界では現在でも広く使用されている。
- デメリット: 新しい技術との統合が難しく、学習リソースが少ない。技術者不足。
- Java
- メリット: 幅広いシステムに対応。企業システムでの利用が多い。
- デメリット: 冗長なコードになる場合がある。(開発者側にもよる)
- Python
- メリット: 初心者でも比較的簡単に学べ、データ解析やAIに強い。
- デメリット: 実行速度が遅い場合があり、素早いパフォーマンスが求められる場面では不向きな場合もある。
廃れたと言われる理由②「開発者不足と高齢化の影響」
次の理由として、開発者不足と高齢化の影響が挙げられます。
前述のとおり、COBOL言語の全盛期は1980年代であり、その時期に活躍されていたエンジニアの方が続々と引退しています。レガシーシステム全体の規模の縮小から、新しいCOBOLエンジニアは育ちにくく、技術者不足はさらに加速していくと考えられています。
さらに、高齢化が進むにつれて、マネジメントする立場になる方が多く、実際に開発するエンジニアが不足していくといったことも考えられます。
市場全体の規模は縮小しているとはいえ、それ以上にエンジニアが減っていっていることが大きな問題だと言えるでしょう。
技術者の高齢化や引退、若手エンジニアが育っていないこと、このことがCOBOLが廃れてきていると考えられる大きな理由の一つになります。
廃れたと言われる理由③「現代アプリケーションへの対応」
現代社会で使用されている様々なアプリケーションでは、COBOLを使用したレガシーシステムでは、対応できないことが多くなっています。
そもそもCOBOLという言語自体が、高速演算や帳票出力のために使用されてきた言語です。
なので、現代社会に対応できないということは仕方のないことではあります。
しかし、その点が評判を落とす大きな理由になっているのかもしれませんね。
汎用性が高いJavaやPythonでは対応可能なシステムが多く、全世界に広く普及していることにもうなづけます。
COBOLの現在の需要とは
ここまで、「COBOLの歴史や背景」や「なぜCOBOLは廃れたと言われているのか」についてご紹介してきました。
しかし、実際には現役でCOBOLを使用したシステムが稼働している現場は、数多く存在しています。
この章では、COBOLは実際には廃れていないと考えられる理由について、詳しく解説していきます。
金融や行政システムでの現役稼働の実態
実は、金融システムや行政システムではまだかなりの数のレガシーシステムが稼働しています。
これらの業界でも、システム移行やマイグレーションの流れは来ていますし、実際に移行プロジェクトも稼働しているところもあるでしょう。
しかし、莫大な量のデータを扱っていたり、システム自体がブラックボックス化していたりするので、安易にシステム移行できないでいる企業が多いのも現実です。
某銀行のように大障害が起きてしまう可能性もありますからね。
金融システムや行政システムなどの現代も稼働しているシステムは、メインフレーム自体のサービス終了がない限り、レガシーシステムとして今後も残り続けるのではないでしょうか。
マイグレーション案件におけるCOBOLエンジニアの需要
上記でご紹介したように、COBOLを使用して現在も稼働しているシステムは、今後も残っていく可能性が高いです。
となると必然的に、COBOLエンジニアの需要も引き続き残り続けるでしょう。
また、COBOLからオープン系の言語に移行する、マイグレーションのプロジェクトでも必ずCOBOLエンジニアが必要になります。
こういったプロジェクトにかかわることができれば、オープン系の知見も得ることができ、その後のキャリアにもつながりますね。
逆に言えば、オープン系言語の知見を持っていれば、マイグレーション案件に参加できる確率が上がり、エンジニアとしての需要はさらに高まっていくと考えられます。

まとめ
本記事では、COBOLエンジニアが知るべき歴史や背景についてや、COBOLはなぜ廃れたと言われているのかについてご紹介してきました。
結論としては、COBOLは廃れておらず、需要は残り続けると考えられます。
廃れたと言われてしまう理由としては、開発者不足と高齢化の影響などが挙げられますが、逆に言えばCOBOLエンジニア自体の希少性は高まっていくということになります。
今後の新技術の発達により、未来がどうなっていくかは不明瞭な時代になってきましたが、根強く残っていきそうなレガシーシステムを末永く見守っていきましょう。