COBOLとは?
COBOLとは、事務処理コンピューター用の汎用プログラミング言語です。1959年に誕生し、60年以上もの間世界中で使用され続けています。
多くの方はプログラミング言語と聞くと、Java・C言語・Pythonなどをイメージされるでしょう。しかし、一昔前はプログラミング言語といえば、COBOLが中心でした。
今や「COBOLは古い言語」というイメージを持つ方も少なくありませんが、昨今、再び注目を浴びるようになってきました。その理由や将来性を含めて、ここでは『COBOLとは』をテーマに、COBOLの概要についてわかりやすく解説していきます。
COBOLは読みやすくて書きやすい言語
COBOLは『Common Business Oriented Language』の略称で、読み方は「コボル」です。直訳すると「共通事務処理用言語」を意味します。COBOLは『グレース・ホッパー氏』によって開発され、誰もがプログラミングできるようにと、自然言語である英語に近い構文である点が大きな特徴です。
COBOLが登場するまでは、コンピューター言語はアセンブラやFORTRANが主流で、難解であるというイメージがありました。しかし、COBOLは英語に近く読みやすくて書きやすいことから人気を博し、一気に広がっていきました。
日本には1963年頃に上陸し、銀行などの金融関係・大企業の会計業務などを中心に普及していき、事務処理システムの開発言語として定着しました。
COBOLと言えば事務処理用言語としてのイメージがありますが、コンピューターの性能向上により、大規模データの処理にも多く利用されています。
COBOLとJavaの違い
若いエンジニア層では、「Javaは分かるけれどもCOBOLはさっぱり分からない」という方が少なくありません。違いを一言で述べるとすれば、COBOLは手続き型言語であり、Javaはオブジェクト指向言語であるという点です。
その他、外部のライブラリを使用する場合、COBOLではモジュールを呼び出してメインから一通り実行しますが、Javaはメソッドを呼ぶという点も大きな違いです。
COBOLエンジニアの年収
年収は需要と供給の関係で決まります。DXブームによって、COBOLで組まれたレガシーシステムの見直しが大きな課題となっている企業が増える中、前述したようにCOBOLエンジニアに対する需要は高まっているようです。
一般的なシステムエンジニアの年収は「マイナビエージェント 職種図鑑」での平均年収は431万円(※2023年5月執筆時点)、経済産業省2017年発表の「IT関連産業の給与等に関する実態調査結果」からエンジニア/プログラマを参考にすると、平均年収592万円と分かりました。
国税庁2020年発表の「民間給与実態統計調査」における民間企業平均年収は433万円なので、システムエンジニアの年収は、調査媒体によってバラつきがあることが分かります。
ITエンジニアの報酬は実績が重要視される傾向があるため、COBOLエンジニアを求める企業では、一般的なエンジニアよりも収入がアップする可能性もあります。また、COBOL言語のほかにもさまざまな言語を習得することで、さらなる年収アップ・キャリアアップが図れるでしょう。
【参考】:マイナビエージェント 職種図鑑 ※【平均年収 調査対象者】2020年1月~2020年12月末までの間にマイナビエージェントサービスにご登録頂いた方 【参考】:IT関連産業における給与水準の実態① ~ 職種別(P7) 【参考】:民間給与実態統計調査-国税庁
COBOLはどこで使われている?
COBOLは主に以下のようなシステムで使用されています
・行政システム ・金融機関の業務システム ・ホテルや交通機関の予約システム ・一般企業の基幹システム
多くのデータを取り扱っていたり、金額の計算が必須であったりするシステムでは、COBOLを採用しているところが多い傾向です。
COBOLは常に進化を続けている
レガシーのイメージが強いCOBOLですが、誕生当初の第1規格から現在の第4規格に至るまで、多くの機能が追加されたり廃止されたりしてきました。例えば、帳簿作成を簡単にする「報告書作成機能」や、データベースの操作を可能にする「データベース機能」は追加された代表的な機能です。
2002年の変更では、当時主流となりつつあったオブジェクト指向にも対応しました。このように、COBOLは時代の流れにあわせて、常に進化・洗練され続けているプログラミング言語です。
COBOL言語の特徴
COBOL言語は誕生してから60年以上もの間、多くのシステムで使用されてきました。ここからはCOBOL言語の主な特徴を見ていきましょう。
信頼性が高い
1959年に誕生したCOBOL言語は60年以上の実績があり、行政・金融系・勘定系システムを多く生み出してきました。中には20年、30年と安定稼働しているシステムもあります。この長年に渡る稼働実績と、積み上げられたノウハウはCOBOL言語の信頼性の証です。
マルチプラットフォームに対応
COBOL言語のコンパイラは、異なるプラットフォームでの相互利用を可能とする連携プロトコルに対応しています。そのため、マルチプラットフォーム環境でのCOBOL言語を用いたシステム構築が可能です。
COBOL言語は安定性が高く互換性に富み、プラットフォームに依存しないため、移植性の高い言語であると言えます。
計算能力が高い
COBOL言語は元々事務処理、特に計算処理に優れており、勘定系システムや給与システムなどで多く使われています。計算能力が高いという評価は、小数点以下の計算が正確である点にあります。
Java言語などでは計算処理は内部的に2進数で表現され、浮動小数点計算で誤差発生の可能性があります。これで積みあがると、整数での誤差を生みます。この誤差を生まないための計算は非常に複雑で、その検証も手間が掛かります。
勘定系システムでは誤差が許されないため、10進数演算を定義できるCOBOL言語が重用されるのです。
バッチ処理が得意
バッチ処理とは、一定量のデータを一括処理することです。特に事務処理では夜間などにデータをまとめて処理するケースがあり、バッチ処理が行われる場面が多くあります。
COBOL言語はこのバッチ処理が得意な言語であり、勘定系システムや銀行システムでは、利用時間外にまとめて取引データの更新・残高更新・利息計算などで使われてきました。
ぜひ『マイナビIT エージェント』をご活用ください!
COBOL言語の懸念点
扱いやすいCOBOL言語ですが、いくつかの懸念点も存在します。ここでは、COBOL言語に関するやや心配な点をご紹介します。
扱えるエンジニアが減りつつある
近年は、オープン系システム開発に向いたC・Java・C++などが言語の主流となっており、COBOLを扱えるエンジニアの年齢層が高くなっています。実際、COBOLエンジニアの中心年齢は40代後半〜50代にシフトしており、60代のフリーランスが活躍している例もあるほどです。
今後、こうした年齢層の高いCOBOLエンジニアの引退時期を迎えると、COBOLエンジニアの絶対数が不足し、COBOLシステムがブラックボックス化するリスクが想定されます。
負の遺産化する可能性
システムの刷新が強く叫ばれている昨今ですが、依然として官公庁や大企業を中心に、COBOLで組まれた1,000万ステップ規模の基幹システムが現在でも多く稼働しています。上述したとおり、COBOLを扱える技術者は減少しつつあるため、トラブルの根本解決ができないといった問題も表面化しています。
そうした中、COBOLで組まれたシステムをJavaなどを用いたオープン系のシステムに切り替える動きも少なからず見られますが、COBOLを扱えるエンジニアの減少が足枷になり、思うように進んでいないというのが現状です。
こうしたことから、COBOLを負の遺産と見る向きもありますが、一方で貴重な資産として残していくという声も聞かれます。
新規開発案件はほぼない
現在のところまだまだ多くのシステムで稼働を続けているCOBOL言語ですが、新たにCOBOL言語を使用して開発を行うという企業はほぼありません。そのため、COBOL言語の主な使用用途は、現状のシステム保守、トラブル対応、システム切り替え時の対応などです。
「今後システム開発を主に行っていきたい」という方は、COBOLではなく現在主流の言語を学ぶのが得策です。
あなたの転職を丁寧にサポートします。
今、再びCOBOL言語が注目されている
デメリットとも取れる懸念点があるCOBOL言語ですが、実は近年再び注目が集まっているという話があります。その実態や理由について見ていきましょう。
新型感染症流行がきっかけ
登場してから60年以上が経過し、衰退したレガシーのプログラム言語と目されていたCOBOLが注目を浴びたきっかけの1つは、新型感染症の流行だと言われています。
2020年4月にアメリカ・ニュージャージー州の州知事が、COBOLについて触れました。新型感染症の流行によって、アメリカでは次々とロックダウンが起きましたが、この結果、失業者が増加して失業保険給付申請が急増し、給付申請システムがダウンしました。
このシステムはCOBOL言語で実装されていたことから、ニュージャージー州知事が「システム強化のためにCOBOLプログラマーが必要だ」と会見で述べたのです。このことがCOBOL言語注目のトリガーとなったという次第です。
【参考】:COBOLがコロナで大注目?! 60年以上前の言語が最近話題
DX化によるシステム移行で需要増
日本のシステムが他国と比べて遅れているという指摘が政府からなされています。この20数年間日本経済は低迷していますが、その原因の1つに日本企業がデジタルを有効利用できていない点が指摘されています。
「日本企業においてもデジタルトランスフォーメーションを進めるべき」として、2018年に経済産業省が「DX推進ガイドライン」を策定しました。現在はデジタルガバナンス・コード2.0としてまとめられ、公表されています。
この中でも、「DX化はIT技術による業務改革が競争力を高める上で欠かせない」と述べられています。
しかし、先で述べたとおりCOBOLを扱えるエンジニアは大きく減少しています。そのため、レガシーシステムの移行や再構築のハードルが一気に上がってしまいました。このことから、COBOL言語を扱えるエンジニアの需要は増えつつあるのです。
もしも、COBOLエンジニアとしてより有利な転職を目指すなら、条件に合った企業を探してくれる転職エージェントの活用をおすすめします。
【参考】:経済産業省:デジタルガバナンス・コード
エンジニア転職のご相談はぜひ
『マイナビIT エージェント』へ!
COBOL言語を見直す動きもある
ここまで述べたように、COBOLの必要性は逆に高まってきました。それとともに、COBOLを見直す動きもあります。
かつてのCOBOLは、非常に高価な大型の汎用マシンであるメインフレーム上で利用されるのが一般的でしたが、最近ではオープンCOBOLと呼ばれる、Unixなどのオープンシステム上で利用されるCOBOLが登場しています。
実際に、AWSのLambda上でCOBOLアプリをサーバーレスで動かせるサービスも登場するなど、COBOLへの需要に対応する動きが見られます。
COBOLの将来性
COBOLは官公庁や銀行や保険会社などを中心に、多くの組織や企業で定着している言語です。COBOLで構築されたシステムの多くが信頼性や堅牢性が求められるため、逆に安定稼働している企業では、そのリプレイスに対して慎重です。その一方では、リプレイスの必要性に対する認識は年々高まっています。
最近、有名銀行のシステムトラブルが社会問題化していますが、COBOLで組まれたレガシーシステムの複雑化、COBOLエンジニアの退職などによって、なかなか思い切った手を打てないという状況も、リプレイスに慎重になっている要因とされています。
こうした状況から、COBOLに対する高い需要は当面の間続くでしょう。いずれにしても、求人に対する人材不足は顕在化しており、COBOLエンジニアの確保と育成は喫緊の課題であることは否めません。
COBOLで活躍の場を広げよう
ここまで今話題のCOBOL言語について解説しました。COBOL言語は古いイメージがありますが、官公庁・地方自治体・金融機関・大企業などで、重要なシステムとして数多く採用され、今も日夜動いています。
リプレイスやメンテナンスなども含めて今後も高い需要が見込まれることから、減少傾向にあるCOBOLエンジニアへの期待はますます高まることでしょう。Javaなどのオープン系のプログラミング言語を使えて、さらにCOBOLを習得すれば、活躍の機会は一気に広がります。
COBOL入門書や解説サイトも多数あり、またWindowsやMacでもプログラミングを行えるため、ハードルは高くありません。この機会にCOBOLの勉強をスタートさせれば、さらに大きな仕事にチャレンジできる可能性があります。とはいえ、1人でCOBOL言語を活かせる職場を見つけるのは、なかなか難しいものです。
そこで利用を推奨するのがマイナビIT エージェントです。
マイナビIT エージェントは、IT・Webエンジニア向け、無料の転職⽀援サービスです。
IT・Webエンジニアの転職事情に詳しいキャリアアドバイザーが、あなたのご経験やスキルをお伺いし、転職活動のプランをご提案します。
アドバイザーは企業側と直接連携を取れるので、求人票に載っていない情報も確認することができます。こちらで、働き方などをしっかり確認の上、応募企業を選んでいくのが良いでしょう。
未経験からのキャリアチェンジは心身ともに本当に大変だと思います。少しでもご自身の負担を減らすべく、エージェントサービスを活用して、失敗のない転職活動に臨んでいただければ幸いです。
IT業界に精通した専任アドバイザーと豊富な求人で、
あなたの転職活動を丁寧にサポートします。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから