リモート開発の内部、またはプログラミングが線形プロセスではない理由

ここに長い間書いていません。 しかし最近、トースターで、彼らは再びリモート開発者の作業を制御する方法を尋ねました。



まあ、私は同じリモート開発者です。 どこにも行きません。



私はしばしばタスクマネージャーの役​​割を担ってきましたが、多くの場合、この経験は成功しています。 実際、プログラマーとの快適な仕事のためには、「内部」で何が起こっているかについての最小限の理解で十分です。



Palyuトピック。



基本



1.タスクはタスクマネージャーで設定されます。 書面で、電話やスカイプによって指示されていません。

リモート開発者が時間と労力(仕事に送ることができる)を無駄にしないようにしたい場合は、どのタスクマネージャーが使いやすいかを尋ねます。 確かに彼は数年間それを合理的に使用し、有用なスキルをあなたと共有することができます。

必ずタスクを策定してください。 タスクが素晴らしい場合-開発者と一緒に、それを部分に分割し、中間の目標と基準を一緒に書き留めます。 暗黙的な入力データと目標の環境で作業を行うことができますが、成功の基準は各反復で明確にする必要があります。

反復の通常の期間は1週間です。 最大は3週間です。 反復のために配置されたタスクの数は、開発者と議論できます。 次の計画を立てるときに、前の反復の進行状況を調べます。



2.コミットは、通常はWebインターフェイスを備えたリモートリポジトリに注がれます。 これは、現在の進行状況をインタラクティブに表示できることを意味します。 このため、特別な知識は必要ありません。この作業は、基本的なスキル「コンピューターオペレーター」を持つ平均的なマネージャーが利用できます。 もちろん、この操作モードでは、開発者との信頼関係が必要です。 信頼は、勧めることではなく、前向きな経験によって達成することができます。



3.開発者に定期的に新機能のスクリーンキャストを作成するよう依頼し、テスト結果をスクリーニングまたはアップロードして送信することができます。



4.開発者に声で何かを説明するように頼む前に、興味のある質問に行ってグーグルで検索する方がずっと簡単で安価です。



詳細



まず、作業を制御するのは簡単です。 結果によると。 特定のタスクはありますか? 明確な優先事項はありますか?

問題は1週間以内に解決できます。 タスクが非常に膨大な場合は、より小さな断片に分割する必要があり、各断片の解決にはおそらく1営業日かかります。

したがって、制御の有効性は、問題の定式化の品質に直接依存します。



第二に、プログラマーはモジュールを作成します。 10個の平均モジュールの場合、約5〜10個の複雑なタスクがあり、90個は非常に簡単です。 1週間以内に、3〜10個のモジュールを作成できます。 日中-ゼロから5まで。今からその理由を説明します。



些細なタスクは、多くの場合、膨大です。 それらは簡単にプログラムでき、プログラミングも自動化されていますが、単調さのためにデバッグ時間が長くなります。 一般に、デバッグには作業時間の60%がかかります。 これは正常です。 新たに記述されたコードを動作させ、パフォーマンスとセキュリティを含む必要なプロパティを取得するために60%の時間(この点で追加の要件がある場合)。



困難なタスクは、主流からややノックアウトされます。 複雑-ボリュームが大きいという意味ではありません。 現在の状況では、この特定の問題に対する単純な解決策はありませんでした。 または、そうでしたが、長時間移植するか、他の理由でお勧めできません。 通常、成功した実装の関数はサイズが小さく、文字通り100行または200行です。 しかし、あなたはまだこの成功した決定に来なければなりません。



1日から3日、またはそれ以上の期間で決定に進むことができます。 実験、テスト、試行および無条件のエラー。 多くの場合、即座に結果が得られません。 より効果的な方法は、一般的にコンピューターから注意をそらし、新鮮な空気の中でタスクについて考えることです。 私は国で釣りと木工が好きです。 私が思いついたものの中で最高のものは、コンピューターから数十キロ離れたところに思い浮かびました。 何十人もの同僚に近いので、私はこの問題について何度も話し合いました。 誰もがこれに遭遇し、誰もがこれが正常であることを理解しています。



そのため、開発者にリアルタイムのプレゼンスとオンライン制御ツールの使用を要求することは意味がありません。 彼は出席しますが、彼は生産的ですか? これは質問です。



私は、スーツを着て時計で仕事に行くプログラマーについて同様の話をした多くの身近な幹部を持っていますが、実際、彼らはゆっくりと働き、しばしば「間違った」ことをします。



第三に、カウンセリングはプログラムの開発よりも困難です。 そして、ここでのポイントは、労働の内向的な特異性ではありません。



カウンセリングは大変な仕事です。 高品質の結果を取得したい場合は、頭脳を数時間、愚かな質問や議論に耐える必要はありません。 あなたが問題に精通していない場合-開発者の過失はありますか? 新しい知識を得たいですか? そして、なぜ私たちの時間であなたの訓練にお金を払うべきですか?



質の高い相談を受けたい場合は、準備をしてください。 質問をリストに書き留めて、週末に郵送してください。 一度に1つずつ電話して質問する必要はありません。 質問に対する回答が見つかった場合は、リストからそれらを削除します。 リストは空ですか? 素晴らしい。 だから、本当に話すことは何もありません。 これも正常です。



通常、プログラマは2〜4時間の短いセッションで作業します。 したがって、日中は2つまたは3つのセッションのみを費やすことが判明します。 あなたが自発的な呼び出しで気をそらす-半日が失われます。 プログラマーは脳を直接操作するため、繊細なコミュニケーションが必要です。 脳の会話に耐える価値はありません。



あなたにとって効果的で説得力があると思われることは、あなたの対談者にとって愚かで退屈に見えるかもしれません。 通常、これらは展望、協力、新旧の技術に関する会話です。 それどころか、実際のユーザーエクスペリエンスと特定の計画について議論することは興味深いでしょう。



呼び出しを覚えているかどうかに関係なく、リモート開発者の作業に影響を与えます。 積極的に影響を与えることができます。 簡単です。コミュニケーションを規制し、愚かなことをしないでください。「これは理解できません。」という条項を正当化します。



それを整理するか、理解できる基準を正直に策定してください。



All Articles