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

イノウーの憂鬱 (58) アナログ

»

 職域接種受付フォームは予定通りリリースされ、締め切りの7 月7 日夕刻までに、多くの社員が申し込みを行った。ぼく自身は、テストを兼ねて真っ先に登録し、斉木室長、木名瀬さん、マリも続いた。
 受付終了時刻を1 分過ぎたとき、ぼくはフォームのランディングページを、あらかじめ用意してあった「受付は終了しました」の一文のみのページに差し替え、エースシステムに送信するためのExcel ファイル作成処理に取りかかった。あらかじめリリース初日の段階でサンプルとして作成し、エースシステムに送って確認も取ってあるので、特に問題も発生せずファイルは出力された。念のため、データベースに登録された件数と、シートの行数をチェックしたが一致している。ファイルを総務課に送って、システム開発室の仕事は完了となった。後は総務課が、事前に決めておいたパスワードで暗号化してエースシステムに送信するだけだ。
 「おつかれ」完了報告を送ると、斉木室長はビデオ通話をかけてきた。「何件になった?」
 「社員数だと68 名。家族分を足すと合計107 件でした。正直、もっといくかと思ってたんですけど」
 「大規模接種でうまく予約できたとか、基礎疾患ありの枠で取ってるとか、そういう人もいるみたいだからね。あと、モデルナは女性に副反応が多いらしいから」
 「そういえば男性が圧倒的に多かったみたいです」
 「ま、接種は自由意志だからね。あ、そうだ。もし再度、実施されても、フォームは流用できるよね」
 日付だけ変更し、データをクリアすれば、そのまま流用できる。そう答えると、斉木室長は満足そうに頷いて画面から消えた。ワクチン接種に関して、何か開発するようなことは、これが最後だろう、と考えたようだ。ぼくも同じ思いだったが、あいにく、その読みは外れていた。
 エースシステムからの返信は、翌日の早朝に総務課に届いた。枠が多めに確保してあったのか、全員が第一志望の日時に割り当てられたので、個別に通知を出さずに済んだ。
 システム開発室のメンバーは、それぞれ第一志望の日付をずらして登録していた。4 日間しかないので、第一志望が通らなかった場合、同じ日になってしまうこともあり得たが、その心配は杞憂となった。ぼくは7 月15 日、斉木室長は16 日、木名瀬さんが17 日、マリは18 日だ。ぼくと斉木室長は平日なので、当日は有給休暇となる。ワクチン接種日は特別有給休暇扱いになる企業もあるそうだが、今回の職域接種は急遽決まったため、そんな要望の声が上がるヒマもなかった。上がっていたとしても、人事制度の変更には役員会での承認が必要になるので無理だっただろう。
 その連絡が入ったのは7 月14 日の15 時過ぎだった。シノッチが斉木室長や木名瀬さんを飛ばしてぼくに連絡してきたのは、二人の上長がそれぞれ会議で不在だったためだが、別の理由もあった。
 「エースシステムから連絡が入ったんですが」シノッチは狼狽を隠そうともしなかった。「明日からの職域接種で変更が発生しました」
 「変更?」ぼくは眉をひそめた。「急ですね」
 「急なんです。モデルナワクチンの供給が予定通りに行われなかったらしく、予定していた人数への接種が先送りになりました」
 「なんと」
 シノッチの説明によると、当初、全接種者が延期となるはずだったが、上場企業であるエースシステムは、エースグループ傘下の他企業と力を合わせ、持てる限りの政治力と影響力を見境なく行使した結果、なんとか入手可能な数だけの接種実施にこぎつけることに成功した。その際、エースシステム社員が優先されたことは言うまでもない。連絡がこんなに間際になったのは、今回の職域接種にエースシステム枠で参加したのはマーズ・エージェンシーだけではなく、どこに何人分を割り当てるかを決めるのに時間を要したためだ。
 「うちにはどれだけ割り当てられたんですか」
 「40 人分です」シノッチは肩を落とした。「うちが出したのは107 人分なので、もう少し何とかならないかと訊いてみたんですが」
 エースシステムにとって、マーズ・エージェンシーよりも取引が長かったり、重要度が高い会社もあるだろうから、その数に文句を言っても仕方がない。ぼくは気になることを訊いた。
 「その40 人分、誰に割り振るんですか」
 「それが問題で」シノッチは視線を右下に走らせた。「5 分後にそれを決める会議を行うことになりました。連絡のつく部長、課長で」
 そんな紛糾するに決まっている会議で時間を費やすより、総務で決めて発表してしまえばいいのに、と思ったが、効率の良さを求めてもムダなことがわかるぐらいには、ぼくもこの会社のことがわかってきていた。総務で決めてしまえば、選に漏れた社員からの非難が総務の矢野課長に殺到するのは目に見えている。部課長の合意による決定でも不平不満の声は上がるだろうが、少なくとも責任は分散される。
 「それをわざわざ知らせてくれたわけではないですよね」
 「はい」シノッチはハンカチで額の汗を拭った。「申しわけないんですが、システム開発室からも出席してもらった方がいい、ということになりまして」
 「どうしてですか?」
 「なんというか、もし、対象者をプログラムで決めるようなことになったとき、それが可能なのかどうかすぐわかった方がいいんじゃないか、ということで」
 「茅森課長にお願いすればいいんじゃないですか?」
 総務課には申込データをExcel ファイルで渡してある。茅森課長に任せれば、喜んでVBA でロジックを組んでくれるだろう。
 「茅森課長も会議には参加されるので、意志決定に携わる一人ということになります。その人に実作業を依頼するのは、いろいろよろしくないので」
 なるほど。社員ID 順に上から40 人、のように明確なロジックであればいいが、無作為抽出のような場合、その気になれば作業担当者の意志を反映させることも不可能ではない。それを言ったら、ぼくが作業しても同じなのだが、そういうことはしない、と信頼されているのだろうか。
 「わかりました。じゃ、参加します」
 「すいません。すぐTeams で会議メール送ります」
 5 分後、会議は始まった。半数ほどがリモート参加だ。この手の会議には、注目を集めたいのか意図的に遅れてくる人が多いのが常だが、今回ばかりは定刻にほとんどが顔を揃えた。それだけ、この会議が重要視されている証だ。
 夏目課長の名前は出席者の中になかった。あるいは、ぼくがいなければ出席していたのかもしれない。先日のオンラインスクール卒実務経験無しのコンサルの件で、大石部長にどんな釈明をしたのか知らないが、システム開発室にも多少の謝罪の言葉ぐらいあってもいいはずだ、との意見は、事情を知る社員たちの間での共通認識だった。しかし、これまでのところ夏目課長は、件のコンサルのことなど、別の時間線の出来事であるかのように、しれっと広報課の業務を続けていた。おそるべき強心臓の持ち主と言うべきだが、今回ばかりはさすがに出席を見合わせたのかもしれない。
 すでに全員が状況は把握しているので、主催者の挨拶や、会議のアジェンダは省略された。追加の情報として、出席者に知らされたのは次の2 点だった。

 ・渋谷、川崎の会場での接種は中止。
 ・本日の19 時までに新しい接種希望者のリストをエースシステムに送付完了すること。

 「時間までに間に合わなかったら、どうなるんだ」
 誰かの質問に、シノッチは目を落として答えた。
 「全部キャンセル扱いになります」
 「従って」矢野課長が引き取った。「リスト作成の時間を考慮して、議論に使える時間は16 時までとします。それで結論を出さなければなりません」
 ざわめきが走った。矢野課長は、それを制するように声を張り上げた。
 「私としては、年齢順を提案します。一番、公平ではないかと思うんですが、どうでしょうね」
 即座に反論の声がいくつも上がった。
 「渋谷と川崎で申し込んでる人はどうする。まず、それを決めなければならんだろう」
 「それはもう除外でもいいんじゃないかな。今回は運が悪かったということで」
 「新しいリストということは、今から接種会場を変更してもいいってことだろ。それさえ知らせず切り捨ててしまったら、絶対に後から文句が出るよ」
 「今から渋谷、川崎を選択した社員と家族全員に、新しい会場を選択し直すのか、今回は諦めるのかをヒアリングすることなんて、時間的に不可能だよ」
 「篠崎くん」矢野課長が訊いた。「渋谷、川崎を選んだ人は何人ぐらいいるのかわかるかね」
 シノッチは手元のタブレットを数回タップしてから答えた。
 「渋谷が17 名、川崎が34 名です」
 「それを除外してしまえば、半分近くがリストから外れることになりますね。そうしませんか。残りの確率が上がる」
 「俺は渋谷で申し込んだんだ。俺のことはどうでもいいってことか」
 「そういうことじゃ......」
 「除外するなら、家族の方じゃないかと思うね。社員を守る方が先だろう。違うかな」
 混乱のスープの中に熱い焼き石を投入したのは、通信事業部の此木部長だった。以前、コードレビューの際、評価者として参加した人だ。
 「家族は付け足しみたいなものだから、納得しやすいんじゃないかと思うがね」
 「それはちょっと乱暴でしょう。家族の方にこそ接種させたい人だっているかもしれない」
 「それは結果論でしょう。本来、職域接種はそこで働く人のためのものだ」
 「自分が独身だからそう言ってるんじゃないんですか」
 「それは関係ないよ」
 「今から、とりあえず連絡取れる人だけでも、連絡取ってみればいいじゃないかね。総務と人事でかければ、そんなに時間はかからん」
 「家族に確認するから、とか言われて、時間ばかりかかるに決まってるじゃないですか。それで結局間に合わなかったら、全員が不利益を被ることになる」
 前社長のときからだが、重要な会議に社長や役員などが出席することがないのが、この会社の不思議な慣習だった。以前、それを疑問に感じて木名瀬さんに理由を訊いてみたことがある。
 「社長は人を大切にされる方ですから」木名瀬さんは答えた。「社長が出て行くと、どうしてもその意に沿う方向に会議が誘導されてしまいます。それを嫌ったからのようですね」
 その方針には一理あると思ったものの、今のように一向に方向が定まらない様を目の当たりにしていると、重要かつ緊急な場合には、トップが決断を下した方がいい場合もある気がする。
 16 時まで20 分を切っても、議論は続いていた。決定した項目は何一つない。退屈してきたぼくは、マイクをミュートにすると、仮に抽出するならどのようにするか、というロジックを考え始めた。
 家族のみの申込は不可、という前提条件があるので、接種会場で単純に除外してしまうのは差し障りがある。単純な年齢順も同じ理由で不可だ。ということは、まず、社員と家族をグループとして、その中の最年長者をピックアップし......一発で出すのはちょっと面倒そうだ......まず全員が渋谷か川崎を選んでいる家族を除外しておき、年齢の降順にソートしておいて......
 ぼくはEclipse に新しいPython モジュールを追加し、実現するためのロジックを入力し始めた。どうせ方針が決まるまでは発言が求められることはないだろうし、方針によってはプログラマの出番などないかもしれない。
 カメラの角度からは手元は見えないはずだが、ぼくが上の空であることに気付かれたのか、それとも、同じように先の見えない議論にうんざりしたのか、矢野課長がぼくに呼びかけていた。ぼくがそれに気付いたのは、うかつにも何度か名前を呼ばれた後だった。
 「あ、すいません......」ぼくは答えかけてから気付いて、マイクのミュートを解除した。「すいません。なんでしょう?」
 「君はどう思う、イノウー」矢野課長は質問を繰り返してくれた。「何か意見はないか?」
 「矢野さん」誰かが咎めるように言った。「これは部課長だけで決める事項だと思うがね」
 「それはわかっています。彼の意見をそのまま採用するとは言っておりません。ただ、違う立場からなら、また新鮮な意見が出るかもしれないですから。イノウー、どうだ?」
 「そう言われても......」
 貴重な数秒を使って、ぼくは思考をフル回転させた。わかっているのは、この会議に集った参加者はもちろん、申込者全員を納得させる案を出すのは不可能ということだ。さらに、誰かに責任が集中するような方針も採用されないこともわかっている。いっそ、今回の職域接種はマーズ・エージェンシーとしては辞退する、という選択が最善なのかもしれない。全員にとって公平だ。だが、ここで接種できなかったために、誰かが感染、発症し、重症化、後遺症、最悪の場合は死、という結果になるかもしれないと思えば、その選択はできない。
 「時間のムダではないのかね」誰かが苛立った声を上げた。「彼が有能なのは認めるが、それはプログラマとしてのスキルについてだ。こういう重要な問題を考える訓練も受けておらんし、経験も足りないだろう。プログラマはそもそも、何か方針を決定するのではなく、決定された方針を実現するための要員なんだからな」
 「多くの意見を取り入れることも必要でしょう」
 「多くの意見など何の役にも立たんよ。下手な鉄砲も数打ちゃ当たるってわけか? その意見を吟味する時間すらもったいない」
 その瞬間、ぼくの頭の中でギアがカチッと組み合った。
 「くじ引きはどうですか?」
 数秒の沈黙の後、一斉に罵倒が押し寄せた。
 「ふざけてるのか」
 「お前、バカにするのもいい加減にせえよ」
 「これだからプログラマは」
 ぼくは説明しようと試みたが、次から次へと大声での発言が続き、割り込む余地がなかった。収まるまで待つしかないか、と諦めかけたとき、不意にものすごい音が他の全ての音声を圧して響き渡った。エルロンドの御前会議でモルドールの言葉を聞かされたエルフたちのように、部課長たちは耳を押さえて顔をしかめた。
 「なんだなんだ」
 「失礼しました」謝ったのはシノッチだった。「スマホを切っておくのを忘れまして、着信音が入ってしまいました。すいません。えーと、イノウーさんの発言の途中でしたか」
 「まず」ぼくはシノッチに感謝しながら、急いで言葉を発した。「107 人全員を家族単位にグルーピングします。つまり68 のグループができます」
 ぼくは言葉を切って反応を窺ったが、止めさせようとする人は誰もいなかった。今のところは、ということだが。
 「その68 グループに対して、くじ引きをします」
 「なぜ、くじ引きなのかね」矢野課長が穏やかに訊いた。
 「唯一にして絶対の公平な方法だからです。つまり、運を天に任せるということで」
 「ああ、わかったぞ、イノウー」此木部長がわざとらしく笑った。「そのくじ引きプログラムを君が作る。そう言いたいんだな。ダメだね。その手は食わんよ」
 「どういう意味でしょうか」
 「君が作るプログラムなら、いかようにもできるじゃないかね。たとえば君とシステム開発室の全員が当選するとか。逆に、嫌いな誰かを落とすとかな。何しろ、我々にはコードを読むことなんかできんからな。それを狙っているんだ。どうだ、図星だろう。違うか?」
 「あのですね......」
 「それとも、もっと汚いことを考えてるのかもしれんな。君に助けを求めてきた社員と家族を当選させることで恩を売るとかだな。ああ、金を要求することだってできるな」
 「イノウーは誠実な人間ですよ」そう言ってくれたのは、人事課の戸室課長だった。「部長が仰ったようなことをするとは思えませんね。ただ、今の発言にも一理あることは確かです。くじ引きプログラムが、我々にとってブラックボックスである以上、イノウーの人間性とは別に疑いが残ることは否めません」
 何人かが同意の声を上げた。矢野課長は残念そうな顔で頷いた。
 「確かに、そういう疑問符付きでは、公正とは言えないのかもしれませんな。せっかくの意見だが、イノウー、そういうことで......」
 「まだ話は終わってないんですが」
 ぼくが言うと、矢野課長は一度外しかけた視線を戻した。
 「つまり?」
 「確かにプログラムを作ろうとは考えていました」ぼくは説明した。「ですが、ぼくが考えていたのは、107 名を家族でグルーピングするところまでです」
 またもや場は沈黙したが、今度は戸惑いが支配していた。
 「......すいません」シノッチが恐る恐る訊いた。「どういうことでしょうか」
 「グルーピングした68 グループをプリントアウトして」ぼくは説明を続けた。「グループ毎に切り分けて折りたたみます。後は段ボール箱か何かに入れて、よくかきまぜてから、社長か誰かが、目をつぶって順番に引いていけばいいんです。合計人数が40 になるまで」
 あえてアナログな方法で行うと聞いて、シノッチは納得したように何度も頷いた。他の出席者たちは、欠点を探しているかのように思い思いの方向を見ている。矢野課長が訊いた。
 「その家族に、渋谷か川崎の会場を選択している人がいたら?」
 「その場ですぐ電話をかけて」ぼくは答えた。「会場の変更を受け入れるかどうか訊けばいいんじゃないですか。電話に出なかったらスキップして次を引く。変更不可の場合も同じです」
 「でもなあ」誰かが呟くように訊いた。「端数で40 を超える場合だってあるんじゃないのか」
 「その場合もスキップして次を引きます」ぼくは肩をすくめた。「ぴったり40 になるのが理想ですが、時間切れになりそうだったら、38 とか39 でも許容することにしましょう。それも運命ということで」
 言いながら、ぼくは入力したロジックの一部を消し、修正を加えていった。社員ID でグルーピングし、家族を加えた合計人数と、接種希望会場を1 行のデータになるようにアウトプットを整える。ある程度目処が立ったところで、出席者の一人に呼びかけた。
 「茅森さん」
 それまであまり発言していなかった茅森課長は、驚いて顔を上げた。
 「ん、何だ」
 「Excel で出力するのは簡単なんですが、印刷することを考えるとWord の方がいいように思えるんです。CSV を渡したら、同じサイズのエリアに差し込み印刷するようなことって、できますか?」
 「ああ」茅森課長は少し考えて頷いた。「できる。宛名ラベルを作ったときのVBA があるから、簡単に流用できる」
 「ありがとうございます。ということで」ぼくは矢野課長に言った。「ぼくの提案は以上となります」
 「今のイノウーの提案ですが」矢野課長は考えながら言った。「ユニークではありますが、公正ではないかと思います。どうでしょうか」
 不満そうな呟きが聞こえてはきたものの、表立って反論する人はいなかった。タイムリミットが迫るなかで、有効な代案を思いつくことができなかったのだろう。ここで全員を納得させるような案が出るなら、無駄に費やした数十分の間に出ていたはずだから。
 「時間もないことですし、他に意見がないようでしたら、イノウー案を採用したいと思いますが、異議のある方はいらっしゃいますか」
 賛成の方、と訊かなかったのは、矢野課長のちょっとした戦術だったのかもしれない。数秒待っても発言がなかったので、矢野課長は採用と会議の終了を宣言した。
 会議が終わった後、ぼくとシノッチ、それに茅森課長は、段取りを打ち合わせるために、改めてビデオ会議を行った。
 「プログラマ職のイノウーさんから」シノッチは感心したように言った。「紙と手でやる、という案が出るとは思いませんでした」
 「何でもかんでもシステム化すればいいってもんじゃない、というのが、前の職場での先輩の教えだったんです」
 「とにかく助かりました。それで、グルーピングデータは......」
 「もうほとんどロジックはできてるので」ぼくはソースを確認しながら答えた。「後は実際に出力してみるだけです。ただ、さっきはCSV で茅森さんに渡すと言いましたが、その前に、ダブルチェックと疑惑解消のために、総務で読み合わせしてもらった方がいいかもしれません」
 「わかりました。人を確保しておきます」
 「じゃあ、Excel ファイルで総務に送ります。茅森さん、Excel ファイルでも差し込みはできますか」
 「大丈夫だ」
 手早く段取りを決め、ぼくは作業に戻ろうとしたが、最後にシノッチが首を傾げて言った。
 「そういえば、夏目さん、出席しなかったなあ」
 「忙しかったんじゃないですか?」
 「うーん。でも、イノウーさんを参加させるよう矢野課長に勧めたのは、夏目さんだったんですけどね。まあ、いいか。じゃあ、お願いします」
 その雑談のような会話を思い出したのは、もう少し先のことになる。

 (続)

 この物語はフィクションです。実在する団体名、個人とは一切関係ありません。また、特定の技術や製品の優位性などを主張するものではありません。

 ◇ ◇  ◇ ◇ ◇

 次週は、私用のため、更新をお休みします。次回は9/27(月) になります。

