開発をするにはどんな人が必要で、どうキャリアップしていくのか？

# この記事で伝えたいこと
最低でも、下記の三つの役割があることを意識して、自分のキャリアアップに活かそう！！

プロジェクトで開発を進めるとき、どんな役割をする人がいないといけないのか
僕が経験したプロジェクトだとこの3つです
* タスクを作る人　　　→PM（プロジェクト・マネージャー）
* タスクを分配する人　→PL（プロジェクト・リーダー）
* タスクを実行する人　→メンバー

# この記事の対象者
* マネジメントって何するか雰囲気だけでも知りたい
* どうやってキャリアップしていけばいいかわからない
* 開発初心者で、どのようにタスクが発生するのか気になった
* 開発に携わっているが、自分に与えられている役割を知りたい

# 筆者について
こんにちは！！ おさだと申します！
初めてQiitaで記事を書きます。これからよろしくお願いします。

私のことを少しだけ書くと、
* 立場としてはPLです
* PLとして感じたキャリアアップtipsについて書きます

# この記事での前提：プロジェクトが進む = タスクを消化する
IT業界でプロジェクトが組まれるときは、大抵、"〇〇システム・サービスの開発・運用"をプロジェクトの目的とすることが多いですが、これらに必要な1つ1つの業務を、この記事では「タスク」と言うことにします。

タスクの具体例：
* 設計書を作る
* 説明資料を作る
* 管理するための共有フォルダを作る
* ある1つの機能をコーディングする
など、たくさんあります。

タスクは大小さまざまな単位で、ものによっては、1人で半日あれば終わるものもあります。

結局、 **『プロジェクトの実態は、タスクの集まり』** と言い換えることができると思います。

# プロジェクトにはどんな人が必要なのか

プロジェクトで開発をする上でどんな役職があるのか、私なりの解釈で解説します
プロジェクトに関わる人は色々な立場がありますが、中核をなす人は、以下の3つの役割です。

* PM（プロジェクト・マネジャー）：決定したプロジェクト全体を管理し、責任を負う人物
* PL（プロジェクト・リーダー）：現場レベルでプロジェクトの進行をリードする人物
* メンバー（プロジェクト・チーム・メンバー）：プロジェクト・チーム内で特定の役割を持った人物

以下、詳細です


## プロジェクト・マネージャー（PM）
"決定したプロジェクト全体を管理し、責任を負う人物"です。

前提の「プロジェクトはタスクの集まりとする」より、
"プロジェクト全体を管理"とは、タスクを管理することであり、
PMに最も求められる責任は、ズバリ **『タスクを漏らさず作ることと、タスクを消化する環境を作ること』** です！！

マスタースケジュールをひき、いつまでに何をしなければならないのか、一個一個作っていき、これらを消化するためにどんなメンバーが必要か考え、タスクの終了を見届け、終了宣言します。

PMがタスクを漏らすと、大ごとになります。
さらに、作ったタスクが胆をついていないと、プロジェクトを路頭に迷わせます。

そう考えると、PMの責任の重さがわかってきませんか？

## プロジェクト・リーダー（PL)
"現場レベルでプロジェクトの進行をリードする人物"です。
つまり、PMとメンバーの間にいて、タスクの消化をリードする人ですね。

PLはPMが作ったタスクを受け取り、中身を紐解いて、1つ1つ適切にメンバーに渡すのです。
タスクの優先度や着手順番を決定し（PMがすることも多い）、
メンバーがタスクを理解していなかったら解説し、
間違った方向に進めていたら軌道修正し、
大きなプロジェクトではPLが細かく期限設定をすることもあります。


## メンバー
PMが作ったタスクを割り当てられ、消化する人です。
消化するために、時にはコアな専門知識が必要になってきますね。

ですが、タスクの終了を見届けるのはPMの責任ですから、
必ず最後はPMに終了宣言をもらう必要があることに注意です。


# キャリアアップしていくにはどうすればいいか

以降は、今まで解説してきた役割を把握した上で、少しでも早くキャリアアップのチャンスを獲得できるように私の考えを書いていきます。

## メンバー → PL　になるには？

①条件
まず、与えられた役割は真っ当しておきましょう。
そのため必須なのは **メンバーとしてタスクを確実に消化できる** ことですね。
振られたタスクはどうにかして打ち返せるという信用を獲得しましょう。
でもこれだけだと、まだメンバーのままです。

②メンバーからPLになるのをスピードアップ
「この人にリーダーを任せてみよう」と思わせることが必要です。
**他のメンバーの特徴を把握し、どのようにタスクを回すべきかを自分なりに提案できる** ことをアピールしましょう。

③そのためにできる施策
自分のタスクだけではなく、他の人のタスクにも興味を持って、「自分だったらこうやって消化するな」とか「そのタスクよりも、こっちのタスクの方が先じゃないか？」とか考えてみましょう。
で、自分の考えができたら、PLと答え合わせをしてみてください。これをするだけで、PLは助かるし、周りが見えていることをアピールできます。

そうすると、PLの役割を分けてもらうチャンスが来やすくなると思います！

## PL → PM になるには？

①条件
まず、与えられた役割は真っ当しておくことでしたね。
必須になってくるのは **PLとしてタスクを推進できる** ことですね。
PLとして十分に役割を果たせていると周りから信用を得ましょう。

②PLからPMになるのをスピードアップ
**どのような時期にどのようなタスクをしなければならないのかを把握し、漏れがないかを提案できる** ことをアピールしましょう。

③そのためにできる施策
PMが作ったタスクは必ず自分を通してメンバーに割り振られると思います。
なので、どんなタスクをしなければならないか、実体験として経験できる立場にあります。
プロジェクト全体で必要なタスクを覚え、抜け漏れチェックして、ノウハウとしてためましょう。
特に、PMに「これもやった方が良くないですか？」と提案できるようになるも必須です！

PMはもちろんプロジェクトに1人なので、なかなかPMになるチャンスは来ないかもしれませんが、
虎視眈々とチャンスをうかがいましょう！チャンスが来たら、手を挙げられるように。


# おわりに
プロジェクトは、1つ1つのタスクで構成され、それぞれの役割に応じて扱い方も違う。
それって別にIT業界だけでなく、どんな業界も呼び名は違えど同じだと思っています。
求められる役割を正しく認識して、進みたい道を歩むのをお勧めします。

この記事がよかったら、ぜひフォローお願いします。
これからも開発に携わる人のためになる記事を投稿していこうと思います！！

# おまけ　その他プロジェクトを支える人たち
これらがプロジェクトの中核となる人たちなのですが、
プロジェクトの規模（≒タスクの多さ）によって、専門の役割に特化してサポートメンバーに協力してもらうことがあります。

たとえば、タスクが多すぎて、優先順位の設定や期限管理が大変！！ってことであれば、
それを専門とする『PMO』という役職もあります。
また、設計・実装する上でコア技術に詳しい専門家として『テックリード（または技術顧問）』という役割もあります。
そういう専門性を突き詰めるキャリアもあるので、目指してみるのもありですね。

また、反対に規模が小さければ、PMがPLを兼任するとか、PLがメンバーを兼任するとかもあります。