【旧】魔法の世界でプログラム

北きつね

火消し部隊

真辺は、この会社で唯一の"火消し部隊"の部門長をやっている。
"火消し部隊"それは、仕事としては本来有ってはならない事だが、いろいろな要因が重なり、納期に大幅な遅延が発生したり、重大な問題が発生したりして、急な対応を強いられた時に、サポートを行う部門だ。エキスパートが揃っているが、一癖も二癖もある連中の集まりになっている。
そんな愚連隊を率いているのが、真辺なのだが、本人は至って普通の会社員のつもりで居るらしいが、変わり者である事は、周知の事実だ。そんな真辺は、自分はプログラマ"だと言い張っている。SEシステムエンジニアでも、ITプロフェッショナルでもないと言い張る。一度、会社が名刺に”システムエンジニア”と肩書を書いたら、名刺を一切使わなくなった。使える言語の数は社内で一番多し、マイナーが言語も使いこなす技量や知識もある。扱える端末の数もずば抜けている。会社としては、そんな彼の肩書が”プログラマ”では現場での発言や立場が軽く見られる事を不安視している。別の見かたもある。彼が”プログラマ”では、顧客からの単価に影響が出てしまう。会社と彼の間の妥協点は、”肩書なし”が彼の肩書になっている。
火消し部隊としては、様々な現場に顔を出し短時間で、業務を理解して問題点のあぶり出しを行わなければならない。プログラム言語や端末特性が”わかりません"では通用しない事を一番理解している。
彼の大きな欠陥の一つが、部下たちにも同じレベルの事を求めている事にある。彼曰く『自分のような欠陥品ができるのだから、大学出の人間が出来ないわけがない』が口癖の様になっている。
そんな火消し部隊の隊長の職場での口癖が『言語なんて、書き方の違いはあるが、"入力→計算・判断→出力"が使えればなんとかなる。』だ。暴言である事は彼が一番理解している。言語理解や開発手法は重要ではないというのが、彼の根本的な考え方だ。
そんな彼と彼の火消し部隊には、会社内の部署からだけではなく、他の会社からも要請が入ってくる事がある。
先日も、2月末納品のプロジェクトで、客との認識違いが1月末に発覚して、火が燻り始めた現場に急遽呼び出されて、火消しを行っていた。『客との意見の相違といわれ』行った現場は、大変優秀な営業が現場に確認も取らないで”自分の判断”で客とやり取りを行っていた。自分たちがしでかした事ではないので、開発や現場の営業の士気は最悪な状態になっている。ただ、士気が低かろうが、納品の時期は決まっている。撤退を決めるか、それでも納品までこぎつけるのか、それとも客と交渉をして納期を伸ばすか?その判断時期が押し迫っていた。この案件で、真辺達に課せられた役目は、現状を把握して、上層部に正確な情報を伝える事だ。撤退が決まれば、速やかな撤退準備を行い。殿しんがりを務める事になる。無理やり納品してお茶を濁すというアイディアもあるにはあるが、真辺はその選択肢はないと考えていた。
怒り心頭の客との交渉を行い。現場の人間に全員休みを取らせた。休みの間で、現状解っている情報を整理して、自分のチームメンバーだけでソース一式を検査して、客が言っている事や営業が話した事の裏取りを行う。その現場は、ドキュメントがしっかり残されていて、議事録も残されていた。それらをベースにして、シナリオを構築する。口が軽い"優秀な営業"だが、現場から営業を通さずに、客の担当者と話をするのは至難の業だ。そこで、客の上層部と直接パイプを繋げる事にした。真辺が率いる部隊は、火消しを担当しているので、いろんな部署だけではなく、外部の会社にも伝手ができやすい環境にある。同じ業界なら、間に一人挟めば大抵の会社には繋がりが出来る。客にも二人挟めばよほど小さな企業ないかぎりは繋がりを持つ事が出来る。
この時も、以前一緒に火消しをしたシステム会社の人間が、客の上層部を知っていた。客の別部署に話を繋いで貰って、自分たちが仕事をする部署の上層部に繋げてもらった。こんな水面下での交渉は本来やるべきではないが、今回の"火"は一部の客と口の軽い営業が燃料を投下している。それらを排除するしかない。
まずは、雑談レベルとして、客の現場サイドの人間と話をした。やはりというか予想通りの展開だ。現場としては、現状出来ている物で、それほど機能的な問題は感じていない、それよりも新しい仕組みが入ったシステムを早くリリースして欲しいと感じているようだ。そのことは議事録からも伺えることだ。それではなぜ"火"が燻ったのか?簡単な事で、客の上層部と優秀な営業口の軽い愚か者が問題なのだ。客の上層部は、優秀な営業口の軽い愚か者が言った事をそのまま上層部に伝えて居たので、そして、リリース前になって、出来ていないと騒ぎ出した。それが出来ていないと、自分の失点につながるからだ。しかし、現場としては、そんな瑣末な機能よりも他の機能の充実をお願いして、現場サイドでは納得していた。
まず、真辺達がやったのは、現状の状況の整理だ。”出来ている/出来ていない”の区分でも、”リリースできる/顧客確認済み/テスト開始できる/ソースコミット済み/デバッグ中/開発中/仕様待ち/他のモジュール待ち/必要ない”の区分に振り分ける。客担当者への聞き取りを行い。モジュールの確認を行っていく。そうすると、大抵の場合・・・「あぁそれ必要ない」や「え?どういう事」という話しがボロボロ出て来る。この現場では、735本のモジュールが存在していた。実際に、開発が終わっているのか、デバッグが終わっているのかは、現場担当者が出てこないと解らないが、客との話では、仕様待ちとなっている物に関しては、ほぼ必要ない物だ。客が開発中と認識しているのが、優秀な営業と客の上層部の話で決まった機能だ。それ以外は、ほぼほぼ問題なく終わりそうな雰囲気がある。
結局、この現場でも同じ状況になっている。議事録が残されている現場でも認識の違いが発生するのだ。客と開発者のコミュニケーション不足から発生する現象だ。一概に、話をして議事録を残しているだけではなく、客と客の上司との会話や開発者と営業のコミュニケーション不足が招く古典的な火事現場だ。開発者は、客担当者に負担をかけないために承認は担当者レベルでもらうだけにして、客は開発者に気を使って、内部資料から報告書を作成して報告をおこなう。開発者は、客とのやり取りで問題がないと資料を作成して社内の上司に報告をおこなう。
これが、解った真辺達は、今後は現場の開発者を全員集めて話をする事にした。真辺達には指揮権はないが、状況確認の為に必要な事という名目で話を聞く事になる。休ませている間に作成した報告書をベースに話をする事になるが、優秀な営業口の軽い愚か者は含めない。実際に、開発者がどういう認識で居るのかを知りたいからだ。
開発者達は、なぜこんな事になったのか把握出来ていなかった。客が急に"この機能はどうなっている?”といい出したのが始まりで、その時に、現場の責任者が不在で担当者レベルでの話をしていた。納品が近づいているので、当然の事だ。そこに、終わっていると思っていた”新機能”の話。現場は、”新機能”に関しては、”今は考慮していません”と答えるしかなかった。ここで、客が上役にそのまま報告をしてしまって、上役が”優秀な営業口の軽い愚か者”に”どういう事だ”とクレームを入れる。”優秀な営業口の軽い愚か者”は、自分の失点になると困るので、開発サイドの問題であるかのように説明して、開発させますと言ってしまう。慌てる現場だが、”優秀な営業口の軽い愚か者”は自分が居ないと何も出来ないと思いこんで、打ち合わせや会議に顔をだすようになる。他のチームの仕事が終わった若手を投入する。現場は更に混乱する。客は、金額が変わらないまま人が増えているので、なんとかなると思い込む。”優秀な営業口の軽い愚か者”も”問題ない”と説明する。
しかし、納品間近のシステムに業務を理解していない人間を入れてもほぼ戦力外となってしまう。そして、”優秀な営業口の軽い愚か者”は自分が他の部署に頭下げて人を融通して貰ったのに使わないのはどういうことだといい出す。
これが、この現場で発生した事だ。たった一言の説明があれば問題にはならなかった。そして、”優秀な営業口の軽い愚か者”がコミットした機能は、次回のリリースで実装予定となっている機能なのだ。
真辺達は、これらの報告書を上層部に提出した。”優秀な営業口の軽い愚か者”の話はスルーして・・・だ。誰がやったかは、終わってから会社が調べればいい事で、こじれてしまった糸をほぐす事がまずは大事なのだ。
会社からの指示は「業務続行」だった。納期交渉を行えという物だ。735本中。次回リリースに回せる物。73本。新機能が殆どだ。客がいらないと言った機能も含まれている。
現場での話し合いはうまく行く事が多い。問題は、上役が出て来る時だ。何か、お土産を提示しないと話が進まない事がおおい。客の社内での立場もある。その為に、その情報をリサーチしてから交渉に臨む。
基本的には、納期交渉は現実的ではない。その為に、真辺達が取った作戦は”実質的な納期延長”だ。納期に間に合いそうな機能でのリリースを行い。バージョンアップでの機能追加を行うという事にした。まずは、現場が実際に必要な機能だけをリリースする。開発者からの聞き取りで、バージョンアップするまでの期間として、2ヶ月と見積もられた。真辺達は、それを3ヶ月と説明した。火が付いている現場の人間たちの心理は、自分たちが客に迷惑をかけていると思っている場合が多い。その為に、自分達が多少無理をすれば・・・と考えてしまう。その為に、ギリギリの納期を申告してしまう。その為に、何か問題が発生した時の対応ができなくなってしまう。そして、新たな火が噴出して、炎となってしまう。そうならないために、最低でも1.5倍の納期を客に申告する。もし、それで納期よりも早く出来てしまっても、文句をいう客は居ない。
交渉のやり方もいろいろあるが、今回は客の社内で使うツールだったので、リリースを予定通りに行って、次のバージョンアップ時に入れる機能を先にコミットして、客の面子を潰さないようにする。確かに、使えない機能は出て来るが、それは3ヶ月後にリリースすると約束する。そして、もう一つ大事な事は、『このリリースは社内で多くの人に使ってもらう事を前提しているので、問題が発生したときの為に、3ヶ月間は弊社の人間が対応を行う。その為に、出張扱いで誰かを張り付かせます。』と、お願いする事だ。客からは、幾つかの要望が入ったが概ね了承の返事を貰った。問題は、この余計にかかる3ヶ月間の予算だが、真辺達の分を入れても、かなりの損失になる。会社と真辺達の考えは一緒で、この3ヶ月間できっちり納品を行い。次に繋げる。そして、その次で損失分を回収するように交渉する。この時の営業は、現場に近い営業が行い、”優秀な営業口の軽い愚か者”には出てもらわないようにする。
そして、現場の開発者達は、本来なら2月末で一区切り着くはずだった仕事を、3ヶ月延長しなければならなくなった。途中から入った若手には、2月末で元の部署に戻ってもらう。正直居てもらっても迷惑にしかならない。真辺の部下達がその代わりに雑務のような事を担当する。業務知識の必要がない。DB周りやネットワーク周りの事やOS周りの事をそれぞれ担当する。残ったメンバーでソースのレビューを行っていく。火が着いた現場では、途中から、コピペの嵐になる事が多い。同じような事をやっている部分をコピペしてすこしだけ機能を変えてコミットするような事が行われる様になってしまう。そのまま放置していると、同じような機能で発生した障害が隠されたまま進む場合がある。そうならないために、共通化を行う必要があるのだが、そこまで手が回らない事が多い。その為に、言語的に可能な範囲で共通化を行う事を並行して行っていく。業務的に同じような事を行っている部分が多くなっていく、それらが使われているモジュールを把握するだけでも、デバッグの時やテストの時に役立つ情報となる。
そして・・・真辺達は、3ヶ月間の延長業務を終わらせて、無事鎮火した事を確認した。新たな契約が結べた事もいいニュースとなった。間が1ヶ月空いてしまったが、6月からの仕事としてバージョンアップと新機能の追加業務を受注できたのだ。現場の人間たちは、この一ヶ月を使って、客との打ち合わせや新機能のプロトタイプを作ったりする業務を行う。
現場を離れて、これらの事を上層部に報告して、会議室を出た。
「んーん」真辺は久しぶりの休みを取る事にしていた。年末から働き通しだ。趣味が、プログラムという生粋のプログラマではある46歳独身男性。ついでに天涯孤独。更にいうと、郊外に一戸建てを持っている。そんな人間でも休みが欲しいと思う事はある。彼女が居た事もあるし、それなりの経験はある。男性が好きなわけではなく。恋愛対象は普通に女性だ。帰っても、自分で遊びのプログラムを作っているが、それが仕事で受けたストレスの発散になっている。家には、待っている人は居ないが、去年の夏までは、兄妹猫を飼っていた。30歳になる前に拾った猫だった。夏に、最初に妹猫が天寿をまっとうして、追うように兄猫も無くなった。二匹とも、真辺に懐いていて、ダメだと言っても、布団の中に入ってきて寝てしまう。いつの間にか真辺も許していた。そんな待つものが居なくなった家に帰るのが辛くて、仕事に打ち込んでいた事もあるが、自分が休まないと部下たちも休めない。
今回も、丁度いい機会だから、長期休みを取る事にした。実家があった街に行って墓参りもしておきたい。そして、いろいろやっていなかった事も片付けてようと考えていた。
長期休みも会社に承諾させた。1ヶ月間の休みだ。次の現場はまだ決まっていない。社内で待機になる事も考えられる。それならそれでも良いと思っている。半年近く最新技術や情報を調べていない。それらを調べながら、次の現場が決まるのを待っている事になるだろう。
部下たちの休暇の申請も会社に掛け合って全部許可させた。
伸びをしながら、帰ろうと歩いていた。
「ナベ!」嫌な予感しかしない、篠原営業部長の声が聞こえた。さっきの報告にも顔を出していたし、真辺が休暇を取る事を知っているはずである。しかし、真辺は知っている。ここで、返事をしてしまうと、明日からの休暇がなくなってしまう可能性が高い事を・・・。
「ナベ!!聞こえているのだろう!」真辺は聞こえないフリをして、玄関に急ぐ。篠原と真辺の付き合いは長い。この会社に真辺を誘ったのが篠原だ。もう20年近い付き合いになる。篠原は、真辺の5つ上の先輩になる。前の会社の上司だ。
「ナベ。急ぎの仕事じゃない。休み明けの相談だ!」「旦那。それなら、そう言って下さいよ」「お前が無視するからだろう。それで、この後時間あるか?」「え?ないですよ。この後、予定がありますからね」「おぉそうか、予定はないのだな。」「あいかわらず、人の話を聞かない人だな。」「解った。解った。おまえの好きな物、食わせてやる。」「あぁ・・・はい、はい。どうせ断ってもダメなのでしょう。」「まぁそうだな。強制って手段は取りたくないからな。」「わかりましたよ。それじゃ、いつもの店でいいですか?旦那のおごりですからね。こっちからは誰か連れていきますか?」「そうだな。医療系に詳しい奴居たよな?」「居ますよ。何系ですか?」「全般的な事が解ればいい。」「あぁだから、電子カルテなのか、機器操作なのか、医事会計なのか、それもとオーダですか?」「さぁな。お前を名指しの要請だからな。」「・・・あぁ・・・はい、はい。それなら、俺一人でいいですよね?」「そうだな。それじゃ、19時にいつもの店に、俺の名前で予約入れておく。」「はいはい。19時ですね。また中途半端な・・・。」「先方の指定だからな。絶対に来いよ。」「解っていますよ。それじゃ後ほど・・・。」
真辺は、篠原に手をフリながら別れた。今の会話から、病院関係の仕事である事はわかる。名指しという事は、病院から直接の依頼だとも考えられるが、それよりも大手のSIerからの依頼である可能性が高い。面倒な事にならなければ・・・。大抵こういう場合は、面倒な事になる。火が噴いている現場じゃなければいいと思っているが、自分を名指しという事は、それも考えにくい。憂鬱な気分のまま、時間まで自分のデスクで時間を潰す事にした。
「ナベさん。どうかしました?」
デスクに座ったら、部下が声をかけてきた
「あぁ篠原の旦那に呼び出された。」「え・・・イヤですよ。私、もうお休みの予定で、ツアーの申込みしちゃったのですよ」
30代前半の女性で、石川聖子。真辺の部下になってから、3年目。真辺の部下の中では若手だ。
「あぁ大丈夫。業務開始は、6月からだよ」「そうなのですか・・・良かった。それで、私達の休暇はどうなりました?」「大丈夫だよ。全員分受諾してもらった」
あちらこちらから、”うしっ”や”やった!”などと声があがっている。やはり、皆気になっていたようだ。
真辺は、部下に”真辺さん”や”部長”とは呼ばせていない。現場でも、”ナベさん”と呼ばせるようにしている。客の上層部が居るときには、しっかり役職で呼び合う様にさせているが、それ以外の場所では、”ナベさん”と呼ばせている。それにも理由がある。現場で”部長”などと呼ばせると、真辺にも決定権が有るのではないかと勘違いするものたちが出てしまう。その為に、自分たちはサポート部隊である事を認識させるために、役職では呼ばないように徹底している。
「ナベさん。それじゃ、明日からお休みでいいのですよね?」「あぁ問題ない。どうせ有給が余っているだろう?しっかり休めよ。最初の一週間は俺の権限で振替休日を割り振っておいた。後は、好きにしろ!」「はぁーい」「了解。」
全員がきっちり休むような。
「次の現場の情報はいつもの方法ですか?」「あぁロクでもない場所かもしれないけど、解ったらMLに流す。俺が出社予定の日も流すから、都合が良い奴は会社に出てきたら、話してやる。」「了解です。それじゃ、私は上がります!お疲れ様!」
皆口々に帰りの挨拶をしていく。真辺の部署にはタイムカードが存在しない。真辺が廃止したのだ。その代わり、全員が固定給になっている。残業代が出ると思うと甘えになるという考えだが、月100時間分の残業代が上乗せされた金額になっている。これも、会社側との交渉の結果だ。ただ、仕事が入っていないときには、上乗せ分がカットされる。そして、会社規定のフォーマットでの出勤簿の提出が義務付けられている。
部下たちの休暇の予定を確認し終わった。「さて、後30分か・・・プラプラ歩いていけば、丁度いいくらいだな。」
席を立って、会合が行われる鉄板焼屋に向かった。

「【旧】魔法の世界でプログラム」を読んでいる人はこの作品も読んでいます

「ファンタジー」の人気作品

コメント

コメントを書く