Comment(19)

コメント

にゃんきち

夏目氏は一体今度は何を企んでいるのか…
懲りないというか何というか…

ラミレス

誠実真面目なイノウーならアナログな提案に到達するはずと踏み、かつ、それはシステム開発室の存在意義を自ら否定したものである、という事実を、ネチネチ有効活用するんかね… 悪女や

匿名

>ラミレスさん

面白い意見ですね。むしろ逆パターンになると思ってました。
夏目さんは、イノウーはシステムで無作為抽出する方法を選ぶと踏んで、
はずれた方々に取り入って、イノウーを堕とす目論見かな?と。

匿名

条件から実施方法までパッケージを提示してるのがイノウーだけという
ところでみんなイノウー呼びすることになったんだ?

匿名

誰もイノウーの本名知らない問題

匿名

シノッチの着信音、意図的にやったのかと思ったけどそうでもなかったのかな。

JINKYUの氏名、イノウーになってそうw

ラミレス

>匿名さん
社長に転職を提案するイノウーの強心臓&問題の本質を見抜く力を認めつつ、だからこそ、悪用しそうだなと。でも、どっどに転んでもいいように準備してそうですね。

匿名D

>何でもかんでもシステム化すればいいってもんじゃない


今回の件だって、十分にシステム化してると思います。
システム化というのは、デジタルに限定した概念ではないですし。
私に言わせれば、仕事のマニュアルとか
修学旅行のしおりだって、十分にシステム化です。


