システム開発プロジェクトにおいて重要なポイントは多くありますが、エンジニアのアサインもその中の重要な一つになります。プロジェクトの規模・仕様・フェーズに応じて、最適なエンジニアを選定することが、プロジェクトの品質や納期に大きく影響します。
また、昨今では多様な働き方も生まれていますので、これまでの通りのやり方では行き届かない面も出てきています。特にフリーランスのエンジニアは従来の会社的な考え方には縛られない判断になりますので、同様に扱ってしまっては上手く成果に繋がらない場合もあります。ここでは、エンジニアのアサインに失敗しないためのポイントを紹介していきます。
この記事の目次
1. プロジェクトの要求・要件を明確にする
まず、プロジェクトの要求・要件を詳細に洗い出します。
これには、技術的なスキルや経験がどの程度必要か、どのような技術スタックが使われるか、プロジェクトの規模や期間などを含めます。これにより、必要とされるエンジニアのスキルセットが明確になります。
また、要求定義や要件定義が不明確な状態でエンジニアをアサインすると、どんなに優秀なエンジニアでも手戻りが発生してしまいます。アサインしたエンジニア工数を無駄にしないためにも、しっかりとした事前準備が必要です。しかし、時にはエンジニアを事前に確保する動きも必要なため、手戻り覚悟でもアサインをすることも選択肢の一つです。
2. エンジニアのスキルと経験を選定する
プロジェクトに必要なスキルセットが明確になったら、それに基づいてエンジニアを選定します。具体的には、以下のポイントに注目します。
- 技術スキル: 使用するプログラミング言語やフレームワークの経験。
- プロジェクト経験: 過去に類似のプロジェクトに参加した経験。
- 問題解決能力: 複雑な問題に対するアプローチや解決能力。
しかし、これらのポイントは、どんなに熟練したマネージャでも書面だけでは見極めは難しいです。そのため、弊社ではマネージャとリードエンジニアによる【面談+エンジニアテスト】での実施を行い、複数の判定方法で選定をするようにしています。
当初弊社では正社員のエンジニアでの採用のみ導入はしていましたが、パートナーアサイン後に一定数求めるスキルに達していないことが発覚することがありますので、パートナーにも導入する運びとなりました。そうすることでパートナーアサイン後のアンマッチ件数は減少傾向にあります。
3. 工数を見積り、チームのバランスを考慮する
プロジェクトには、様々なスキルセットを持つエンジニアが必要です。例えば、リーダー、フロントエンド、バックエンド、データベース、インフラなど、各分野の専門家を適切に配置することが重要です。
しかし、開発工数(ボリューム)によりサブリーダを置いたりなどの考慮も必要なため、まずはリーダーをアサインして、エンジニア側の意見も取り入れるなど、段階的に進めていくとリスクが少ないプロジェクト運営になります。そのため、信頼できるリードエンジニアにつきましては、プロジェクト単位ではなく、継続的に契約をすることで、エンジニアアサインの負担が軽くなると言えるでしょう。
4. コミュニケーションスキルの確認
技術的なスキルだけでなく、コミュニケーション能力も重要です。エンジニアが他のチームメンバーやステークホルダーと円滑にコミュニケーションを取れるメンバーかどうかを確認します。特にリモートワークが増えている現代においては、オンラインでのコミュニケーション能力も重視されます。
また、昨今では日本人の開発単価高騰により、改めてオフショアを導入するプロジェクトも少なくありません。弊社ではクライアントとのコミュニケーションは最重要と捉えているため、要件定義やデザイン・設計については日本語で行えるメンバーを揃えています。技術的なキャッチアップや能力はオフショアメンバーが優るケースが多くなってきたため、プロジェクトの成功の鍵はオフショアかどうかではなく、オフショアを前提として対象者別に適切なコミュニケーションツールと言語を用いているかではないかと思います。
5. モチベーションと適応力
エンジニアのモチベーションと適応力も重要な要素です。新しい技術やプロセスに対する学習意欲や、プロジェクトの変化に柔軟に対応できる能力が求められます。これにより、プロジェクトの進行中に発生する様々な課題に対しても迅速に対応できます。
逆に本人の意向と合っていない場合、途中で離脱したり、思ったようなパフォーマンスが出ない可能性があります。そのため、プロジェクトの技術要素やプロジェクトの進め方などは可能な限り事前に共有をします。また方針が変わる際にもなるべく早い共有が求められます。もちろん、モチベーションだけでなく、技術的な観点でのフィードバックはエンジニアが一番正確に発信をしてくれますので、プロジェクトの成果にも間違いなく繋がってきます。
6. 継続的な評価とフィードバック
プロジェクトが進行する中で、定期的にエンジニアのパフォーマンスを評価し、フィードバックを行います。これにより、問題が発生した際に早期に対処し、エンジニアの成長をサポートすることができます。弊社では継続的なパートナーとは3ヶ月に一度面談を行い、都度フィードバックや雑談の機会を設けています。例えパートナーの方でも、こちらが評価をし続けることで、成果で返してくれますので、継続的に実施しておく必要があります。
重要なものは評価とフィードバックを通じてコミュニケーションを取り、エンジニアに一緒にプロジェクトを通して働きたいと思ってもらえるかです。そういう想いを持ったエンジニアが増えてくるとそれだけでプロジェクト運営の難易度が下がっていきます。
7.まとめ
システム開発プロジェクトにおけるエンジニアのアサインは、単なる人員配置ではなく、プロジェクトの成功を左右する重要なステップになります。プロジェクトの内容を明確にし、適切なスキルセットを持つエンジニアを選定し、適切なコミュニケーション方法(言語・ツール)を用いてることで、プロジェクトの品質と効率を最大化することができます。以上のポイントを押さえ、エンジニアのアサインに失敗しない戦略を実践しましょう。
カテゴリー: