はてな系のブログはエンジニアが多いせいかSierがクソとか書いてる人が多い。
そしてやたらと攻撃的な論調も目につく。
実際検索するとまぁそこそこある。何が彼らをそこまで攻撃的にさせたのだろう。
と疑問に思ったので考えてみた。
まぁ実際自分もクソだと思うことはあるから。
意見その1(技術が無いやつが設計やら見積もりしてるところがクソ)
多分実装経験の無い新人~3年目くらいのプロパー社員の見積り案件や設計書を実装する立場にいたプログラマの悲哀なんだろうなと思える。(一番割を食う立場なので)
これは自分もクソだと思う。
見積もりはアプリケーションにしても基盤にしても、
- プログラムや仕様書等の成果物に対して難易度、作業量とかそれっぽい根拠を持たせて、
- お客さんのお財布事情やシステム投資への考え、効果等を見据えて、
- 大体このくらいなら出してもらえるかなとか、開発規模に比べて作業量と予算が足りないから見送ろうか
とか考えながらやって、案件を作ってる。
その根拠足り得る難易度や作業量ってのは実装経験が無いと見積もり結果が誤差レベルでは済まないケースもある。
基本前例の見積もり等も参考にするし、設計するにしても普通その辺の勘所がなかったら経験豊富なベテランなんかにヒアリングするもんだけど、クソとか言ってる人はきっとそうした動きはなかったんだろうとも思う。
設計になると「何を作るか」よりも「どうやって作るか」ってところにウェイトが移っていく。その時にどうやって作るかさっぱりわからん状態で細部を詰めていくのは致命的すぎる。
ただ、この意見の問題の本質は上記のような人間が設計やら見積もりやってるのがクソというより
そういう人が設計やら見積もりをやらざるを得ない状態にあって、その下に付く人のお仕事は実装Onlyと決まっているということにある。
この辺は
- IT業界特有の多重下受け構造とか、
- 単に紙に書いてあることの実装しかできないような人間(またはそれすら厳しい)をSEとか言って売ってくる派遣業界の悪習とか
- 会社間の契約の話とか
いろんな問題が絡み合ってるんだろうなと。
まぁ多重受けに関してはまともな会社なら2次受け以降は使わないと思うんだけど。善管注意義務果たせないし。管理できんし。
この問題に巻き込まれないためには自分が設計やら見積もりに携われる立場に就くことが一番楽なんじゃないですかね。
本人がしっかり実装部分の努めを果たしててもこんなのでデスマーチに巻き込まれたりしたら気の毒だし。
意見その2(人月見積がクソ)
これは微妙。
SIer業界のビジネスモデルはなんだかんだ言って大半の会社がウォーターフォール型のシステム開発プロセスに基づき、
SE1ヶ月働いたら○○万円、このシステム作るには作業量このくらいでSEが×人必要で、△ヶ月かかるから□□万円!
って形で成り立ってる。
まぁこれがベストだとは自分も思わないけど、
この形だとまとめてお金をもらえるし、
1個1個の作業をこと細かにお客さんに説明しなくてもいいというメリットがある。
(大きい部分とか効果からフォーカスを当てるので、細部の説明を迫られないというほうが正しいか)
このメリットは大きい。
で、人月がクソとかいう意見の対案として
- アジャイルに切り替えるべき
とか
- 作業に対する対価を受け取るべき
という意見も見たことあったけど、その作業に対する対価の根拠をお客さまに理解してもらうことが一番難しい。
作業の内容説明するのかどうしたいのかは見えなかったが、結局人月見積と同じになりそうな気がする。
うちの会社はSE1人いくらです。っていうのはなんだかんだで分かりやすいから。
もちろんアジャイルにもメリットはあるけど大規模システム開発ならにはあまりアジャイルが向いてると思えない。
要件が定まってなくて小規模とかならまだ分かるけど、結局見積をどうするかという解にはなっていない。
また、結局費用請求とか見積の問題は付いて回る。
これだけ苦労したんで!って言って実績作業量ベースでお客さんに費用請求って、
言い値で金くれって言ってるようなもんで相当難しい。
人月で動くのが嫌なら保守とかメンテをメインにやってる会社にいけばいいんでないかな。
多分ここもメンテ対応件数とか作業量じゃなくて、年間契約いくらみたいな形で予算取ってるんでないかと思うけど。
まとめ
業界の慣習やら構造的な問題やらいろんなものが絡み合っているので、
それなりに業務内容に自由度を高い会社に入ったほうがいいと思う。
でないと本当にクソな目に遭います。
まぁ理想だけ見てたらホントクソだなと思うことはいっぱいあります。
ただ他の業界はどうなんだろうって気になる。
入らなくても肌感覚で「あ、ここ無理だわ」って感じる業界もあるので、クソ通り越してもう言葉が出なさそう。
せめてどうやれば自分がクソだと思わない環境で働けるかと考えたほうが建設的かと思います。(難しいけどね)