飢えている開発チームで何をすべきか?[閉まっている]


10

それは、特にあなたが遅れている場合、通常の開発者としてのクリティカルパスにいるのはうんざりです。あなたが上級開発者であるとき、チームがリーダーシップを求めているとき、それはさらに悪いことです。

ほとんどのチームの仕事が重要な部分を待って停止している場合、チームの他のメンバーは何をすべきですか?私たちは重要な部分へのアクセスを制限しているので、他の人は私たちが何をしても関係なく待つだけです。他の人が何をすべきかについてのアドバイスを探しているとき、良い答えは何ですか?


10
技術的負債をゼロにして払い戻しましたか?あなたがスパイクできる将来のために計画された機能の一部はありますか?既存の機能の中で試したい新しいテクノロジーやパラダイムはありますか?
jonrsharpe 2017年

27
@StudentTは、ブロッカーが解決されると、チームを元に戻すのが困難になる可能性が高いため、非常に近視眼的です。
jonrsharpe 2017年

8
@StudentTは、将来の計画を立てないためにリーダーを解雇する必要があります。
2017年

13
飢えた開発者?一言:ピザ。
メイソンウィーラー

3
OPが支払うべき技術的負債がなく、ユニット/機能テストまたは作成/改善する配備スクリプトがない場合、彼はDeaven(Dev Heaven)から間違いなく不平を言っている:<
xDaizu

回答:


29

単体テスト、機能テスト、ドキュメンテーション、ツールなどを改善します。クリティカルパスが追いつくのを待つ間、ダウンタイムで実行できることはたくさんあります。


2
この。平均的な開発者(私も含む)は、物事を洗練するための時間がないことを常に口にしています。それらにそれを保持します。
Traubenfuchs 2017年

4
私はこの一般的な「まだ実現していないことは何でもする」が好きです。コードレビューとリファクタリングを追加します。油を差したマシンのように機能する、見栄えの良いソフトウェアです。それは開発者にとって満足のいくものです。
ピーター-モニカの復活2017

以前は十分に重要ではなかったものは、おそらく今やる価値はまだありません。ちょうど「仕事をする」
ユアン

16

私はテストやドキュメントなどの改善に関する答えを気に入っていますが、それもあなたが見ることができる良いものです:

  • クリティカルパスコンポーネントを支援する場合、チーム/バディプログラミングを使用するとより速くなりますか?
  • 重要なコンポーネントを、誰もが作業できるいくつかのサブコンポーネントに再構成する。
  • 重要なコンポーネントを、基本的には同じ仕事をしますが、生産には十分に速くない何かでダミーします。
  • 重要なコンポーネントのAPIを確立し、多かれ少なかれ修正し、そのコンポーネントの基本機能を実装できるようにします(APIではなく実装の変更が必要です)。
  • 機能が「今のところ十分」であるシステムの残りの部分で動作するように、重要なコンポーネントの初期の既知の問題のあるバージョンを使用できるかどうかを確認してください。

このような重要なコンポーネントは、開発プロセスの早い段階で、おそらくチームの残りのメンバーが集まる前に開始する必要があることを記録して、「レッスンの学習」フェーズを開始することもお勧めします。


2
私は「常に改善の余地がある」という選択肢が好きです。それらが十分であれば、現在の問題に焦点を当て、適切な回避策を見つけることをお勧めします。
Walfrat 2017年

15

遅延した成果物のバックアップ計画が必要

重要な部分がすでに遅れている場合、それがそれ以上スリップしないという保証はありません。それで?あなたは永遠に待つだけですか?それはあなたが上層部に伝えたい種類の答えではありません。

シミュレーターを構築する

リスクを管理する1つの方法は、シミュレーター(ハーネス、シム、スタブなど、呼びたいもの)で作業を開始して、欠落している重要な部分の代わりをすることです。

定義されたインターフェースはありますか?それを実装します。

詳細なドキュメントはありますか?できる限り真似してください。

誰かのアイデアですか?プロトタイプを入手できるかどうか確認してください。

そして、彼らが再びスケジュールを滑らせたとき...

そのようにして、彼らが再びスケジュールを滑らせるとき、あなたはギャップを埋めるためにあなたの後ろのポケットにエースを持っています。チームのブロックが解除されるだけでなく(シミュレーターと統合できます)、貴重なソフトウェア資産を獲得できます。

スケジュールがさらに遅れる場合は、時間を使って(今のところ、シミュレーターに対して)自動統合テストを作成してください。そうすれば、彼らが本物を提供するときに、テストを実行して、モックアップと成果物の間の動作の違いを検出できます。これにより、修正が必要な箇所に焦点を合わせることができます。おまけとして、あなたは彼らが彼らの時間を使い果たしたときにどれだけの手抜きをするかについての考えをすぐに得るでしょう。


シミュレータは完全で素晴らしいものである必要はありません。進歩を遂げるのに十分なだけです。
するThorbjörnRavnアンデルセン

1
これは非常に健全で、すぐに明らかなアドバイスではないと思います。特にコーディング、つまりテストを超えた視点。モックは二重値です。
ピーター-モニカの復活2017

4

重要なコンポーネントに既知のインターフェースがあり、短時間でそれを実行する見込みがない場合は、テスト用のダブルモックなど)を作成してみませんか?

これにより、チームはコーディングを続行できますが、テスト結果の意味はやや少なくなります。


2

「これまで実現できなかったすべてのことを実行する」という明らかなことを除けば、あなたやあなたのチームは、プロジェクトの後半に関係のないことをするのに安心感がないようです。これは理解できますが、役に立ちません。

したがって、本当の問題はそれについてリラックスすることかもしれません。私は無関心とは言っていません。あなたの責任、あなたが助けるために何ができるかについて意識してください、そしてそれがあなたの手に時間が残っているなら、それを楽しんでください。いつもつま先にいる必要はありません。あなたがリーダーなら、これがあなたのメッセージであるべきだと私は言うでしょう。緊張をチームに移しても、重要な場合はチームの生産性は向上しません。


0

どの方法論を使用しているか正確にアドバイスするのが難しいので、あなたはそれを言っていません。

ブロッカーがある場合に私が働く場所は、開発を促進するために彼らができることを何でもするポンプへのすべての手です。

リードが多すぎるため、より広い問題があるかどうかを検討してください。はい、人々はあなたに技術的リーダーシップを求めていますが、それはあなたがより有能なチームメンバーの一部がメンターされている場合、ワークロードを共有できないことを意味しません。

これとは別に、彼らが前進できる他の重要ではない仕事はありますか?また、彼らが完了した、さらに洗練される可能性のある作業(リファクタリング、技術的負債の除去、文書化、テストの追加など)もあります。

本当に何もない場合は、ログ、ビルド、ドキュメント、テスト計画、設計、図、アジェンダの作成、会議の手配、茶色のバッグセッションの開催、知識の共有などを行ってください。常に何かすることがあります。人々が喜んで会社のコインに何もせずにただ座って座っているならば、彼らは明らかにチームプレイヤーではないのでエスカレーションされるべきです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.