ふつーのプログラマです。主に企業内Webシステムの要件定義から保守まで何でもやってる、ふつーのプログラマです。

鼠と竜のゲーム(18) 事情

»

 めったに足を踏み入れることのない役員用会議室の椅子は、野崎にとって座り心地がいいとはいえなかった。椅子そのものは、通常の会議室に置かれているパイプ椅子に比べて、値段も材質も比べものにならないぐらい高価であるに違いないのだが。COBOL全盛の時代からプログラミング畑を歩んできた野崎は、管理職になった今でも、こういう椅子に座っていると緊張感が維持できない。

 この何日か、野崎はシステム構築や管理業務とは異なる領域で気苦労を強いられていて、心身ともに疲労が蓄積していた。個人情報流出騒ぎが発覚して一週間。外部からの問い合わせへの対応は、広報部の担当だが、ソリューションの責任者として、野崎も火消しに神経をすり減らされている。

 問い合わせ元として最も多かったのが、<LIBPACK>シリーズを納品している各地の図書館からだった。今回の個人情報流出は、保守を委託しているファイブスター株式会社のミスであって、<LIBPACK>シリーズ自体とは何の関係もないのだが、いくら説明しても、なかなか納得してはもらえない場合が多い。中には感情的になって怒鳴り声を上げる顧客も少なくなかった。

 それにも増して心に突き刺さるのは、

 「五堂テクノさんだから信頼していたのに……」

と静かに言われるときだった。おそらく、逮捕されてしまったクロラ氏や、ネットのウワサで営業的に打撃を被ったサードアイが味わっていると思われる痛みが、形を変えて五堂テクノと野崎に襲いかかっているようだった。

 一方で野崎は、ファイブスター株式会社の担当者を呼びつけて事情を聞き、意外な事実を知ることになった。

 「うちの城之内が?」

 「ええ」ファイブスターの技術担当者は言いにくそうに顔をそむけた。「それまでは、うちの管理規定に則ってFTPサーバの設定をやっていたんですが、城之内様が<LIBPACK>の担当になられてから、ご自分で設定すると言われまして……」

