システム開発における技術者の役割
システム開発には、多くの人たちが関わります。
プログラマーとシステムエンジニアの違い
プロジェクトマネージャーの役割とは何か?
別の切り口では、アプリケーション開発者、インフラ、
データ管理、テスター、運用など。
この違いを見ていくことで、システム開発やIT業界における、
あなたの適正、活躍の場を見つけましょう。
また、IT業界に入り、プログラミングが苦手、またはあまり楽しめないという方にも、あなたが活躍する場所(役割)があるはずです。
そのことを知るために読んでいただきたい。
関連記事です。
ここでは特にシステム(アプリ)開発者に焦点をあてて、
プログラマー、システムエンジニア、プロジェクトマネージャーの役割の違いを見ていきましょう。
プログラマーの役割
システム開発会社に入社するとプログラマーから始まります。
※大手SIerは異なります。詳しくは以下を見てください。
プログラマーはどのような仕事をするのでしょうか?
・詳細設計
・プログラミング
・テスト
おそらくこの内容くらいは、他の媒体でも載っていると思います。
では、この割合はどうでしょうか?
IT業界未経験の方からすると、プログラマーはプログラミングの時間が一番多いと思われるかと思います。
しかし、現実は違います。
システム開発全体のスケジュールにおいて、プログラミングの期間は1/4程度。もっと少ない場合も多い。
システム開発の工程には、
要件定義、基本設計、詳細設計、プログラミング、
結合テスト、システムテスト、ユーザー(運用)テスト、などがあります。
この工程数からしても、プログラミングの期間が短いことが分かります。
最近はアジャイルなどの開発手法も盛んです。
また、テストやビルド(バグ解析&実行ファイル生成)の自動化などの効率化も図られています。
とはいえ、プログラミングばかりがプログラマーの作業とまでには至りません。
顧客の求めるシステムを開発するため
システムエンジニアが決めた設計に基づいて
プログラミングをする。
これがプログラマーの仕事です。
プログラマーはすばらしい職業です。
何せ、プログラミングができなければシステムは動かないのですから。
最近、フリーエンジニアが増えてきました。
フリーになるためにもプログラミングは必須能力と言えるでしょう。
あのホリエモンさんも、昔は自らプログラミングをしていました。
プログラマーに求められる適正
プログラマーとして適正のある人は、以下の通りです。
・ものづくりが好き
・プログラミングをしている時間が憩いである
・技術力への探求心がある
その名の通り、プログラミングが好きな人が向いています。
但し、プログラミング期間はシステム開発全体からみると短い。
打ち合わせも意外と多い。
システムエンジニアとの仕様理解や問い合わせ、進捗報告、朝会など。
コミュニケーションをとることが多い。
人と話すのは極端に苦手。
という人はプログラマーも向いていないかもしれません。
意外だったでしょうか?
システムエンジニアの役割
プログラマーを数年経験すると、システムエンジニアの仕事をするようになります。
システムエンジニアの主な仕事は以下の通りです。
・顧客との要件まとめ
・システムの基本設計(外部設計)
プロジェクトマネージャーと分担して以下のことも担当する場合も。
・システム開発規模の見積り
・スケジュール作成
・進捗管理
顧客の要望に合うシステムを開発できるのか?
それは全てシステムエンジニアの力量にかかっています。
顧客は自分がほしいシステムを言葉で具現化はできません。
そこでシステムのプロであるエンジニアの登場です。
システムエンジニアが顧客とコミュニケーションを上手にとり、言葉の裏まで読み取って設計をする。
適正な技術を選択し、システムデザインを行う。
まさにシステムを構築する醍醐味は、システムエンジニアにあると言えるでしょう。
もちろん、これらのことを全て一人でするわけではありません。
各エンジニアで得意分野をもとに作業を分担します。
システムエンジニアに求められる適正
システムエンジニアとして適正のある人は、以下の通りです。
・コミュニケーション能力(会話が好き)
・高い技術力(知識量)
・仕様をまとめあげる能力
・ドキュメント力
・顧客の業務知識
初級(見習い)システムエンジニアもいますから
上記全てが必須ではありません。
プロジェクト規模が小さければ
プロジェクトリーダーよりの役割も担当します。
また、自ら設計したものをプログラマーとして
プログラミングする場合もあります。
プロジェクトマネージャーの役割
プロジェクトマネージャーの主な仕事は以下の通りです。
・スケジューリング
・プロジェクト費用の調整・交渉
・要員の確保
・要員の管理
・進捗管理
・仕様変更対応
・顧客との交渉
これでも書き足りないくらいです。
プロジェクトマネージャーは様々な仕事があるため、多忙になりがちです。
責任も大きく、プロジェクトマネージャーにシステム開発の命運が握られています。
それだけに、プロジェクト成功の暁には大いなる達成感と成長が得られます。
暁(あかつき)といったのは大げさではなく、プロジェクトの多くは途中で問題が起こりがちです。
先が見えず暗闇の中、ということもあります。
問題には様々な原因があり、それを一つ毎に解決しなければなりません。
精神的なタフさが求められる場面もあります。
プロジェクトマネージャーに求められる適正
プロジェクトマネージャーとして適正のある人は、以下の通りです。
・計画性
・交渉力
・コミュニケーション能力
・システム全般の知識
・チーム掌握力
すべてを兼ね備えたプロジェクトマネージャーがどれほどいるでしょうか?できるプロジェクトマネージャーほど引く手あまたです。
まとめ
この業界はよく建築業に例えられます。
システムエンジニアが建築士
プログラマーが大工さん
プロジェクトマネージャーはこれらを統括する取りまとめ役
といったところでしょうか。
ある家を建てる際、建築士が顧客の要望を聞いて、設計をする。
大工さんたちが設計書をもとに一斉に家を建てる。
それを監督する取りまとめ役がいる。
私はたくさんの技術者を見る中で、強く思っていることがあります。
プログラマーとして活躍できなくても、
システムエンジニアとして活躍できることがある。
また、システムエンジニアとして一流でなくても
プロジェクトマネージャーに向いていた。
こういうことはたくさんあります。
また別の機会で述べますが、コンサルやPMO
テスター、オペレーター、情シスなど
もっと多くの役割の人が必要です。
私が言いたいのは、
プログラマーでうまくいかないからという理由で
簡単にIT業界をあきらめないでほしいということです。
ここまで見ていただいた
プログラマー、システムエンジニア、プロジェクトマネージャー
全てで評価がよい人はたまにいても、それぞれの役割に適正がある以上
人にはどこかで輝ける役割があるということです。
IT業界は、これから社会にますます必要とされるすばらしい業種です。
ぜひ、皆さんもIT業界で活躍してくれることを期待します。
IT業界であなたは何がしたいのか?
ここまで読んでいただいてありがとうございます。
IT業界は様々な役割の人が携わっています。
会社に就職した後に「こんなことをやりたいのではなかった」
と言ってみても遅いのです。
会社選びの時から、「あなたはIT業界で何をしたいのか?」
これを明確にしましょう。
「何をしたいのか」明確になれば、会社選びの軸ができます。
そのことについて述べた記事を作成しました。
それでは。
この記事が気に入ったらサポートをしてみませんか?