小川 誠氏
ティアンドトラスト株式会社
取締役
IBM i向けの多彩な研修ビジネスを提供するティアンドトラスト。同社の小川 誠氏に、IBM iの若手技術者や後継者を育てるために必要な施策と今後の開発環境のあるべき姿を聞く。
プラットフォームに依存せず
開発環境を共通化・標準化する
i Magazine(以下、i Mag) ティアンドトラストではシステム開発業務に加え、研修ビジネスも展開されていますね。
小川 そうです。それには2つあって、1つはアイ・ラーニングが提供するIBM iの研修コースに講師を派遣すること。もう1つは、システム開発をご支援しているお客様先で効率的な開発方法や新しい手法はどうあるべきかをいっしょに考え、必要に応じてIT部門の開発者に伝授していく研修ビジネスです。あとはIBM iの開発支援が多い会社なので、自社の戦力となるIBM i技術者をどう育てていくかも大きなテーマです。そのあたりは、ユーザー企業のIT部門が悩まれているテーマと同じかもしれません。
i Mag IBM iユーザーには今、人材育成についてどんな問題・課題があると考えますか。
小川 よく指摘されるように、システム人員の高齢化に悩まれるお客様は多いですね。これまでアプリケーションの開発・保守を担ってきた人員が定年を迎えて退職するので、そのあとの若手人材をどう育てるか、という問題です。それから既存アプリケーションはRPG Ⅲで開発されているので、必然的にそれを保守するにはRPG Ⅲのスキルが必要になりますが、「果たして若手のシステム人員にRPG Ⅲを教えていいのか」と悩まれるケースも多いです。これには教える側も、教えられる側も漠然とした不安を抱いているように思います。
さらに、現在のIBM iユーザーのIT部門には負荷がかかりすぎではないかという心配もあります。IBM iを内製で運用するIT部門の人材は、開発スキルを備え、業務の知識にも精通する、真の意味でのエキスパートが揃っています。それだけに覚えることが多すぎて、ときには本来、業務部門がカバーすべき領域まで負担したりと、仕事が多くて疲弊しているように見受けられます。
i Mag IBM i人材の育成に関する考え方を教えてください。
小川 私は「開発環境は、よい意味でのステレオタイプであるべき」との持論をもっています。つまりプラットフォームに依存せず、開発環境は共通化・標準化すべきとの考え方です。開発言語が何であるかは、その先にある小さな変数のようなもので、開発環境が共通であれば、第2言語、第3言語を覚えるのにそれほど苦労せずに済みます。他言語開発者や若い技術者がRPGを始めるとき、開発環境やエディタ(PDMやSEU)とセットで学ばねばならないのは、やはり大変な苦労だと思います。SEUはエディタとしてはとても使いやすいですが、RPG Ⅲの特殊性を象徴しているとも言えますから。
i Mag 共通化・標準化に向けて、どのような開発環境を採用しているのですか。
小川 当社の場合はフリーフォームRPGを基本に、エディタとしてオープンソースの「Visual Studio Code」を採用し、RPGやPHPの開発に使用しています。バージョン管理は「Git」。新規開発や改修が発生する際は、必ずチケットベースで実施するので、そのチケット管理ツールとして、オープンソースの「Redmine」や「GitHub」を使用します。GitやRedmineはとても便利に使っていて、もはやこれなくしての開発は考えられないですね。
最近はコロナの感染拡大で在宅勤務による開発が増えていますが、出社していれば、隣にいるスタッフと修正内容などをその場ですぐに確認できます。しかし在宅だとそれが難しく、Slackなどのチャットツールは使っているものの、オフィスにいるのと同じタイミングでは会話できません。そのギャップをGitやRedmineがうまくカバーしてくれます。
お客様とのやり取りのなかでも、問題分析を進める際にチケットを探して確認することで、そのときの会話や要望、なぜこういう改修になったかという理由などをすぐに思い出せるので、お客様の反応はとてもよいですね。
i Mag RPG Ⅲで運用している場合、こうした標準ツールは敷居が高くないですか。
小川 私は、RPG Ⅲは今も素晴らしい開発言語だと思っています。ともかくフリーフォームRPGにすれば、何もかも解決するとは考えていません。40年以上にわたりプログラム資産を継承しているわけですし、固定フォーマットで書かれたほうが、保守性が高いと感じるユーザーも多いでしょう。既存アプリケーションがRPG Ⅲで書かれているなら、それを保守するスキルは必要です。
でも、そのことと開発環境の標準化は別の話です。今後を考えるなら、そして若手を育成したいと願うなら、ともかくSEUやPDMなどの5250開発環境を脱却することが必須です。「Rational Developer for i」(RDi)であれば、EclipseベースでRPG Ⅲによる開発が可能で、Gitによるバージョン管理やチケット開発に何の支障も生じません。こうした環境を1日でも早く、採用してほしいと思います。
i Mag IBM iの新しい機能を学ぶのに、効果的な学習方法はありますか。
小川 IBM iで運用が完結していた時代は、IBM iのOSとしての機能やRPGのプログラミングさえ習得していれば、何も問題はありませんでした。しかし今は、IBM iだけで運用は完結せず、外の世界と連携していかねばなりません。覚えることが多くて大変です。
私はIBM iの新しい機能を覚えたいなら、外の世界からIBM iを見ること、たとえばLinuxなど別のOSからIBM iを考えるように推奨しています。IBM iがクラウドやオープン系プラットフォームと連携するには、どのような技術が必要かを知りたいなら、まず外の世界からIBM iに連携することを考えてみる。そうすると、オープンソースやSQL、APIやWebサーバーなど、必要な要素をIBM iはすべて備えていることがわかります。IBM iというのは、そういうプラットフォームなのです。それはIBM i独自の進化というより、外の世界と歩調を合わせたゆえの進化です。「だからIBM iを知りたければ、Linuxを知るのが近道だ」と、部下にもよく伝えています。
人材育成のうえでも、またIBM iをこれから長く使い続けるためにも、新しいエディタやバージョン管理、チケット駆動など標準的な開発環境の整備をお勧めします。そうすれば、IBM iがそれほど特殊なプラットフォームではないことを、きっと理解できると思います。
[i Magazine 2021 Spring(2021年4月)掲載]