そもそもコンピューターがデジタルだっていったって、
アナログな回路を、しきい値を設けてデジタルに扱っているに過ぎません。


言い換えるなら、
「何でもかんでもコンピューターに閉じ込めればいいってもんじゃない」
ってところかな。

匿名

匿名Dさん、同意です

匿名

引く役が社長になったら死ぬほど嫌な顔しそう

育野

くじ引きで真っ先に思い出したのは,恣意的に当選を出せるようにしたクリスマスのアレです。
夏目課長もその情報を知っていれば,後からリークすればイノウー(ひいてはシステム開発室)の
信用を落とせると考えるかも。
問題はくじ引きが選ばれるかという点ですが,
「公正・公平に」が必要条件であればだいたい選ばれそうに思います。
特に今回のようにすり合わせを行う時間がない場合は。
# ワクチン予約を先着順で受け付けして混乱しているのをニュースで見て,なぜ抽選にしない?と
# ずっと不思議に思っていたのでした

匿名

大竹新社長「えっ、俺がやるの?」

匿名

エースシステムの見境なく行使する権力。

陣頭指揮は高杉さんであろうことは間違いない。

匿名

茅森課長!

匿名

新人の頃受けた研修(システム開発初級みたいな)で講師の人が似たようなことを言ってた
通販受付のコールセンターで、販売数が決まっているとき、仮押さえ→本申込みとやる場合、仮押さえで残数をマイナス1して、本申込みに至らなかったら戻す、みたいな処理だとトラブルが発生するので、小規模の場合は電話が入ったらオペレーターが手を上げて、SVが枚数分のカードを渡すことで残数管理をすることがある、だったかなあ
数が多くなると無理だろうけど、少数ならアナログ手法も有効ってことですな

匿名D

匿名Dさん、同意です

匿名D

匿名Dさん、同意です

匿名

システム化ってコンピュータ利用だよねって確かに思いますよね。
マニュアル化(紙使用)とかも意味的にはシステム化なんですけどね。

ただ、システム化=コンピューター利用って思っている人が大多数だろうし、
シノッチのITリテラシを考えると、あの説明で十分だったと思いますよ。
言い換える必要はないかと。

のり&はる(匿名D)

匿名さん同意です。

コメントを投稿する