――あの似非エンジニア野郎

 野崎は心の中で城之内を罵ったが、とりあえずは平静を装って訊いた。

 「それで、その設定というのは?」

 相手の顔に躊躇いの色が浮かんだが、野崎は重ねて同じ問いを発して、この件をうやむやにするつもりがない意思を伝えた。ファイブスターのまだ若い担当者は、諦観の表情を作ると、必要もないのに声を潜めた。

 「あの、ここだけの話にしておいてくださいね。城之内様のポリシーは、セキュリティよりも、メンテナンスのしやすさに重点を置かれているようでした。たとえば、城之内様が自宅から何かを確認したいときに、すぐにアクセスできるようにするとか……」

 野崎は、城之内の頭部を変形させてやりたい衝動に駆られた。

 「……anonymousで、無制限に全ディレクトリにアクセスできるようにしてあったり、正直なところ、その……」

 「非常識?」

 「まあ、そういう感じで」

 ファイブスターの担当者を解放した後、野崎は頭を抱えた。城之内に思い切り罵声を浴びせてやりたいところだったが、あいにく、城之内は、この騒ぎが報道された1時間後から、体調を崩して出社していなかった。

 次に野崎は、城之内の部下の西尾ミドリを呼び、いくつかの質問をした。

 「はい、納品用DVDの内容を決めたのは、城之内主任です」ミドリは、野崎の質問に対して、直属の上司を弁護する素振りさえ見せずに答えた。「私たちのチェックも不要と言われました」

 「納品物の二重チェックは、納品工程の大原則だぞ」野崎は心的な疲労がのしかかるのを感じながら言った。「どんな納品物でも例外はない。君だってそれぐらいのことは知ってるだろう」

 ミドリは、自分を責められても、と言わんばかりに肩をすくめた。

 「主任は、常々、納得できない規則に縛られるつもりはない、と公言されています」ミドリの口調には皮肉と侮蔑が等分に混じっていた。「納品物の二重チェックは、納得できない規則なんでしょうね、きっと」

 「……まあいい」ミドリを責めてしまった態度を恥じた野崎は、話題を変えた。「ところで、頼んでおいた納品物の詳細は?」

 「これです」

 ミドリは持ってきたキングジムファイルを開き、野崎の前に置いた。野崎はざっと目を走らせ、ある部分で視線を止めた。

 「ソース一式?」野崎はミドリの顔を見た。「ソースを納品したのか?」

 ミドリは無言でうなずくと、数ページ先を開いた。納品用DVDの現物も、ファイルイメージも残ってはいなかったが、フォルダとファイル一覧のプリントアウトは、一応ファイリングされていた。野崎は一覧に目を走らせた。

 さすがに<LIBPACK>本体のソースは含まれていなかったが、T市立図書館向けカスタマイズ分の、.javaファイル、.propertiesファイル、.jspファイルは全て含まれていたことがわかった。

 「おれはあの男を過小評価していたらしいな」野崎は思わずため息をついた。「ここまで間抜けだとは思ってもみなかった」

 ミドリは同意するように微笑したが、具体的なコメントを差し挟むことはなかった。彼女にとって、それが、城之内への反感と、職業的倫理観との妥協点なのだろう。

 野崎はミドリに礼を言うと、その足でソリューション事業本部の本部長に会いに行き、事情を説明した。本部長は事態を軽視せず、一両日中の対応を約束してくれた。そして、先ほど野崎に対して、役員用会議室への呼び出しがあり、今、ここに座っているのだった。

 会議室のドアが開き、ソリューション事業本部の担当取締役と本部長、専務、副社長の4人が無言で入ってきた。どの顔にも憂慮の色が共通して浮かんでいる。野崎には彼らが考えていることが手に取るようにわかった。すなわち、この事態についての責任についてだ。差があるとすれば、「誰に責任を取らせるか」「どうしたら自分の責任を回避できるか」の違いぐらいなものだろう。野崎は早くもうんざりした気分に襲われたが、本部長に続いて入室してきた社員を見て、思わず目を剥いた。

 「城之内くん……」

 体調不良で出社していないはずの部下は、ちらりと野崎を見たものの、すぐに目を反らしてしまった。だが、その顔には不安も動揺も後悔も、何一つ浮かんでいなかった。

 野崎が呆気にとられて城之内を見ている間に、全員が着席していた。咳払いとともに、本部長が口火を切った。

 「お忙しい中、お集まりいただきありがとうございます。事情は簡単に説明しましたが、改めて野崎Div長より詳細を説明していただこうと思います。野崎くん、頼む」

 「は」野崎は一礼すると、手元のメモに目を走らせた。「それでは、今回の個人情報流出の一件について、経緯をご説明申し上げます」

 野崎はFTPサーバの不十分な設定により、テストデータとして使用した実在の利用者データが、外部からの指摘があるまで、ネット上に無防備な状態で置かれていたことを説明した。野崎と城之内、本部長以外の3名は、システム開発もプログラミングも全く経験がない人間ばかりだったので、技術的な詳細よりも、経緯に重点を置いた。もちろん、城之内の責任にも言及したのだが、当の城之内自身は、野崎の言葉などどこ吹く風とばかりに手にしたスマートフォンに目を落としていた。野崎は、その傍若無人な態度に、怒りよりも不気味なものを感じずにはいられなかった。

 「……以上が経緯となります」説明を終えた野崎は、言葉を切って場を見回した。「何かご質問はありますか?」

 担当取締役が口を開いた。

 「状況は理解できたと思う。そうですね?」担当取締役は周囲の役員に顔を向け、それぞれの同意のうなずきを得た。「では、今後の方針を君に伝える」

 「方針ですか?」

 「そうだ。先ほど、臨時の役員会で決定した方針だ」

 その言葉に城之内がニヤリと笑った。野崎は気に入らなかったが、とりあえずは従順にうなずいた。

 「T市立図書館向けカスタマイズのソースはどこにある?」

 「ソースですか?」野崎は意外な問いに驚いた。「それは、もちろんソース管理システムにありますが……」

 「操作権限は君にあるな?ソース管理の、その、何と言ったかな、リ、リポ……」

 「リポジトリのことでしょうか」野崎はわけもわからないまま答えた。「確かに、私はバックアップを含めて全アクセス権限を持っていますが」

 五堂テクノでは、数年前からソースコードの管理にgitを使用している。独自にカスタマイズを加え、GUIとアクセス制御が強化されたものだった。開発者個人毎から、リリースビルドまでの各段階のリポジトリは、権限があれば、どの開発者でも、変更、削除が可能である。一方、各リポジトリは、自動的に完全な分散バックアップが作成される。これは一定以上の権限がなければ、改変することができない。

 「よろしい。T市立図書館関連のソースを削除しろ」担当取締役は、強い口調で命令した。「バックアップを含めて完全にだ。地上のどこにも痕跡すら残さないようにな」

 前例のない命令に、野崎の思考と呼吸は一瞬停止した。

 「聞き違いでしょうか?」野崎は静かに訊いた。「ソースを削除しろと聞こえましたが」

 「そう言ったよ、野崎くん」担当取締役も静かに答えた。「これは業務命令だ」

 「理由を教えていただけるんでしょうな?」

 「君は素直に命令を実行すれば……」担当取締役は激昂しかけたが、副社長が手を振ったので口をつぐんだ。

 「まあ、待ちたまえよ」副社長は苦笑していた。「野崎くんだって、頭ごなしに言われたら納得できんよ」

 「はあ」

 「理由を説明しよう。ああ、そうだ……」副社長は、ニヤニヤ笑っている城之内に視線を移した。「君は戻っていい」

 「え?」城之内の顔が瞬時に強張った。「でも……」

 「いいから戻りたまえ。ご苦労だった」

 強くも大きくもないが、抗い難い口調で言われて、城之内は渋々立ち上がると、形ばかり一礼して、会議室を出て行った。ドアが閉まるのを待って、副社長は大きくため息をついた。

 「さて、ここからはざっくばらんに行こうか」副社長はテーブルに肘をつくと、両手を顔の前で組んだ。「野崎くん、五堂トラスト銀行が、再来年の8月に中央YDF銀行と合併することは知っているだろうね」

 「え?ええ、まあ」突然の話題の転換に野崎は戸惑いながら答えた。「もちろんです」

 「今、両銀行では、合併後の業務の再配置、支店の統廃合などについてすりあわせが続いている。中でも、最重要課題の一つが、オンラインシステムの件だ」

 「聞いています。五堂トラストのG-IIIシステムがベースになる方向で合意しつつあるとか」

 G-IIIシステムは、他ならぬ五堂テクノが、開発したシステムである。

 「それは表向きの話だ」副社長は野崎の目を見つめた。「実際のところは、中央YDF側は自分のところの、BANK-96というシステムを強硬に推しているんだ」

 「BANK-96って、96年に稼働した決済システムで、21世紀の銀行業務に対応できるものじゃないと聞きましたが」

 「そう。YDFの技術者は、日々、改良を重ねてきているから、どの銀行の勘定系・決済系システムと比較しても遜色ない、などと強がってはいるが、客観的に見れば、うちのG-IIIの方が優れていることは明確なんだがな」副社長はまたため息をついた。「向こうには向こうの意地もあるだろうし、G-IIIに合わせてもらうとなると、向こうの技術者の負担は大きいから、まあ無理はないんだが」

 「興味深いお話ですが、今回の事象とどのような関わりがあるんでしょうか?」

 「まあ、そう、慌てるなよ」副社長は持参したペットボトルの緑茶を一口飲んで続けた。「この件では、うちとしても、五堂トラストに技術的な点でいろいろ協力をしてきたわけだ。G-IIIはうちの自信作だし、合併しても五堂トラスト――まあ新銀行名が何になるか知らんが――がうちのメインバンクであることにはかわりがない。そこのメインシステムに、システム屋のうちが関われないというのじゃ笑いものだ。金証には、ずいぶん無理な頼みをいくつもしたよ」

 「そうらしいですね」野崎は金融証券ソリューション事業部のエンジニアたちが、苦労したという話を思い出した。「以前の定例で聞きました」

 「まあ、その甲斐あって、YDFの方もようやく譲歩の姿勢を見せ始めたんだな。YDF内の、特に支店業務部でも、BANK-96が使いづらいという声がずっと上がっていたらしいからな。ところが……」

 「ああ、何となく想像は付きますね」野崎は首を振った。「例のT市立図書館事件で、うちの技術力にケチがついたんじゃありませんか?」

 「そのとおり」副社長は面白くもなさそうに笑った。「YDFの抵抗勢力が、これで息を吹き返してしまったんだな。最初のうちは、その逮捕された何とか言うプログラマの攻撃だったということで、うちはむしろ被害者側だったんだが、それでも、たかが素人の攻撃ぐらい防げなかったのか、という声が上がったぐらいだ」

 「なるほど。それなら、サービスが落ちた原因が、結局、うちのプログラムにあったと判明したときは、声が上がったぐらいじゃすまなかったでしょうね」

 「声なんてもんじゃなかったね、あれは」本部長がぞっとした記憶を思い起こしたように顔をしかめた。「鬼の首でも取ったように、というのは、あのことだな」

 「下手をすると、システムの件が白紙に戻るんじゃないかと思ったぐらいだよ」副社長も思い出したくない記憶を呼び出してしまったように顔をしかめた。「まあ、幸い、それとこれとは別、ということで納得させたんだがね」

 「ああ、あと、あれにも助けられた」本部長が嬉しそうな顔をした。「何とかいう下請けのプログラムミスだ、というウワサだ」

 それは城之内が仕組んだことだ、と言おうとした野崎は、ふとためらった。この話の行き着く先を見極めてからでも遅くはない。

 「そう、そのウワサだ」副社長が続けた。「ここだけの話、そのウワサはどの程度真実なんだね?」

 「真実ですか」野崎はドアの方をちらりと見た。「そのウワサは全くのデタラメです。T市立図書館の一件は、さっき、ここから出て行った男が、いい加減な仕事をしたために発生したことです。それ以上でも以下でもありませんよ」

 「その証拠はあるのかね?」副社長が訊いた。

 「ありますよ。ソースの履歴に……」野崎は言葉を切った。「……そうですか、そういうことですか」

 役員たちは、無言で互いに視線を交わし合った。

 「バックアップを含めたリポジトリを削除しろというのは、そのためなんですね?」信じられない思いで、野崎は上司連中の顔を順に見ていった。「城之内を守るために、証拠隠滅のために消すんですね?」

 野崎の視線を受け止めたのは、副社長だけだった。

 「そのとおりだ」

 「でも、なぜですか?」野崎は副社長を睨み返した。「なぜ、あいつのミスをそこまでしてかばわないといけないんですか?本音を言えば、あの役立たずは、この会社からお引き取り願った方がいいと思うんですがね」

 「五堂トラストの件がからむんだよ」

 「あいつの父親が、五堂トラストのお偉いさんだからという理由ですか?」唾を吐き捨てたくなるのをこらえながら、野崎は懸命に声を抑えた。「そんなに……」

 「まあ、それもあるがね」副社長の声は落ち着いていた。「それだけではないんだよ」

 「ほう?」野崎は眉をしかめた。「聞かせていただきましょう」

 「新銀行用のオンラインシステム構築プロジェクトのPMを城之内くんにやってもらう予定なんだ」

 野崎は絶句した。

 「ああ、言いたいことはわかるよ」野崎の呆気にとられた表情を見て、副社長はなだめるように片手を上げた。「もちろん彼は役立たずのろくでなしだ。PMというのは、純粋に肩書きだけのものだ。彼の父親に対するお愛想みたいなもんだと思ってもらっていい。サブリーダーに、きちんとした人材を充てるともさ。あくまでもお飾りでしかない」

 それは野崎が、城之内を<LIBPACK>シリーズの主任に据えたときと同じやり方だった。これだけ露骨なアサインに、城之内本人が何も疑問に感じないのが不思議なぐらいだ。

 「城之内くんの名前は、プロジェクトの体制表の上の方の目立つ場所に太字で書かれる。当然、それは銀行側にも提出される。少なくとも、受注が確定するまでは、彼に不祥事などあってはいかんのだ」

 政治だ。野崎は忌々しい思いを心の中で吐き捨てた。

