自分が最上級の開発者であり、チームの他のほとんどが数年後輩である新しいチームでどのように自分自身を扱いますか。チームの前の仕事は、あなたを含め、他の誰もがこれまでのキャリアで成し遂げたことはありません。
経営陣はチーム全体の生産性の向上を要求し、上級開発者として責任があります。
このような状況で切り札を出すためのヒントはありますか?明らかに、チーム全体が学ぶ時間を必要とし、チームの新しいことを忘れないようにしましょう。ただし、期限も前倒しです...
自分が最上級の開発者であり、チームの他のほとんどが数年後輩である新しいチームでどのように自分自身を扱いますか。チームの前の仕事は、あなたを含め、他の誰もがこれまでのキャリアで成し遂げたことはありません。
経営陣はチーム全体の生産性の向上を要求し、上級開発者として責任があります。
このような状況で切り札を出すためのヒントはありますか?明らかに、チーム全体が学ぶ時間を必要とし、チームの新しいことを忘れないようにしましょう。ただし、期限も前倒しです...
回答:
厳しい締め切りやプロジェクトの目新しさによって、優れたエンジニアリング手法が妨げられないようにしてください。ソフトウェアリポジトリのセットアップ、コーディングスタイルへの同意、テストスイートの考案など一生懸命働き、彼らの前の仕事を学びなさい。
または別の言い方をすると、あなたの責任と任務は、あなたの経歴と経験から高品質のソフトウェアを構築するために必要なツールが与えられたと経営陣が信じているためです。この仕事が今困難に思えるからといって、突然あなたのスキルを忘れないでください。
まず最初に、コードの最初の行からソースコード管理システムの使用を開始します。早い段階で頻繁にコードをチェックする習慣をつけてください。
次に、テスト戦略を決定します。もちろん、これは単体テストを意味しますが、受け入れテストを自動化する方法も検討する必要があります。
3番目に、継続的インテグレーションサーバーを確立して、コードが定期的にビルドされ、定期的にテストされるようにします。
それができたら、チームとして簡単なコーディング標準を確立します。コードを誰でも簡単に読めるようにしたい。標準が何であるかは問題ではありません。タブ付きインデント、スペース付きインデント、同じ行の中括弧など。彼らが何であるかは問題ではなく、誰もが一貫してそれらを適用するだけです。
チームはほとんどジュニア開発者なので、コードを頻繁に見直して、システムに技術的な負担がかかりすぎないことを確認してください。
最後に、SCRUMの使用を検討してください。もしそうなら、コーチを雇うか、いくつかのトレーニングに行きます。あなたは皆、今までにないことをしているので、現実的な期限を設定することは単に不可能です。SCRUMを使用すると、あなたの経営陣はあなたが毎日何をしているのかを可視化できるので、彼らは何が進んでいるか(またはしていないか)を知ることができます。そして、あなたの締め切りは明らかにあなたに与えられたので、SCRUMは少なくとも締め切りに間に合わない場合、少なくとも段階的に完成したストーリーを配信することを保証します。まったく機能しないシステム。
@chrisaycockの回答に加えて...メンタリングやトレーニングなどに割り当てる必要がある時間を過小評価しないでください。リードとして、詳細を手放し、チームを信頼する方法を学ぶ必要があります。あなたの仕事は、イネーブラー、ロードブロックリムーバーになり、経営陣がそれに突き当たったときに干渉を実行することです。約7または8の「通常の」チームでは、リードはもはやプログラムしません。状況では、これは3または4(たぶんそれ以下)、あなたはプロジェクトのプログラミングリソースではありません。
2つの領域でのコミュニケーションに焦点を当てます。
これを行うのは簡単ではありません。それが、この仕事が難しい理由の1つです。締め切りに間に合うように機能を削減する必要がある場合は、それを超えてください。このすべてで回避しようとしていることの1つは、期限を設定するための迅速なコードです。それは、長続きしないコードベースの終わりの始まりであり、窒息する技術的負債の始まりです。
2)チーム間のコミュニケーション。ブライアンや他の人が推奨するような正式な慣行を設定します。毎日のスクラムに加えて、週に一度など、チームとして定期的に会うようにしてください。最も重要なツールであるを聞くことで、尊敬と信頼を得る。あなたが助けることに集中することを確認してください。すべての犠牲を払って否定的な批判を避けてください。必要な場合は、肯定的な批評と励ましを使用します。たとえば、「それは素晴らしいです。検討したいことがXであるとしたら、それは私たちが必要とするものではないので、代わりにXを実行する必要があります」
私がやったことは、有能なものを特定し、分割して征服することです。私はトップ2または3を取り、彼らを船長にする。他のチームは、キャプテンに続いて自分の小さなチームに均等に分けられます。
私は船長にチャンクまたはモジュールをプログラムに与えます。
キャプテンは初心者に小さなプログラミングや研究タスクを与え、彼らが何をしているのかを説明しながら、メンタリングが行われています。
全員が同じオープンスペースに入るように部屋を配置しようとしますが、各チームには独自のコンピューターの輪があります。物事が迅速に動くように、私はみんなと叫ぶ距離にいるのが好きです。
これは、これまでのところ約10〜20人のプログラマーに適しています。小さなグループの方が1つのグループにいるほうがいいので、まだ大きなグループには取り組んでいません。