案件をざっと見て、「アーキテクト」「メインプログラマ」募集とか書かれてると、
「今までの人はどうしたん?」
と考えてしまって、こう、苦いものが込み上げてくる。
技術者が逃げ出し、投げ出されたシステム……。
「とても困ってるらしいからヘルプで入って。
明日からでも」
と言われて入った現場。
1ヶ月もしないうちにそれまで携わっていた技術者が全員退社完了。
「明日で出社終わりなんだ」
「は? 何? その晴々とした表情?」
実は現場に入る前に大方の技術者が離脱済み。
社内で大バトルが発生していたと後で聞く。
週に2、3回障害が発生。
データが消えてる……。
プログラムは関数型っぽく組まれた暗黙のなんとかが多用されたスパゲッティ。
一箇所でも置き換えようとしたら、どこに影響が及ぶかわからない。
取り敢えずユーザーが殺到しなければ障害は発生しないから。
でも殺到したら、処理遅延でアババババ……。
ほぼリアルタイムで返さなきゃならないレスポンスが3時間後とか、笑える。
ユーザーからクレームの嵐。
笑っちゃいけないけど、笑うしかない。
テストはあるじゃん、と思ったらデータ設定してモック呼び出すところだけの、実質何もしてないテストばっかり。
モックも仕様の変更に追随してない。
そのモックが変な依存関係持っていて、これまた一箇所の変更があちこちに波及する。
それが大量にあって、作り直す時間は、ない。
そもそも仕様がわからん。
「うちは最新の関数型プログラムで作ってるので」
とか嫌味ったらしく言い放った元責任者、関数型プログラムなのはフォーマットだけで、中身がVB6時代かよっていう感じの行き当たりばったりのツギハギだらけで、バックプレッシャー制御皆無だから負荷が高くなるとアババババ……。
うん、これか……。
でも直しようがない。
なんだこのライブラリ? 聞いたことないな?
みたいなのが混じって、大量の「あたらし目の、関数型マンセーライブラリ」が満載。
なのはいいんだけど、開発放棄されて2年近くのもあれば、途中から方針変更されて仲違いしているようなライブラリもありーの、更新スピードの違いから参照ライブラリのバージョンが合わせられねぇとか。
「クライアントのセキュリティ監査ですけど、なんですかこの古いバージョンのライブラリは?」
なんすかね〜?
みたいな現場はもうごめんではあるのだが、困ってる現場もあるのだろうな、と思うと、ヘルプのために地獄に舞い戻るか……、と思わないではない。