――おれは、技術者を社内の下らない政治から遮断するために管理職になった。なのに、いつのまにか、おれ自身が、その片棒を担ぐハメになってしまった……

 「そのために、数年前にうちの仕事をやってくれただけのベンチャー企業が、根拠のない中傷で苦しむのを黙認するんですか。いや、すでに営業的に深刻な影響が出ているそうですよ」

 「気の毒だが、それは運が悪かったと言うしかないな」言葉とは裏腹に、本部長の声には、気の毒さなど1バイトも含まれていなかった。「小さな下請け会社のために、銀行のオンラインシステム開発という大きなパイを、他社に喰われてしまうことはできんだろう」

 「釈然としないのはわかる」副社長が感情のこもった声で、しかし、断固として言った。「だが、これは業務命令だ。例のソースを完全に消去してくれ。万が一、誰かが内部告発しようなどと考えても、それが不可能なようにな」

 「個人情報流出の件をお忘れではないですか?」野崎は抵抗を試みた。「同じようにソースも流出している可能性があるんですよ。誰かが、それを入手して公開でもしたら、逆にうちの隠蔽工作を認めるようなものです」

 「個人情報というインパクトのある情報があるのに、ソースなどに価値を見い出す人間はいないだろう。それに、ソースが流出していたのかどうかも確実ではない。万が一、誰かが入手していて、それを公開したとしても、うちは否定すればすむ。ソースコードなどというものは偽造が容易だからな。心配しなければならないのは内部告発だけだ」

 野崎は自分より職位が上の男たちの顔を見回した。いずれも、何年も現在の職位にとどまり、後進に道を譲る気配すらない。この会社は、去年、いち早く定年を65才に延長した。当時は高齢化社会に対応した画期的なSIerだと話題になったものだが、この老人たちが自分たちの権力構造を維持するための施策だったのではないかと思われてならなかった。

