人形つかい(7)上級システムエンジニア
翌日の夕方過ぎに自社に戻ったとき、ぼくは橋本さんのランチで得た情報――「上流の分野に口を挟むな」という言葉を除いて――を、東海林さんに話した。東海林さんは、黙って聞いていたが、話が終わると「そんなことだろうと思ったよ」と苦笑した。
「要するに設計書の書き方だけに異常なほど精通して、プログラミングのプの字も知らないような自称システムエンジニアが、同じぐらい技術を知らないエンドユーザーの言いなりになって、実現可能かどうかを検証しようともせずに、めちゃくちゃな設計書を書いて仕事をした気になってるわけだ」
東海林さんは一気にそれだけ言うと、インスタントコーヒーをがぶりと飲んだ。
「でも、橋本さんは、それほど悪い人じゃないみたいですよ」ランチを奢ってもらった相手のことを、悪く言ってばかりも気が引けたので、そう言ってみた。「たぶん、上級SEのことを神様か何かみたいに思ってるんじゃないでしょうかね」
だから、技術的な間違いを指摘した東海林さんを快く思わなかったのだろう。
「うん。それはおれもそう思うよ。橋本さんに悪意があるんじゃないことぐらいはわかってる。ある意味、彼も被害者といえるかもしれん。でも現実的に被害を受けてるのはおれたちなんだけどな」
この日も、東海林さんは設計書のことで橋本さんと一戦交えていた。焦点になったのは、ファイルを添付できる画面についての次のような記述だ。確認画面から「戻る」ボタンで戻ったときの画面の状態について、次のような記載があったのだ。
確認画面から戻ったとき、すべての入力値は保持され、再表示される。
これは、大抵の設計書に書いてあるのだが、fileタグについては実現するのは難しい。少なくともK自動車内で使用されている数種類のブラウザでは、fileタグのvalue属性に、プログラムから値をセットすることはできない。
東海林さんがこの設計書を読んでいたとき、たまたま橋本さんが開発室に来ていた。東海林さんは橋本さんを呼び止め、設計書を見せながら確認した。
「これなんですが、添付ファイル項目は例外ですよね?」
橋本さんは何をばかなことを、というような顔で東海林さんを見た。
「いいえ、例外じゃありませんよ」
「これ、実現できませんが……」
「またですか」橋本さんは声に露骨なうんざり感をにじませた。「ちゃんと調べてから言ってますか?」
「常識でしょう、こんなの」東海林さんも、だんだん忍耐が尽きてきているようだった。「調べなくてもわかりますよ。普通の技術者ならね」
最後の言葉は明らかに皮肉だったが、橋本さんは気付かなかったか、気付いていても無視したようだった。
「この仕様はちょっと何とかしてほしいんですけどね」
「じゃあやり方を教えてもらえますか?」
「それを考えるのは上流の仕事じゃないですよ」
「要するに知らないんですね?」
「知ってないといけないですかね?」橋本さんは涼しい顔で訊き返した。「何度も言いますが、私の仕事は設計であって、実装じゃないんですよ」
「だったら、もうちょっとまともに設計してもらえませんか」
東海林さんの言葉に、ぼくはぎくりとなった。反射的に橋本さんの顔を見ると、思ったとおり険悪な表情だ。
――まずい。
「あの」とっさに声が出ていた。
東海林さんと橋本さんは、そろって「何だ?」とでも言うようにぼくに顔を向けた。
「あのですね」ぼくは必死で頭を回転させた。「それなんですが、前にネットでセットする方法を見たと思うので、一度、調べてみるということでどうでしょう?」
東海林さんはいぶかしげな顔をした。
「どこで?」
「いや、それは、あの忘れちゃったんですけど。会社のPCにブックマークしてあったと思うので……」
「わかりました」橋本さんは頷いた。「じゃあ、調べておいてください」
橋本さんが出ていった後、東海林さんはぼくを睨んだ。
「お前、デタラメ言っただろ」
「てへ♪」
せいぜいお茶目な声を作ってみたが、東海林さんはぼくの努力をあっさり無視した。
「まあいい、今日、帰ったら話があるからな……」
……というわけで、帰社したぼくたちは、橋本さんについて話し合っていたのだ。
「だいたいどうするつもりだ?」
「何がですか?」
「例のfileタグへの値のセットだよ」
「やっぱりダメでしたって言うしかないでしょう」
東海林さんは呆れたようにぼくを見た。
「それじゃ同じ会話を再現するだけにならないか?」
「いや、最初からできません、というと受け入れられないかもしれませんが、調べてみましたができないようです、というと受け入れられる気がするんですよね」
「本当か?」疑わしそうな口調だった。
「たぶん、ですけど」本当はそれほど自信があるわけではなかったのだが。
「ふーん」東海林さんは少し考えていたが、肩をすくめた。「まあ、いいだろう。どうせなら何か根拠となるドキュメントとかあった方がいいかもな。RFCとか」
――また面倒なことを……。
「……探してみます。HTTPって何番でしたっけ?」
「2616だったかな」東海林さんはそう言うと、意地悪そうに笑った。「でも、HTTPとは関係ないかもな」
「……手伝ってくれる気なんかないんでしょうね」
「そんなにヒマに見えるか?」
即答だった。ぼくはあきらめて、広大なネットの海に乗り出した。
◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇
翌日、ぼくはいくつかの英文資料を見せながら、できない理由を説明した。
「……つまり、fileタグに値をセットできてしまうとですね、ページを開いた途端にローカルのファイルを勝手にアップロード、みたいなことができてしまうわけです……」
橋本さんは黙って耳を傾けていたが、最後には渋々ながら理解してくれた。
「わかりました。修正しますと東海林さんに言っておいてください。ただし設計書の修正は上長に了解を得なければならないので、修正版は数日待ってください」
「はい、大丈夫だと思います」
ぼくは開発室に戻ると、東海林さんに報告した。
「さすがに一緒にランチした仲だけあるな」東海林さんは笑いながら言った。「これから、橋本さんと話すのはお前に任せるか」
「じゃあ給料上げてください」
「技術部長に交渉しろよ」
このときぼくは、言葉は悪いが橋本さんを「操縦」する方法を見つけたと思っていたのだが、それは間違っていなかった。間違っていたのは、もっと根本的な問題だった。
◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇
数日後、ぼくたちが開発室で実装にいそしんでいると、橋本さんが入ってきた。ただし1人ではなく、別の人物の後ろに従っていたのがこれまでと異なる点だった。
そこに立っていたのは、健康そうに日焼けした背の高い女性だった。40代半ばあたりだろうか。ブランド品らしい高価そうなビジネススーツをぴしりと着こなし、適度な化粧と控えめなアクセサリー。袖から覗く腕時計はフランク・ミュラーらしい。SIerというよりは、証券会社あたりの女性幹部――それもやり手の――という印象だった。嫌みにならない程度に筋肉質で、背筋をぴんと伸ばしたきびきびした動作からすると、定期的なスポーツを欠かしていないようだ。
「みなさん、はじめまして」落ち着いた感じの、耳に心地よいソプラノだった。「上級SEの高杉です。承認くんの担当SEです」
ぼくたちは口々に「どうも」とか何とか言いながら、慌てて立ち上がった。
――これが年収1000万の上級SEさんか。
高杉さんは女王陛下のような笑みを浮かべると、数歩前に出た。すると頭上の照明が絶妙な角度で、その姿を浮き上がらせた。計算してやったのだとしても見事としか言いようがない。
「未熟な橋本の設計書の件で、みなさんにいろいろご迷惑をおかけしたようで申しわけありませんでした」
そう言って深々と頭を下げる。橋本さんも同じタイミングで頭を下げたが、その直前に強張った表情がちらりと見えた。
「実はわたくしが海外出張しておりました間、橋本に設計書の作成を任せておいたのですが、どうもわたくしの意図がしっかり伝わっていなかったようです。誠にお恥ずかしい限りでございますが、若輩ゆえの過ちということで、なにとぞご容赦いただきたく」
再び一礼する。どうも、「~いただきたく」で文を終わるのは、エースシステムの文化であるらしい。
「しかし、ご安心ください」高杉さんはにっこり微笑んだ。「わたくしが復帰しましたので、設計書の方はしっかりチェックさせていただきます。安心して実装作業に専念してください」
その言葉を信じるなら、例の明らかにおかしな設計は、橋本さんが「功を焦った」結果の産物だったということになるのだろうか。
――でも、上長の承認を得た、と言ってたよなあ。
東海林さんも腑に落ちない顔をしているところを見ると、そのあたりを疑問に感じているのだろう。ただ、ここで高杉さんを追及したところで、何の利益にもならないのは確かだった。
「それではみなさん、今後ともよろしくお願いします。それから、ささやかながら差し入れをお持ちしたので召し上がってくださいね」高杉さんは、そう言うと後ろに控えている橋本さんを振り向いた。「橋本、お配りして」
橋本さんは硬い表情のまま、リボンのかかった小さな箱をぼくたちに1つづつ配った。チョコレートのようだった。neuhaus とロゴが入っていたが何と読むのかすらわからなかった。ひっくり返してみたが、日本語は1文字も書かれていない。
「では失礼します。お仕事を中断させてしまってすみませんね」
高杉さんは最後に艶やかに微笑むと、橋本さんを従えて、悠然と出ていった。
残されたぼくたちは、毒気を抜かれてしまったように、しばらく無言で立ち尽くしていた。
最初に立ち直ったのは、ライズから来ている女性プログラマの原田さんだった。
「これ、ノイハウスですねえ」
「有名?」石川さんが訊いた。
「そうですね」原田さんは感心したように箱を眺めた。「ベルギーのチョコです。ゴディバと同じぐらい人気かな。銀座にもお店ありますけど、これはベルギー本店で買ってきたみたいですね」
「ベルギーに出張だったのかな」別のライズの人が言った。
「すごい」
SIerのエンジニアが、ベルギーにどんな用事で出張に行くのか、全く見当もつかないぼくは、思わずつぶやいた。すると東海林さんが面白そうに笑った。
「出張なんて口実で、実はバカンスだったりしてな。ニースあたりで」
「偏見でしょう、それは」
「まあ、これで」ニースうんぬんは根拠がなかったらしく、東海林さんは話題を変えた。「おかしな設計書に悩まされずに済むといいんだがな」
ぼくは心から頷いた。
結果的に、高杉さんの登場によって、おかしな設計書のおかしな仕様は多少減ったものの、皆無になることはなかった。むしろ、新しい問題がぼくたちを苦しめることになった。
(続く)
この物語はフィクションです。実在する団体名、個人とは一切関係ありません。似たような行動や言動があったとすれば偶然の一致でしかありません。また、特定の技術・製品の優位性などを主張するものではありません。
コメント
レモンT
『無慈悲な上流の女王』降臨? やっぱり月にちなんだ名前だったりするんでしょうか(^^;;
告白するとネタにされてる所と同じグループに属する企業に勤めてたりするんですが、うちの会社(少なくともうちの部署)はここまでひどくはないと思います。そもそも上流・下流なんて言い方自体しませんし、設計と製造の間に壁を立てるような事も(そのかわり一人で全部やる破目になることもしばしばですが)。
もっとも東京方面と話してると、中にはこんなところもあるかもという気がしてくるのもまた事実だったり……(苦笑)。
BEL
「この物語はフィクションです」と書いてありますが、
「絶対実話を元にしてるよな」と思えるほどリアルで、面白い連載です。
「WEBアプリを専門的にやってます」とかだったら話は別ですが、
プログラムしない設計者がfile云々のあたりを意識してないことは考えられます。
(「fileタグ」ってなんだろう、と思いますが。)
素人目にみたらfileだけできないのは不自然に見えるんだろうし。
東海林さん側は、できないならその技術的理由の説明や代替案の提案を
することが必要ですね。
橋本さん側は東海林さん側の説明やらを技術的に理解する能力と
それを受けて「じゃ、どうするか」を判断する能力や調整力が必要ですね。
頭ごなしに、とにかくやってください、という姿勢がよくないのであって。
実際に、確認画面から戻ったとき、fileの入力値が保持されたように
見せることはできなくもないですが(「できません」という会社が殆どなくらい
面倒ですが)、その労力を認識して、
本当にやるのかなんらかの妥協をするのかの調整が必要です。
kyon
確かにfileの入力値保持って難しいですね。
やるなら、確認画面に遷移したとき、ローカルのパスを保存しておいて、
入力画面に戻ったときに、file の横か下あたりに、そのパスを表示
する感じでしょうかね。でも、当然、そのときのファイルはサーバ側で
保存しておく必要があるし、再度、指定されたときには、前のファイルは
消さないといけないし(まあ消さなくてもいいんかもしれないけど)、
ということを考えると、「できません」とした方がシンプルでよいですね。
作中では、主人公が橋本さんにセキュリティの点から説得していましたが、
大手だとセキュリティにはやたらにうるさいところもあるので、こういう
方法は有効だと思います。
アロン
実装しないソフトウェア会社ってのが世の中にはあるんだよね。不思議だよね。
BEL
安いからという理由で実装そのものは外注しちゃうって会社は
いくつか見ましたが、いざというときちゃんと舵取りできるように技術は
持ってなとだめですね。そこらへんがしっかりしてるのかは、
火をふきそうになってから初めてわかったりします。。