PMの仕事内容とは?必要なスキルや目指す方法についても解説!
「PMの仕事内容ってなんだろう。SEとは何が違うの?」本記事ではこのような疑問を解決します。PMはシステム開発において重要な役割を担うポジションとなります。しかしIT企業に勤めた経験がない人は、PMが普段どんな仕事を行っているのかイメージが掴みにくいのではないでしょうか。そこで本記事ではシステム開発の各工程においてPMがどのように働いているのか仕事内容とともに詳しく解説します。くわえて、PMに求められるスキルやなり方についても解説しますので、これからPMを目指す方にもぜひ読んで欲しいと思います。本記事を読むことで、PMに関する基礎的なことは一通りわかるはずです。
PMとは?
PMはプロジェクトマネージャーの略称で、システム開発の1つのプロジェクトを管理する役割を担います。具体的には、以下のようなことを行います。
- プロジェクトの計画立案
- クライアントとの打ち合わせ
- 予算管理
- 開発スケジュール管理
- チームメンバーをモチベーション管理
PMはシステム開発のリーダーとして、プログラマーやSEを引っ張っていく必要があります。PMには高いコミュニケーション能力とリーダーシップが求められることになります。PMの能力によって最終的な制作物の質が大きく変わってくるため、重要なポジションと言えます。そのためPMは基本的に、プログラマーやSEとしてシステム開発経験を積んだ人が担うことが多いです。
PMとSEの違い
PMとSEはどちらもシステム開発の仕事ですが、仕事内容が全く異なります。PMはSEよりも上の立場であり、基本的にSEはPMの指示に従って動くことになります。SEはシステムの設計を行ったり、クライアントとシステムについて打ち合わせを行ったりすることはありますが、プロジェクト全体を統治することはありません。対してPMはプロジェクト全体を見渡して、スケジュール管理や開発の細かい調整を行っていく必要があります。このように、PMとSEは仕事内容が異なることを覚えておきましょう。ただし、小規模な会社の場合、PMとSEにはっきりと分けられていることは少なく、PMもSEの仕事の一部を手伝うこともあるため、注意が必要です。
PMの仕事内容
PMの具体的な仕事内容について解説していきます。システム開発は以下のような流れで行うのが基本です。
- 要件定義
- 設計
- プログラミング
- テスト
1つ1つの工程の中で、PMがどのように働いているかを見ていきましょう。
要件定義
システム開発を行う場合、まずはどんなアプリやWebサイトにするか、クライアントと打ち合わせを行います。打ち合わせ時に、PMはクライアントからシステム開発の予算やスケジュールなどの要望をヒアリングを行いますが、要望通り開発することが難しい場合もあります。そんな場合は、PMが予算の増加やスケジュールの延長を求める必要があります。もちろん、クライアントから断られてしまう可能性もあるため、PMは上手く交渉しクライアントを説得します。このように、要件定義段階ではPMはクライアントと予算やスケジュールの調整を行います。
設計
どんなシステムを作るか決まったら、続いて設計のフェーズへと入ります。設計フェーズではSEが具体的にどんなシステムを作成するか、設計書に記述していきます。PMはSEが記述した設計書を確認し、改善点を指摘したりクライアントの要望を満たしているか調べたりする必要があります。また、SEのモチベーション管理やスケジュール管理もPMが行います。このように、設計フェーズではPMはSEのマネジメントを行います。
プログラミング
システムの設計が完了したら、いよいよ実際にシステム開発を行うフェーズに入ります。このフェーズではプログラマーが設計書通りにプログラミングを行います。ここでもPMはプログラマーのモチベーション管理やスケジュール管理を行う必要があります。また、この段階に入ってクライアントから「この仕様は変更したい」と要望が来る場合があります。そのときはプログラマーに連絡し、今からでも作り直せるか確認を取り、間に合わないと判断した場合はスケジュールの調整やクライアントと交渉をします。このように、PMはクライアントとチームメンバー双方の状況を見つつ、プロジェクトを円滑に回せるように管理しています。
テスト
開発が完了したら、アプリやWebサイトが仕様通りに動くかテストを行います。テストはテストエンジニアが行ったり、プロジェクトメンバー全員で行ったりします。PMはテスト状況を把握し、もし問題点が見つかった場合、納期前に修正ができるか確認を取ります。テスト作業が終わったらリリースを行います。これで1つのプロジェクトが完了となり、PMの仕事も一段落となります。
PMに必要なスキル
ここまでPMの仕事内容について解説してきました。PMはプロジェクトの管理を行う仕事ということがお分かり頂けたかと思います。ここからは、そんなPMの仕事をこなすために必要なスキルを紹介します。PMに必要なスキルは大きく分けて以下の4つです。
- リーダーシップ
- 管理能力
- 問題解決能力
- ビジネススキル
リーダーシップ
PMにまず求められるのはリーダーシップ力です。PMはプログラマーやSEの作業内容を把握し、的確に指示を出さなくてはいけません。また、PMはプロジェクトメンバーとコミュニケーションを図り、問題点はないか作業は順調に進んでいるか、確認する必要があります。予定通りに進んでいなかった場合、メンバーのモチベーションアップを図るのもPMの仕事です。もしPMにリーダーシップ力がないと、チームが1つに纏まらず、作成物の質も落ちてしまいます。PMに就くにはまずリーダーシップが必要なことを覚えておきましょう。
管理能力
PMは管理能力も必要になります。1つのプロジェクトにかかる開発日数や予算を予め予測し、クライアントと調整する必要があります。そして、決められたスケジュールに合わせて、開発が進むようにプロジェクトを管理していきます。もし、開発がスケジュール内に間に合いそうにない場合、スケジュール変更をする判断を下すことも必要です。優秀なPMは少ない予算と工数でいかにシステム開発が行えるか考え、的確にスケジュール管理を行います。このようにPMはスケジュールや予算を管理する役割も担います。
問題解決能力
PMには問題解決能力も必要です。システム開発は必ずしも予定通りにはいきません。開発メンバーが足りず納期に間に合わなかったり、クライアントが仕様変更を要求してきたり、予定を変更さぜるを得ない事態が起きることが多いです。こういう問題発生時にも状況を的確に捉え、最適な解決策を考える必要があります。たとえば、プロジェクトメンバーを増員したり、クライアントの要求を上手く断ったり、といった解決方法があります。このようにPMは問題発生時にも落ち着いて解決策を練ることも必要になります。
ビジネススキル
もう1つPMに必要なものに、ビジネススキルがあります。PMはプロジェクト開始時にクライアントと打ち合わせを行いますが、クライアントはシステム開発やIT技術について詳しくないことが多いため、わかりやすく開発工程やIT業界の動向を説明する必要があります。くわえて、クライアントが開発を依頼してくれるように、自社のスキルレベルをアピールしたり、少ない予算で開発できることを示したりし、上手く交渉しなくはいけません。このようにPMはビジネスマンとしての総合的な力も必要と言えるのです。
PMになる方法
ここまで読んで、PMの仕事に憧れを抱いた方もいるのではないかと思います。しかしPMはなりたいからといってすぐになれる職業ではありません。PMになるには以下のように段階を踏んでいく必要があります。
- まずはプログラマーとして働く
- SEとして上流工程の経験を積む
- 小規模プロジェクトのマネジメント経験を積む
まずはプログラマーとして働く
PMになるにはまずはプログラマーとしてIT企業で働く必要があります。プログラマーになれば、プログラミングやテスト作業といった、システム開発における下流工程の経験を積むことができます。プログラマーは人手不足に陥っているということもあり、多くのIT企業が求人を出しています。最終的にPMになることを目指すなら、プログラマー求人に応募するのが第一歩となります。
SEとして上流工程の経験を積む
プログラマーとして数年働いたら、次はSEとして上流工程の経験を積みます。SEはクライアントとの打ち合わせに参加したり、システムの設計を考える仕事を行ったりします。SEになればプログラマーよりもPMに近いところで働けるようになります。
小規模プロジェクトのマネジメント経験を積む
SEとして実績を残せれば、やがて小規模なプロジェクトのマネジメントを任されるかもしれません。最初は小規模なプロジェクトで徐々に経験を積んでいきます。マネジメント力が高いことを証明できれば、PMに昇格できる可能性が高まります。
まとめ
本記事ではPMの仕事内容について解説しました。PMがどんな仕事を行っているのか、どんなスキルが必要なのかおわかり頂けたでしょうか。PMはリーダーシップ力や管理能力を高いレベルで求められるため、就くことは容易ではありません。まずは、プログラマーやSEとして開発経験を積み、徐々にマネジメントについても学んでいく必要があります。PMを目指す場合は、必要なスキルを意識し、それらを習得するにはどのように成長していけば良いかを考えるのが重要です。本記事がPMを目指す方にとって有意義なものとなれれば幸いです。