COBOLの現状
COBOLエンジニアとして働いている人や、これからCOBOLエンジニアとして就職することを検討している方は、COBOLの現状について中立の立場で把握しておいた方が良いでしょう。COBOLは現状取得メリットもあれば、デメリットと考えられる要素もあります。両面から把握し、今後の進路について検討してください。
新規開発はほぼなく、現行の保守・運用がほとんど
COBOLは長年使用され続けているプログラミング言語で、現在もCOBOLが主役のプロジェクトは複数あります。しかし、新規の開発案件でCOBOLが採用されることはほとんどないでしょう。COBOLが使用されているのは、古いシステムの保守や運用プロジェクトです。たとえば官公庁などには数十年稼働し続けているシステムが複数あり、これらの保守、運用プロジェクトではCOBOLが使用されているケースがあります。
COBOL技術者が不足
COBOL技術者の高齢化が進み、また若手の技術者はCOBOLから離れていく傾向があります。COBOLよりもWeb開発やスマホアプリ開発に使えるプログラミング言語が選ばれることが多いということです。しかし上述の通りCOBOL技術者の需要は続いているので、結果的に供給不足になっています。
COBOL技術者の需要は高い
COBOLのプロジェクトは続いているので、COBOL技術者の需要は高いということでした。またCOBOLが使用され続けているプロジェクトだけでなく、COBOLから別のプログラミング言語に書き換えるプロジェクトなどもあります。COBOLから別のプログラミング言語に書き換えるプロジェクトではCOBOL技術者が必要なので、需要が増える要因です。
COBOLとは
COBOLとは1959年にアメリカで開発された、事務処理向けのプログラミング言語です。60年以上の歴史があるので、数あるプログラミング言語の中でかなり古い言語になります。COBOLは現在も使われ続けていますが、どのような魅力があって長年使われ続けているのでしょうか。COBOLの特徴や用途について紹介します。
関連記事:COBOLエンジニアの転職に必要な経験・スキルとは?
COBOLの特長
COBOLには複数の特長があり、これらの特長があるからこそ長年COBOLは言語仕様上の得意分野で使われ続けています。現在COBOLを使用している人にとっては周知の事実かと思いますが、今後COBOLエンジニアを目指す人や、スキルの幅を広げる目的でCOBOLのスキル習得も検討している方はぜひ把握しておいてください。
関連記事:COBOLとは?学ぶメリットや将来性などをわかりやすく解説
事務処理系で主に使われている
COBOLは事務処理系で主に使われているプログラミング言語です。逆に言えば、Web開発、スマホアプリ開発、ゲーム開発、AI開発などでCOBOLが使用されることはほとんどないでしょう。実際COBOLでこれらのシステムを開発すること自体は可能ですが、他に利便性の高いプログラミング言語があるのでCOBOLを使用する理由がないということです。
COBOLが事務処理に向いている理由として、COBOLには帳票作成、印刷、出力などの機能があらかじめ備わっていて、簡単に実装できることが挙げられるでしょう。
基幹系システムで多く採用されており、実績が豊富
COBOLは基幹系システムで多く採用されていて、実績が豊富です。業界としては官公庁や金融機関での使用実績が豊富で、こういった業界では基幹系システムで大規模開発を行っている傾向があります。
基幹系システムとは企業業務の根幹を担うといった意味ですが、実態としてはWebなどではなく独自に汎用機を用意して構築されたシステムを指します。汎用機はメインフレーム、ホストコンピュータといった呼び方をされることもあります。
読みやすく、保守しやすい
COBOLのコードは簡単な英語の文章のような構造です。オブジェクト指向のようなプログラミング独特の考え方もなく、上から下に英語の指示文が並んでいると考えるとわかりやすいでしょう。処理のまとまりを作って別の箇所から呼び出すようなことはありますが、基本的には上から下にコードを記述しています。
このようなCOBOLの仕様から読みやすく、また読みやすいということは保守もしやすいということです。
COBOLしかできないと起こり得るリスク・デメリット
COBOLは現状も需要のあるプログラミング言語ですが、COBOLしかできないとリスクがあります。どのようなリスクがあるのかについては上でも触れてきましたが、ここでは改めてまとめます。COBOLの需要は限定的なので、その点がリスクになるでしょう。リスク回避のためにはCOBOLを含めて複数のプログラミング言語スキルを身につけるのがおすすめです。
新規開発案件がほとんどない
COBOLには新規開発案件がほとんどありません。長年続く基幹系システム案件の運用、保守案件がほとんどです。基幹系システム案件は今後も続くのですぐに仕事がなくなるわけではありませんが、新規開発案件がないということはCOBOL業界は縮小傾向ということです。
WebやAIなど先端技術開発ができない
COBOLは事務処理に特化したプログラミング言語なので、WebやAIなど先端技術開発ができません。COBOLでこれらの開発を行うことは技術としては可能ですが、利便性の観点からそのような開発案件はないということです。COBOLエンジニアとして働く場合、他の分野の技術にも目を向け独自にスキルを習得しておいた方が安心でしょう。
将来性が低い
COBOLの案件は現状も続いていますが、新規開発案件がほとんどないので将来的に伸びるとは考えにくいです。COBOLは縮小傾向にあるので、エンジニアは将来のことを考えてCOBOL以外のスキルも習得した方が良いでしょう。
COBOLエンジニアが今後価値を高めていくには
COBOLエンジニアは現状需要があり、希少性がある分平均年収が高めに設定されている案件もあります。しかしCOBOLは縮小傾向にあるのでCOBOLに特化するのはハイリスクということでした。そこでCOBOLエンジニアは自身の市場価値を高めていく必要がありますが、具体的にどのような方向性でキャリアアップやスキルアップをすれば良いのか解説していきます。
開発経験を活かしてマネジメント系の職種に進む
COBOLエンジニアとしての開発経験を活かしてマネジメント系の職種に進むことで、年収アップや市場価値アップを期待できます。マネジメントスキルがあればCOBOL以外の言語を使用している開発案件にもマネジメントポジションで参画しやすいので、将来的に仕事を失って困る心配も少なくなるでしょう。複数の観点からマネジメント系職種に進むことはメリットがあります。
ITコンサルタント
ITコンサルタントはマネジメント職種の中でもより上流工程を担当します。顧客に対してシステムの提案やプロジェクトの発足には携わりますが、プロジェクトが開始したら別案件のコンサルティング業務に着手する場合が多いでしょう。そのためプロジェクトメンバーや成果物のマネジメントだけでなく、より広い視点でマネジメント業務を行うことになります。
プロジェクトマネージャー
エンジニアからマネジメント系職種を目指す場合、プロジェクトマネージャーから目指すのが一般的でしょう。プロジェクトマネージャーはプロジェクト内で、プロジェクトメンバーや成果物のマネジメントを行います。プロジェクトマネージャーを経験した後、より広い視点からシステムやプロジェクトに携わるITコンサルタントを目指すルートが一般的でしょう。
レガシーシステムからの移行スキルを身につける
COBOLで開発されたレガシーシステムを新しいシステムに移行するプロジェクトも複数存在します。たとえばCOBOLをJavaに書き換えつつ、システムの環境や仕様自体を変えていくイメージです。メインフレームから自社サーバーやクラウドサーバーにシステムを移行させるようなプロジェクトもあるので、システム移行に関連するスキルを身につけてそのようなプロジェクトを狙って参画する戦略もあります。
クラウドへの移行
いろいろなシステムがクラウド移行していますが、COBOLシステムも例外ではありません。実際問題COBOLで作られたシステムは規模が大きくなおかつセキュリティの重要性が高く、クラウド移行が難しいことも少なくありません。それでも徐々にクラウド移行を進めているプロジェクトがあるので、クラウド技術を身につけると活かせる場面があります。またCOBOLとは関係なく、クラウド関連のスキルがあればエンジニアとして活躍できる場は広がるでしょう。
ほかのプログラミング言語への移植
COBOLからほかのプログラミング言語への移植が行われているということでした。これは最近始まったことではなく、何十年も前からCOBOLからJavaなどの言語に移植する動きはありました。それでも移植しなかったシステムが今でもCOBOLで稼働しているのですが、今後のことを考えてようやくほかのプログラミング言語に移植する案件もあるということです。
他システム開発のスキルを身につける
長年メインフレームでのCOBOL開発だけを行っているCOBOLエンジニアの人もいるでしょう。メインフレームでなくても、オープンCOBOLを長年扱っている人もいるはずです。このようにCOBOLに特化した状況だと上で説明した通りリスクが大きいので、他システム開発のスキルを身につけた方が良いです。
Web系のスキルは独学で習得しやすく案件も多いので習得メリットが大きいですが、業務システムでも自社サーバーやクラウドサーバーなどを使った一般的な開発環境に慣れておいた方が良いです。
組み込みシステム
組み込みシステム開発のスキルを身につける選択肢もあります。COBOLとの関連性はそこまで高くないので特殊な選択肢ではありますが、選択肢の一つとして把握しておくと良いです。
クラウド技術
クラウド技術のスキルはCOBOLエンジニアに限らずエンジニア全般にとって今後重要性が高いスキルです。ただしクラウド環境でCOBOL開発をしたり既存のCOBOLシステムをクラウド環境にそのまま移行するようなことは少ないと考えられるので、クラウド技術を身につける場合はCOBOL以外のプログラミング言語スキルをあわせて習得するとより良いです。
COBOLからの移植であればJavaが使用されることが多く、COBOLのスキルとは切り離したプロジェクトを狙うのであればWeb系のプログラミング言語スキルをあわせて習得するのがおすすめです。
COBOLに関するよくある質問
COBOLに関するよくある質問と回答を紹介します。COBOLは年齢層がある程度若いエンジニアにとっては特殊なプログラミング言語で、縁遠い人も多いでしょう。今後はよりCOBOL離れが進むと考えられますが、需要が続いている分供給不足が加速し、意外とCOBOL案件の年収相場が高いといったこともあります。
Q1. COBOLは今後どうなる?
COBOLの需要は今後も続くと考えられますが、新規開発案件はほとんどないので市場は縮小していくでしょう。まとめると、COBOLプロジェクトはすぐにはなくならないものの徐々に減っていき、数十年後には皆無になっている可能性もある、といったところです。ただ長期スパンでの正確な予測は誰にもできないので、COBOLが今後どうなるか正確には不明です。
Q2. COBOLが衰退している理由はなんですか?
COBOLが衰退している理由は、新規にCOBOLを習得する若手エンジニアが少なく、またCOBOLスキルを有するベテランエンジニアが引退しているからです。COBOLエンジニアが不足した結果システムの移行も難しくなり、仕方がなくCOBOLのまま先の不安を抱えながら稼働しているシステムも複数存在します。
Q3. COBOLの欠点はなんですか
COBOLの欠点として技術者の高齢化やCOBOL離れが進んでいることが挙げられます。言語仕様上の欠点としては、COBOLは事務処理以外の開発での利便性が低いことや、手続き型言語といって処理を順にべた書きしていくような形になりコードが冗長といったことが挙げられるでしょう。
input/?det_type=715">COBOLの求人を紹介してもらう
まとめ
COBOLは長年使用され続けているプログラミング言語で、現在もCOBOLで稼働しているシステムは複数存在します。COBOLが誕生してから60年以上経っていて、日本に存在するCOBOLシステムも数十年稼働している大規模システムが多い状況です。
このようにCOBOLは偉大なプログラミング言語と言えそうですが、将来を考えると先細りの可能性が高いことは否めないはずです。COBOLの新規プロジェクトは少なく、既存のシステムの運用・保守でCOBOLが使われている状況だからです。
COBOLエンジニアは需要に対して供給が不足している分単価が高い場合もありますが、COBOLエンジニアとして働く場合も別の選択肢を持っておくのがおすすめです。そのために市場動向を確認しておくことや、スキルアップのために学習を続けることが重要でしょう。
ITエンジニアの転職ならレバテックキャリア
レバテックキャリアはIT・Web業界のエンジニア職を専門とする転職エージェントです。最新の技術情報や業界動向に精通したキャリアアドバイザーが、年収・技術志向・今後のキャリアパス・ワークライフバランスなど、一人ひとりの希望に寄り添いながら転職活動をサポートします。一般公開されていない大手企業や優良企業の非公開求人も多数保有していますので、まずは一度カウンセリングでお話してみませんか?(オンラインでも可能です)
転職支援サービスに申し込む
また、「初めての転職で、何から始めていいかわからない」「まだ転職するかどうか迷っている」など、転職活動に何らかの不安を抱えている方には、無料の個別相談会も実施しています。キャリアアドバイザーが一対一で、これからのあなたのキャリアを一緒に考えます。お気軽にご相談ください。
「個別相談会」に申し込む
レバテックキャリアのサービスについて