【技術的負債】開発者が「保守しないとヤバい」と言い出したときには、もうギリギリを通り越して闇金に借金してるので、早めに反応を返した方がいい
はじめに
対象
- ITエンジニアに保守作業を提案されたが、先送りにしている責任者向け。
あくまで技術的な優先度や見積も合わせて提示するという、最低限ができている場合の保守になります。不必要なリファクタリングや、開発者の個人的な嗜好による修正は含みません。
例え話多めなので、苦手な方はUターンしてください。
技術的破産を考えたことはあるか
技術的負債について、詳しくは解説しません。
計画的な技術的負債
リアルの世界で借金と聞くとネガティブなイメージが強いです。では、こう言いかえてみましょう。ローンです。住宅ローン・車のローン・携帯電話の分割払い。購入する際、今後の自分の収入と金額とを照らし合わせ、無理のない返済計画を立てる筈です。
そう、負債とはそもそも返済する義務のある借金に対して使う言葉です。もしもある機能の実装中に負債を背負うと決めたなら、具体的な返済の時期とコストも計算に入れる必要があります。
しかし技術的負債は利用額に上限のないクレジットカードのようなものです。目に見えないばかりか、収入を超えた利用も可能で、リボ払いも併用すれば無敵でしょう。その先に何が待っているかは、リアルなら考えるまでもありませんね。
無計画な技術的負債
さて、いよいよ首が回らなくなった開発者は闇金に手を出します。10分3割とまでいかずとも、トイチくらいの高金利です。実装するときにかなりの無理をします。その場しのぎのツギハギのような改修で、後先なんて考えられてません。
多くのネガティブな文脈で用いられる技術的負債は、こちらの無計画な技術的負債に分類されます。なぜなら計画的に返済できている限り、その負債は問題として表面化しません。何らかの事故や隠れ負債の発見により、返済期日までに返せなくなったとき初めて問題になります。
借りた金を返せないなら、取れる手段は限られています。現実の借金と同じです。返済方法を調整して何とか目処を付けるか、自己破産するか。ゲームの世界なら踏み倒しても家の増築ができないだけで住むかもしれませんが、開発の現場では開発者がネズミのように逃げ出します。
プロジェクトがもし4人の家族だったら
- 母
- 借金の返済に頭を抱え、家計簿・帳簿とにらめっこする日々。
- 技術的負債に危機感を持つ中堅開発者。保守の重要性を認識しているが、どうしようもない現実に疲れている。
- 父
- 小さな町工場の社長で、自転車操業状態で何とか切り盛りしている。
- 新規開発や機能改修を優先せざるを得ず、保守作業に予算も人も回せない責任者。
- 兄
- 大学進学を考えていて、最近アルバイトを始めて、家にいる時間が減った。
- 既に水面下で転職活動を始めた2年目開発者。スキルアップの限界を感じて焦っている。
- 弟
- 家計のことも将来のことも分からず、親の言うとおりに過ごしている。
- プロジェクトの状況がよく分からない新卒エンジニア。教えられたとおりに手を動かすが、成長している実感がない。
保守しないとヤバい状態
母は不安で一杯です。既に借金は返済できる金額を超え、兄弟の学費どころか日々の生活費すら捻出できるか怪しいです。この状況は開発者が置かれている状況そのものです。技術的負債が大きすぎて返済の目処が立ちません。また機能改修でも負債が工数を圧迫、教育コストも払えません。
父も頑張ってはいますが、自転車操業状態です。技術的負債を無計画に積み、新しい機能をどんどんリリースするしかありません。保守コストや教育コストを払う余裕がなく、いつ破綻してもおかしくない状態が続いています。
兄と弟は、そんな親達の姿を見て育ちました。
状況を理解している兄はとっとと家を出ることを考え、バイトを始めています。誰が負債だらけの家業を継ぎたいと思うでしょうか。開発者はそんなプロジェクトを目の当たりにすると、人知れず転職活動を始めてしまいます。
弟はまだ何が起きているか、なんとなくでしか分かりません。それは丁度、プロジェクトに配属されたばかりの新卒エンジニアのようです。チームに余裕がないため、十分に技術的スキルを教わることができません。
このままでは家族が静かに崩壊していく未来しか見えません。プロジェクトがまだ回っているからといって、安心していてはいけないのです。
何もしないで至る結末
母は耐えきれず、実家へ戻り療養です。ギリギリまで粘って改修してくれるとは思いますが、やがて限界は来てしまいます。それもある日突然。程度は大小ありますが、病んでそのまま退場するITエンジニアもいます。
兄は実力を付けて家を出ます。開発者でいえば転職ですね。
出戻り採用の門戸を開いたとして、果たして彼・彼女らは戻ってきてくれるでしょうか?
父もとうとう首が回らなくなり、こっそり夜逃げしてしまいます。連帯保証人に連絡が行き、残された弟の生活も大きく変わります。プロジェクトの場合の連帯保証人は、他部署や企業そのものですから、人員をかき集めての火消し作業が始まります。
借金は勝手に消えません。連帯保証人と弟はマグロ漁船に乗せられることになるでしょう。つまり炎上プロジェクトです。ここまでいくと企業全体を巻き込んだ一大事へと発展します。
おわりに
書いていてものすごく世知辛い、救いのない気持ちになりました。よく「就職活動は恋愛に似ている」と言われますが、この例えは救われなさすぎです。
支払いを肩代わりすることになった人が、全く関係ない他部署のITエンジニアだったり、新卒で何も分かってなくて対応に駆り出されるのも、再現度が高すぎませんか。
最初はブランド物を買い漁る母や、ギャンブル狂いの父などの路線も考えたのですが。そんな自分勝手な責任者はごく一部で(いないとは言いませんが)、実際は売れなければというプレッシャーと戦いながら、必死に働いている方のが圧倒的に多いと思ったもので。
結局のところ、「負債を返済可能な金額に抑えながら、プロジェクトを軌道に乗せる」という当たり前のようで、いちばん難しいことをやるしかない。それができたら、苦労はしないんですけれど。
Discussion