(続く)

 この物語は事実を基にしたフィクションです。実在する団体、個人とは一切関係ありません。また司法当局の捜査方法などが、現実のそれと異なっている可能性があります。

Comment(17)

コメント

数字

読んでいるだけで胃がきりきりしてきました。この後の展開が気になります。

どら猫ホームズ


>サブリーダーに、きちんとした人材を充てるともさ

 条件を飲む代わりに、サブリーダーは自分にやらせろ、
さもなくば…と取引をするんだ野崎。

aetos

野崎さんからサードアイにコンタクトを取って来ると見た。他ならぬ野崎さんが内部告発したら楽しいだろうなあ。

まさと

うわぁ…
第二次世界大戦の敗戦時、戦犯裁判の証拠に使われるのを怖れて、機密文書を大量焼却した大日本帝国陸海軍の時から変わらない発想ですね…
(おかげで、近年の従軍慰安婦問題で潔白を主張したくても、関係者の記憶や伝聞以外の強固な証拠を示せない状態とか)

Edosson

親銀行まで出てきては、城之内に天誅が下る、
という展開は期待できなさそう。
これまでの実績からして、最初から期待してなかったけど。

サードアイも、自分の身は守れる(主人公補正)として、
心配なのは野崎さんの身の上ですね。

今から祈っておこう。(-人-)

