COBOLの需要は、世間の人が思っている以上にあります。
求人サイトでも多くの求人案件が登録されていて年収や賃金も高いです。
しかし、需要はありますが、求人内容を確認すると、業務知識、他のプログラミング言語、RDBの経験などがないと将来的に活躍するのは厳しい状況にあります。
Pythonなどの流行りのプログラミング言語と比べると、COBOL自体の将来性は低いですが、企業の基幹業務と直結している言語なのですぐになくなることはありません。
筆者のCOBOLの経験を踏まえ、ご紹介します。参考になれば幸いです。
a)某社オフコンCOBOLから、オープン系COBOLへの移行(変換)プログラムやサブルーチンなどを開発
b)オープン系COBOL(Unix、Windows)のCOBOLコンパイラをOEM販売。製品化作業や保守作業
c)マイクロフォーカスCOBOLや日立COBOLなどの経験あり
d)オープン系COBOLへ移行後に動作がおかしいとクレームがあり、お客のプログラムをデバッグした経験も多数
COBOLエンジニアの需要
COBOLエンジニアは今後も需要があります。
以下の背景が影響して急に需要がなくなることはありません。
(1)COBOLからの移行(マイグレーション)が難しい
(2)COBOL技術者の高齢化が進み、逆に人材不足になっている
(3)COBOLを使い続けると決めた企業がある
COBOLからの移行(マイグレーション)が難しい
COBOLからJavaに移行するケースが多いと思いますが、途中で頓挫することが多いです。
移行するためには、まず既存のCOBOLプログラムを読む力が必要になります。
COBOLを知らないエンジニアが多く、既存のCOBOLプログラムの動作を調査するのが難しくてなかなか進みません。
少し厄介なことは、COBOLで書いてある細かい処理内容が、業務と連動していて、細かく読み解かないと正しく動作しません。
他の記事にも書きましたが、そもそもCOBOLから別のCOBOLへの移行でさえ難しいです。
各メーカごとのCOBOL言語の独自拡張が多い。(”方言”とよく呼ばれます)
古い業務の場合、業務自体やり方から変えて作り直したほうが、全体の費用も安くなる場合もありますね。(そういうのはトップ判断ですが)
COBOL技術者が減り、人材不足で需要アップ
若手エンジニアはCOBOLを学ばないので、COBOLを知っていた熟練の技術者が引退し、COBOLエンジニアの総数は減少傾向にあります。
COBOLエンジニアの数が減少すれば、逆に希少価値は上がります。
また、COBOLに特化した求人を出している企業もあり、需要はまだまだあります。
2019年にCOBOLで構築されたアメリカの失業保険システムで大規模な障害が発生し、障害対応にあたるCOBOLプログラマーの確保をどうするかと騒ぎになりました。
アメリカの話ですが、日本でもCOBOLで運用しているシステムが多いので似たようなことが起こる可能性はありますね。
「IBMら、不足するCOBOLプログラマーの確保を支援–米失業保険申請の急増で」(ZDNetの記事)
「COBOLで構築された米失業保険システムで混乱、問題の本質は」(ZDNetの記事)
COBOLを使い続けると決めた企業がある
世界的な大企業のアクサ生命は、COBOLシステムを使い続けることを決めたようです。
COBOL資産を他言語への移行も検討したが、費用対効果に見合わないためにCOBOLを使い続けることを決めています。
COBOL自体が難しいのではない
COBOL自体が難しいのではなく、周りの要因で難しい面があります。
COBOLのプログラムの言語的には簡単な部類です。
先頭から順番にソースコードを読んでいけば、ほぼ理解できます。
難しいと言われる理由は、開発された時期が古いので設計書が古いことや、汎用機、JCLやデータベースなど周りのことも理解しないといけないことですね。
COBOL言語そのものではなく、他の要因で難しくなっています。
COBOLエンジニアの年収と需要
COBOLプログラマーの年収はそこそこ高い
年代別で年収を紹介します。
COBOL開発者の年収は、意外と高いです。
開発言語で年収が決まるというより、開発言語で業務分野が決まるので、COBOLのほうが業務分野の単価が高い傾向にあります。
20代 4位 406万円
30代 10位 514万円
40代 12位 595万円
50代 4位 618万円
【最新版】プログラミング言語別稼げる平均年収ランキング(プロエンジニア)
COBOLエンジニアの求人、需要
COBOLエンジニアの引退とともにエンジニア数は減っていきます。
しかし、COBOLシステムの寿命はもっと長いので、需要(重要性)がアップします。
COBOLの求人
以下のサイトから、「COBOL」で検索してみてください。多くの求人があります。
ログインなしで検索機能が使えます。情報収集だけでも役に立ちます。
登録不要で検索できるサイトは、ほとんどないので貴重です。
給料も高くて、テレワーク可能な案件も多数あります。
トップ画面の「COBOL」を入力し、検索ボタンを押します。
自分で探すより、無料で相談したほうが、時間も無駄になりませんね。
\ ログインなしで検索機能が使える。情報収集でもOK /
変な会社だと口コミなどですぐに悪評が広がりますが、問題なさそうです。
気軽に相談するのがいいですね。
AS/400、RPG、COBOLの案件なら【エンジニアルート】
具体的な求人の一部を以下の記事で紹介しています。↓↓
<<COBOLの案件例>>
【仕事内容】
損保会社向けのシステム更改作業。
工程は、設計~開発・テスト。
報 酬:~55万円程度
環境 :IBM汎用、DB2、COBOL
リモート:有
【要求スキル】
・COBOLでの詳細設計~の開発経験
COBOLの将来性
COBOLの将来性
Javaなどの他言語への移行で、COBOLの需要は少しずつ減っていく可能性はあります。
さすがに20年安泰とは言えませんが、10年は困らないでしょう。
【理由1】COBOLで開発されたシステムのリプレースの難しさ
【理由2】既存システムの保守案件や運用案件の需要
・COBOLには既存システムの保守案件や運用案件など一定の需要があるが、需要に対してCOBOLを扱えるエンジニアが足りていない。
そのため、今後新規の案件が増えなかったとしても、COBOLの需要が完全になくなるとは考えにくい。
COBOLを扱える人材が貴重であることから、将来的には年収もアップする可能性があります。
このような意味でも将来性はあると言えるでしょう。
COBOLエンジニアの仕事
COBOLエンジニアが扱う仕事には、開発、運用、保守業務があります。
システムの規模が大きく、システム停止はビジネスインパクトが大きいので、運用や保守もCOBOLエンジニアの範疇に入ります。
特に保守作業は、プログラムの中身が分かっていないと対応できません。
COBOLでのソフトウェア開発
大きな機能開発は少ないですが、COBOLのシステムでは他のシステムとのデータのやり取りすることが多いので、他システムとの連携が必要です。
WindowsやLinuxなどオープン環境での開発が増えてきています。
COBOLプログラムの運用業務
COBOLエンジニアの仕事には、COBOLのシステムの運用業務があります。
システムの運用業務ではシステムの稼働状況を監視し、問題が発生した際には問題の切り分けを保守チームと連携して行います。
運用担当と保守担当が同じ場合もあります。
トラブルの対応(保守対応)
COBOLエンジニアの仕事には、保守業務も多いです。
運用業務の中でシステム障害が発生した場合の対応などは、COBOLエンジニアの業務です。
どのような理由で障害が発生したのか原因究明を行い、対応します。
システム全体を把握しておかないと解決が難しい問題もあります。
他部門との連携も必要になりコミュニケーション能力も求められます。
COBOLエンジニアが案件獲得や転職に有利なスキル
COBOLで開発したシステムは、独特の問題を抱えていますので、以下のスキルを持っていると案件獲得や転職に有利になります。
人が書いたプログラムを読んで文書化するスキル
COBOLで作成されたシステムは古いものが多いので、仕様書や設計ドキュメントが残っていないことがよくあります。
ソースコードを読んで、ドキュメントに整理するスキルが重宝されます。
他言語(JavaやPythonなど)で開発ができるスキル
COBOLで作成されたシステムを他のプログラミング言語に書き換える案件が多くあります。
担当業種や業務に関する知識
業種や業務知識の有無はかなり重要視される傾向にあります。
当然ですね。
業務を知っていれば、プログラムの改修のポイントや、業務の流れなど把握できるので強いです。
保険、金融、物流などの特定業種の知識は貴重です。
(急激に変わるものではないので、古い知識も役に立ちます。)
あとがき
COBOLのシステムは、そう簡単に移植できないので、まだまだ残っていきますね。
古くから使われているので、COBOLで作成されたシステムは、数も多く、規模も大きいので簡単にはなくなりません。
COBOLエンジニアは減る一方なので、逆にチャンスが増えていきます。
求人についてはこちらの記事を参照ください。
具体的なCOBOLの求人内容のポイントを紹介しています。
ブログ記事と内容はあまり変わりませんが、全体を整理して読みやすくなっています。
Kindle Unlimitedのユーザなら無料で読むことができます。
COBOLに関するその他の関連記事は以下になります。