優れた開発チームが成功の鍵!ITシステム開発のチーム編成方法と新規メンバーの調達方法とは?
- ITシステム
- チーム編成
- トラブル
- 開発メンバー調達
ITシステムの開発には、様々な人が関わります。例えば、プロジェクトの予算やメンバーの勤怠状況を管理するマネージャー、技術的な支援や進捗管理を行うリーダー、構築やドキュメント作成を行うメンバーなどです。
多い時には何千人ものメンバーが1つのシステム開発プロジェクトに投入されることもあります。このように、システム開発は様々な役割を持つ人が1つのチームになって進められていきます。チームがうまくまとまらないとプロジェクトや開発はうまく成功しません。
では、システム開発はどのようなチームを目指せばいいのでしょうか?チームを作る、維持するためにはどのような点を意識すればいいのでしょうか?そのことについて、この記事で具体的にご紹介していきます。
目次
優れた開発チームの特徴
システム開発の主役を担うのは、様々な人が集まったチームであることがわかりました。では、システム開発において、どのようなチームを目指すべきなのでしょうか?
また、どのようなことを意識してチーム作りをしていけばいいのでしょうか?
以下で詳しく解説していきます。
バランスのいい人員配置がされているチームである
システム開発には様々な役割、スキルを持つ人が集まってチームを作ります。例えば、サーバーなどの設定、構築を行うスキルを持つインフラエンジニアや、ユーザーが利用するインターフェースをデザインするスキルを持つUI/UXデザイナーなどです。
これらの人員は多すぎても少なすぎても、システム開発はうまくいきません。つまり、バランスが大切になってきます。
活発なコミュニケーションができるチームである
優れたチームは活発なコミュニケーションが行われる環境が整っていることが多いです。システム開発プロジェクトに関する話題だけでなく、巷で流行している技術に関する話題や、視聴しているドラマなど、雑談が行われることも多いです。
これらの活発なコミュニケーションにはどのような効果があるのでしょうか?
このようなコミュニケーションが行われると、チームのメンバーの士気が上がり、チームで相互に助け合う風潮が作られます。また、技術的な話題に関するコミュニケーションはメンバーのレベルアップにも繋がります。では、このようなコミュニケーションが活発に行われるチーム作りをするためには、何を意識すればいいのでしょうか?
それは、以下で説明する"心理的安全性"がキーワードになります。
"心理的安全性"が保たれたチームである
心理的安全性とは、職場やチームのメンバーが、自然体の自分を隠すことなく全てオープンにできる状態を指します。
2015年にGoogle社が、「心理的安全性は成功するチームの構築に最も重要なものである」と発表したことで注目されています。心理的安全性のメリットとはどのようなものなのでしょうか?
例えば、チームのメンバーが、自分が無知であると非難されることを恐れ、自分の考えを隠すと、そのメンバーの考えや知識が共有されず、チーム全体の生産性やノウハウの蓄積に影響します。逆に、すべてのメンバーが、自分の考えを隠さずオープンにできる環境が整っていれば、情報やアイデアの共有が盛んになるだけでなく、チーム全体で決定した内容に全員がコミットするようになります。
では、どのような施策を行えば心理的安全性が確保されるのでしょうか?
具体的には以下の施策を行っていくといいでしょう。
- 積極的な自己開示
チームリーダーを筆頭に、積極的に自分の考えなどをオープンにすることが重要です。また、チームメンバーが開示した情報について、否定しないことも大切です。例えば1人のチームメンバーが、『ピーマンが嫌いだ』と自己開示した際に、それを否定されてしまうと、積極的な自己開示ができなくなってしまいます。自己開示を行い、それを尊重する、といった施策が必要です。 -
発言機会を均等にする
会議などで、特定の人の意見のみが尊重されてしまう、といった場面に遭遇したことはないでしょうか?
そのような場面だと、積極的に自分の考えを述べることははばかられてしまいます。このようにリーダーが誰か特定の人の意見ばかり優遇するのをやめ、全てのメンバーが発言できる機会を均等に作ることが必要です。 -
価値観を共有する
自分が何者か、他社に知ってもらうことは心理的安全性を高める効果が期待できます。チームのリーダーにとっても、部下がどういう考えで仕事や会議に臨んでいるかを知ることは、仕事や発言の割り振りの際に大事になってくるでしょう。少人数でも、1on1でもいいので、定期的に価値観を共有する機会を作成するといいでしょう。
システム開発で理解しておきたい特徴や起こりうるトラブルとは?
次に、システム開発の特徴について述べていきます。システム開発の特徴は、チームの組み方にも大きな影響を及ぼすものです。どのような影響が及ぶのか、見ていきましょう。
常に一定数のメンバーで進められるわけではない
システム開発は複数の工程が組み合わさって進められるものですが、常に一定数のメンバーで進められるわけではありません。
例えば、システム開発には
- システムをどのように構築していくのかを決める『設計』
- 設計をもとに、実際に構築を行っていく『構築、実装』
- 設計どおりにシステムが構築するかを確認する『テスト』
といった工程があります。これらの工程において、必要な人数は異なります。システムの規模が大きくなればなるほど、『構築、実装』に必要な人数は、『設計』に必要な人数を大幅に上回ります。
従って、チームのメンバーは常に一定数ではなく、工程によって可変になっていくことが多いのです。
トラブルは起きるもの
システム開発において、トラブルはつきものです。例えば、設計時点の考慮漏れによる手戻りといったトラブルや、メンバーがセキュリティ事故を起こし、構築中のシステムの情報を外部に漏らしてしまうトラブル、メンバーが体調不良になり休みがちになってしまうような、体調に起因するトラブルなどです。
このようなトラブルにより、メンバーのやりくりはより一層難しいものになります。ただ、このような状況においても、メンバーのやりくりを行い、仕事を進めていかないといけません。では、どのようにメンバーのやりくりを行っていけばいいのでしょうか?
メンバーのやりくり方法について記載していきます。
チームメンバーの調達をする3つの方法
開発プロジェクト進行中にトラブルが起きても、メンバーを増やして対応をすれば納期に間に合わせたり、品質を担保したり、といったことが可能になります。ここでは、「どのようにメンバーを増やせばいいのか」を、そのメリットとデメリットともに記載していきます。
国内、海外のSIer
まずは、国内や海外のSIerからメンバーを調達する方法です。国内のSIerであれば、少々高額にはなってしまいますが経験豊富なエンジニアをメンバーに迎えることが可能です。
海外のSIerであれば、物価が安い国のSIerに依頼をかけることができれば、コストを抑えてエンジニアをチームに迎えることができます。ただ、海外のSIerであれば相手国の政治リスクについても考慮する必要があるので慎重に依頼をかけましょう。
フリーランスエンジニア
近年ではフリーランスのエンジニアが増加しています。クラウドワークスやLancersなどの仲介業者で募集をかけることで、エンジニアの確保が容易です。ケースバイケースではありますが、国内のSIerから人員の募集をかけるよりも高速でコストも抑えることが可能です。
ただし、スキルの見極めについては大変重要です。メンバーに迎え入れる前に、面談などを行い、必要なスキルが十分に備わっているかを確認するようにしましょう。
インターン生
スタートアップなどの会社であれば、インターン生を募集するのもいいでしょう。場合によっては優秀な学生をそのままフルタイムの社員として採用することができるので、人材の採用コストについても大幅に削減することができます。
また、インターン生の”学生である”という特徴を利用して、インターン生の友人を紹介してもらう、という手法も採用することができます。ただ、学生であるため、ビジネスマナーやセキュリティ教育については十分に行う必要があります。
開発チームに新規メンバーを溶け込ませるために
システム開発において、メンバーの入れ替わりがあることを記載しました。ここからは、新規のメンバーがチーム内で活躍する為に、チーム内で事前に整えておくべきことや、既存のメンバーにぜひやっていただきたいことについて記載していきます。
ドキュメントの重要性
まずは、開発中のシステムのドキュメントについて、しっかりと準備をしておく必要があります。新しくチームに入るメンバーは、基本的にシステム開発プロジェクトの途中からチームに入ります。また、工程も構築工程やテスト工程でプロジェクトに投入されることになります。
新しいメンバーがチームに入って、何を作っているのか、理解できるようにビジョンを明確にさせる必要があります。そのためにも、基本設計書などのドキュメントは、後で、誰が見てもわかるようにしっかりと整備をしておく必要があります。
また、場合によっては基本設計書などのドキュメントをもとに、構築中のシステムの説明会などを開いてもいいでしょう。既存のメンバーにおいても新たな発見があるかもしれません。
ルール集の作成
次に、ルール集について作成を行います。例えば、年休をとるときの勤怠ルールや、プロジェクトを進めるうえでの構築作業ルールなどです。そのようなローカルなルールは確実に明文化しておくと、新しいメンバーがスムーズにチームで稼働できます。
加えて整備しておくべき需要なルールとしては、セキュリティのルールが挙げられます。新規のメンバーや、既存のメンバーにとって一番不幸なのは、当人同士でやる気等があるのに、不意なセキュリティ事故などを起こしてしまい、メンバーから外れざるを得なくなった場合です。そのようなことを防ぐために、セキュリティに関するルールや、場合によってはセキュリティルールの読み合わせなどを行っておく必要があります。
メンター、インストラクターなどをつける
新しくチームに入ってくるメンバーは、スキルも経験も多種多様です。中には必要なスキルが不足しているメンバーもいるかもしれません。そのようなメンバーにも十分に活躍し、成長してもらうためにも、場合によってはメンターやインストラクターの役割を担う人員を用意しましょう。
スキル不足のメンバーの成長は、チームの生産性の向上に直結するため、非常に重要です。メンターやインストラクターを担うメンバーにとっては重労働かもしれませんが、将来のチームへの投資であると思って取り組んでもらうのがいいと思います。
チームメンバー間で互いに自己紹介をする
新しくチームに入るメンバーにとって、新しい環境に身を置くことはそれだけでストレスになります。また、他のメンバーが何者かわからないため、困ったときに何を誰に相談すればいいかもわからないことがあります。
そのため、各チームメンバーは、チーム内でどういう役割で、どういうことを知っているのか、新しいメンバーとシェアするといいでしょう。さらに踏み込んで、各チームメンバーのプライベートについても紹介できる範囲でシェアできれば、心理的安全性の醸成につながります。
まとめ
システム開発プロジェクトは、様々なバックグラウンド、経験、知識を持った人が集まって行います。その中で、いいチームを作っていくためには、"心理的安全性"というキーワードを意識してチーム作りを行っていくといいでしょう。
また、システム開発プロジェクトは一般的に、チームメンバーの入れ替わりが激しいものになります。新規メンバーを募集する手段は数多くあります。どの手段にどのようなメリットがあるのかを把握してメンバーの募集をかけましょう。新しく入るメンバーが決まったら、受け入れる体制をキチンと整えて迎え入れると、チーム全体の生産性向上につながるでしょう。
今回は、開発を自社でやる場合のことを想定をして開発チームの組み方をご紹介しました。一方でシステムは委託開発して運営を自社でするといった方法をとることもできます。
人員が確保できない、納期までに間に合わない、ある分野の専門人材がいない、といった場合の選択肢の一つとして委託開発も検討してみてはいかがでしょうか?
弊社トップゲートでは、Google Cloud (GCP) 利用料3%OFFや支払代行手数料無料、請求書払い可能などGoogle Cloud (GCP)をお得に便利に利用できます。さらに専門的な知見を活かし、
- Google Cloud (GCP)支払い代行
- システム構築からアプリケーション開発
- Google Cloud (GCP)運用サポート
- Google Cloud (GCP)に関する技術サポート、コンサルティング
など幅広くあなたのビジネスを加速させるためにサポートをワンストップで対応することが可能です。
Google Workspace(旧G Suite)に関しても、実績に裏付けられた技術力やさまざまな導入支援実績があります。あなたの状況に最適な利用方法の提案から運用のサポートまでのあなたに寄り添ったサポートを実現します!
Google Cloud (GCP)、またはGoogle Workspace(旧G Suite)の導入をご検討をされている方はお気軽にお問い合わせください。
過去の開発事例紹介資料も、公開中!
ご興味ある方は、ぜひDLしてみませんか?
開発事例紹介資料をダウンロードする
メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!