半世紀前に開発されたプログラミング言語「COBOL」の技術者が減少の一途をたどる一方、その重要性が改めて脚光を浴びている。大学やプログラミングスクールなどの教育機関でもCOBOLを学習する機会を得ることは困難な状況だが、企業におけるCOBOL技術者への需要は根強い。その背景について専門家の見解も交え追ってみたい。
1959年に開発されたプログラミング言語であるCOBOLは、大企業や自治体における業務のシステム化・OA(オフィスオートメーション)化と歩調を合わせるかたちで普及し、現在でも銀行をはじめとする大手金融機関や自治体などの大規模なシステムで使われている。ITライターの神崎洋治氏はいう。
「かつてCOBOLとFortranがメジャーな言語である時代が続いた。主にCOBOLは業務系・基幹系、Fortranは科学・計算系というかたちで使い分けがされていた。IBMのメインフレーム(汎用機)などで採用され、そのなかでデータベース(DB)に初めて『テーブル』という概念が取り入れられたりもした」
また、大手IT企業SEはいう。
「富士通、NEC、日立製作所など日本の大手IT企業のメインフレームは、基本的にはIBMの技術がベースとなっており、COBOLを使っていた。結果、各社は大量のCOBOL技術者を抱えることとなった」
1990年代に入り急速にインターネットが普及しウェブ全盛期を迎えると、日本ではJavaやC++が主流に。現在ではAI(人工知能)開発向けのPython、Android開発向けのKotlin、アップルのiOSやMac向けのSwiftのほか、JavaScript環境のNode.jsなど、目的別に使われるプログラミング言語が細分化。主に大型メインフレームなどで採用されてきたCOBOLの存在感は低下し、現在、新規システム開発でCOBOLが採用されることはほぼなくなった。
「COBOLのプログラミングの記述は人間が使う言語に似ているため読みやすいというメリットがある一方、一つの処理をするために記述しなければならない行数が非常に多いというデメリットがある。また、一般的にCOBOLを使ったシステムは安定性があるといわれており、大手金融機関や自治体、政府の止めてはいけない『ミッションクリティカル』なシステムで採用されてきた。今から20年くらい前、2000年代前半頃にはシステムのオープン化の加速などに伴い『これからCOBOL技術者が大量に余る』とIT業界内ではいわれていた」(大手IT企業SE)
そんな「枯れた言語」であるCOBOLを扱う技術者への需要が今でも衰えない理由は何か。前出の神崎氏はいう。
「たとえば業務システムでCOBOLを使っていたり、他社のシステムと連携してデータをやりとりしていたりすると、他の言語を使ったシステムへ変えるのは難しいというケースが出てきて、メンテナンスを重ねて使い続けているCOBOLシステムが残ったままになる。その一方、最新技術が生まれることもなく、新たにCOBOLを習得する若手エンジニアも出てこないので、結果的に数が減りつつあるベテランのCOBOL技術者へのメンテナンス要員として需要は残り、給料も悪くはなくそれなりに重宝されている」
こうした状況を打破しようという動きも出ている。IBMは2023年、生成AIモデルを使ってCOBOLを自動でJavaに変換するツール「watsonx Code Assistant」を開発中であることを発表した。大手IT企業SEはいう。
「20年くらい前には『COBOL技術者は絶滅危惧種』なんて声もあり、当時、40代以下のCOBOL技術者のなかには他の言語を学んで乗り換えた人も多かった。企業勤務のSEだと、COBOLの開発案件が減り、新たに担当した案件が他の言語になって半ば強制的に勉強せざるを得ない境遇に追い込まれスキルチェンジし、その後COBOLの案件を担当する機会がないままCOBOLのスキルを失うなんて人も少なくなかった。
一方、いまだにCOBOLシステムのオープン化案件は一定数存在し、そうなるとCOBOL技術者は必要となる。また、システム開発というのは案外『職人の世界』なので、既存のCOBOLシステムではバグなどが見つかった際、その原因究明や改修では『ベテランの勘』というのが結構頼りになるのも事実。高齢化に伴いCOBOL技術者の数がどんどん減る一方、あと10年くらいは需要は根強いのでは」
(文=Business Journal編集部、協力=神崎洋治/ITライター)