今社会人になって4社目(フリーランスだから結構転々としてる)ですが、いろんな開発体制の会社※を見てきたので開発体制を振り返ろうと思います。
これ見てエンジニア目指す人はどの業種がいいか見分けられると嬉しいな😃
※現場数を書くとキリがないので印象に残ったやつだけ
案件
官公庁の給与システム
エンジニア数
8人〜12人ぐらいだっけな?
技術
こぼる
関連人物プライオリティ
顧客 >= 開発
プライオリティ理由
基本顧客次第だが、ちょこっと直すのにエゲつい金額がかかるので、開発もコントロール出来る
見積もり手法
プログラムステップ法
開発モデル
開発モデル詳細
人事院勧告によって仕様が変わる。
↓
どこがどう変わったか顧客が把握してるので教えてもらって見積り(ステップ法)
↓
顧客が予算と照らし合わせて再見積り
↓
基本設計書、詳細設計書作成
↓
基本設計書、顧客レビュー(大量の印刷物とともに)
↓
詳細設計をもとに開発
↓
コードレビュー(印刷したものをマーカーで引く)
↓
Done(繰り返し)
↓
単体テスト
↓
システムテスト仕様書作成
↓
システムテスト仕様書顧客レビュー(大量の印刷物とともに)
↓
システムテスト(もちろんエビデンスもね)
↓
システムテスト顧客レビュー(大量の印刷物とともに)
↓
Done
↓
リリース日設定
↓
顧客、開発スケジュール調整
↓
Done
稼働
月50〜80時間残業(稼働が一番高いとき、普段は月10)
成果物
プログラム
ドキュメント
エビデンス
テスト結果
最終報告
得た知見
社会保険の知識(標準報酬げつがく!)
こぼる
やりがい
技術を求めたい人は最悪。業務知識を求めたい人はそこそこ。
考察
人事院勧告によって要件定義がほぼないので確実でより正確なのは◎。仕様を把握して顧客と認識合わせ出来るなら即戦力。こぼるなので、詳細設計とほぼ同じコード、さらに依存するコードとかほぼ皆無なので問題が起きにくい。ただし、コード量は多い(ここら辺はステップ法と関連するところなのでビジネス的にこの設計になっている)。COBOL、JCLといったどこでも使えなさそうな技術をやり続けるのが辛い。なので汎用性のある業務知識に全振りする人多数(9.9割それ)稼働は高いが、SIerは残業手当が多いので、そこまで辛そうにしてる人は少ない(残業100時間以下の話)プロジェクトは必ず終わるので達成感があり、チーム仲も良い。