kakato

野崎さん、分水嶺に立ってる。
筋を曲げて、自分の地位権力を維持することを選ぶか、
筋を通して、自分の地位権力をリスクにさらすか。

前者を選べば、役員を非難する資格なし。
後者を選べば、、、

家族もあるだろうしなぁ。

個人的には、役員はクズだと思うが、自分自身にもクズな部分はある。
正義ヅラして、役員を非難する資格は、自分にはない。

ななしんぼ

前回最後の見慣れないgmailアドレスからのメールは野崎さんなのかなあ?

のなめ

納品物にソースを含めるってそんなおかしな契約ですかね?
受託なら普通だと思うけど、パッケージだから?

みすと

お飾りならお飾りで口も手も出さずに純粋に給料泥棒しててくれれば
皆ムカつきはすれど平和な日常業務を送れたろうにな城ノ内

asdf

城之内は誰からもうっちーと呼ばれませんね
渕上さんはあれだけふっちーと呼ばれたのに

KCC

渕上は
・コメント欄でHNの一部にふっちーを使っていた人がいた
・何もかもが無能とまでは言えない
のに対し、城之内は
・名字で真っ先に遊戯王の凡骨と呼ばれる登場人物が思い付く
・遊戯王の城之内は作品内で名字で呼ばれることが多い
・この連載の城之内は愛称を付けて親しんで呼ぶ余地がないほどどうしようもない
のが原因かと。

いつサブタイトルに「城之内死す」が来るかと楽しみにしています。

りーどみ

曲がりなりにもプロジェクトをきっちり完遂しようとしていた人と
一切弁護のしようがない文字通りのクソ野郎は流石に扱いも違うでしょう。

Jitta

> 納品物にソースを含めるってそんなおかしな契約ですかね?
ソースが、下請けに無いことを確認して、
手元に無いことにして、
お客様の元にはある。
「ここまで間抜けだとは思ってもみなかった」

けいきゅう

渕上はクズだが愛称を付けたがるほどの狂信者が極少数いた

やじうま

ここまで大手SIerはクズだと書かれてると大手SIerさんのコメント読んでみたくなります。
わかりやすいけど、なんだかここまでいくとちょっと実際にありそうって感じはなくなってきたような。城之内のお父さんもそこまでバカじゃないだろうと思うし。

のなめ

〉Jitta
そういう事か、サンクス

オレンジ

野崎さん大変ですね。
「踊る大捜査線」の室井さんみたいだ。

コメントを投稿する