フロイドの狂気日記

時は流れ、曲も終わった。もっと何か言えたのに。

PR

おじさんプログラマに必要な「ごまかし力」

PR

あざやかにコーディングしてのける

余裕綽々でバグフィックスする

そんなふうにやれるものなら―――

俺だってそうしたかったさ

 

そうですね。プログラマを長々とやっていたら皆そう考えるけれど、できねえんだよな。チームプレイだから。一人でコーディングするなら自分の好きなようにできる。だが下請けでしか働けないクソ雑魚は恵まれた環境にジョインすることが稀だ。あまりにも大雑把な見積もりと、共通化されないコードスタイル、プログラマ達のレベルの高低。どれもこれも優良さとは程遠い。そんな中で日々を暮らしていると、プログラマとしての能力よりも、運とか立ち回りとかの方が重要では?とか思い出すし、なんだったらそういうシーンを何度も目撃する。意識の高いプログラマには悪いが、勉強よりも実はごまかし力のが大事では?などと思った。もちろんこれは低いレベルでの話であって、より高いレベルの仕事の話ではないが、おおよそ99%のITを使った雑事におけるありがちなことのように思う。

 

例えば、だ。僕はすでに契約解除が決まっている仕事の最中ではあるが、大混乱になっている。あからさまに足りない工数であるにも関わらず、根本的なリスケをしなかったために、エンドユーザーの社員の監視を招くという自体になっている。

 

一日の朝と夕方の会議でその日の進捗を管理するという。おーこわ。進捗遅れは随時報告すれば、特に問題はない、というスタイルでやっている。元請けも怒りはしない。エンドも怒りはしない。だがそこには自分たちの責任であるという、根本的な部分には触れたくないという確固たる信念があるように見える。1月末までにテストフェーズまで持っていく、という大義名分を守る。どれだけひどい内容であったとしても。

 

こういうプロジェクトだと、誰が悪い、というようなことではなく、誰もが犠牲者であるかのような空気感が支配する。そんなときは「ごまかし力」こそが物をいう。こういうケースは徹底的に無能者の道化を演じるものが最大の利益を得る。とても能力の高い人間だな、と思われると次から次へと仕事を配置される。現場がキリキリ舞いなのだから仕方ない。無能者はどうかというと、ある程度の仕事をさせ最短で契約解除される。

 

営業マンからの視点だと無能者は仕事を失うということになるが、きちっとしたマネジメントができない会社の技術的にも不毛な、エイヤッで作るシステムで得られるテックスキルは大したものではないし、大量の仕事をこなして得られる信頼とやらはどれほどの価値があるだろうか。もし不況が来ればその信頼は生きてくる。だが不況以外の状況ではおそらく摩耗するだけだ。違う仕事を探したほうがいい。

 

このきっちりマネジメントしていないし、そもそも納期がひどい設定の現場というのは、技術的に進歩できる機会も限られており、精神は消耗し時間外労働を要請され、それが故に、束縛される方が損、信頼を得る方が辛いという複雑怪奇な状況を生み出す。

 

体調が悪くて休みます、取り組んでみましたが思った以上に時間がかかりそうです、XXという仕様もれがあるのでは?、〇〇はできそうにありません、git pushしました(バグのオンパレード)。そういったPMから見れば絶望的な振る舞いを堂々とする。怒られが発生しない程度に道化を演じ続け、サボっていると気取られないように、ごまかす。現場はデスマーチが続くが、終わりが見えている僕は気楽で、それでいて金はもらえる。彼らは怒るだけの気力も、完全リスケするだけの胆力も責任を負う力もないし、体調不良を疑う意味もないし、このデスマじゃ不完全だったりバグがあったりしても仕方ないよな、と思うようになる。

 

そもそもが納期設定もメンバー集めも、基本設計も失敗しているのに誰のせいとかできないし。技術的スマートさとは程遠いまま、やっつけることだけが主眼となってて、それをしないといけないのは会社経営をしているからで、個人で見ればプロジェクトが失敗してくれてもいいし、おさらばすれば存在しているかもわからなくなるシュレディンガーのクソコードである。

 

不誠実だよな。それってどうなん?と思わなくもない。だけど個人レベルの最適解として、最初に契約をこぎつけてしまえば、後は無能として振る舞った方が得するケースがある、というのは事実なのだ。それは何故かというと、経営者が不誠実な納期や安請け合いをすることによって、働き手の可能性やスキルアップ、健全な暮らしを奪ったために、個人では何もしない戦法が有効になってしまうということなのだ。

 

一生懸命頑張ればインセンティブがあるという運営手法をとらないため、人手をひたすら集めても、集められた人はサボった方が短期的利益を得られて良い、という地獄のような環境ができあがる。

 

そういう疲弊しきってどうしようもないね、という空気感の現場ではソーシャルハックのテクニックが本当に生きる。設計者も不備があって延々とチェックしているし、プログラマは質問事項を投げまくってはわからないなりに強引に担当分をコーディングすることに必死だ。皆が皆時間いっぱいまで働いている。僕は最低限の仕事だけをこなし、適度に質問を投げ、できる限り担当分の納期を先延ばししつつも、上手く別の人に押し付け、最大限の残業代を受け取りつつ、抜け出す準備をする。

 

精神的にも、体力的にも、金銭的にも得をする。無報告だと叩かれるが、適度に進捗具合を報告し、質問をちょくちょく投げてはバックログを更新していれば、彼らの視界には必死にコーディングする僕の姿が想像される。勤怠時間を遅くに切っていれば、ハードワーカーであるという数字上の記録だけが残る。そうやって銃弾飛び交う戦場の塹壕でただ戦争が終わるのを祈っている。

 

でもこれはね、仕事を一生懸命にするインセンティブを与えない会社運営をしている経営者が悪いんですよ。そうやって人手さえ集めりゃなんとかなるでしょとやっている経営者が悪いんですよ。すべての負担を末端に回すからなんですよ。

 

戦場でも末端兵士に冷たくした上官は後ろから撃たれたらしい。

だから僕は遠慮なく撃つ。