プロのPHP開発者になります。 パート4:実際のチームワーク

一連の記事「PHPプロフェッショナルになる」の第4部の翻訳に注目してください。



最初の部分。 ミッシングリンク

第二部。 「他の人の重要性」

第三部。 「チームワーク」



前に、 チームワーク社会的側面とその長所と短所を調べました。 ただし、他の人と協力する際に​​注意を払い、多くのことを学ばなければならないことがまだたくさんあります。



今回は、特に仮想チーム(すべてまたは一部のチームメンバーがリモートで作業する)について得られた知識の実際的な応用について説明しましょう。



時間帯の違いとその他の障害



チームにリモートで作業する人がいる場合、タイムゾーンによる時差が大きな障害になる可能性があります。 たとえば、SitePointを考えてみましょう。私は大部分が米国出身で、ポータルのメインオフィスはオーストラリアにあり、私自身はクロアチアにいるという読者向けに書いています。 その結果、3つの異なるタイムゾーンがあり、それぞれの差は約6〜8時間です。そのため、1日後にしかメールの回答を受け取れない場合があります。



チームメンバー間だけでなく、クライアント、作成者などとのアクティブなメール通信がある場合、これはすべて混乱に変わり、簡単に混乱する可能性があります。 同時にすべての人と連絡を取り合う方法を見つける必要があります。



次の問題は、「ボトルピンチ症候群」です。 通常、ある人が開発チーム(フィルター、チームリーダー、プロジェクトオーナーなど)にタスクを渡すとき、タスクフローが強すぎるか、チームが遅すぎたり小さすぎて実行できない場合、その人は同じつま先になります。 そして、時間が経つにつれて、この人はクライアントから非常に強い注意とプレッシャーにさらされ、開発プロセスに悪影響を及ぼします。



別の非常に一般的な問題は、多くの人が同じ機能で同時に作業する場合です。 一言で言えば-貧弱な組織と優先順位付け。 時には、開発者がバグに陥る場合があります(多くのバグがあるため、すべてを修正するまで機能を追加できない場合があります)。これにより、特にプロセス全体が機能に依存している場合、開発が大幅に遅くなります。



これらの問題はすべて、製品の開発を遅らせ、完全に停止させる可能性がありますが、それらを解決する方法はいくつかあります。 それらを「有機」「無機」に分けます。



有機溶液



前回の記事ですでに述べたように、有能なリーダーとマネージャー(いわゆる「フィルター」)の重要性を過小評価することはできません。 有能なリーダーはタスクを適切に定式化し、それらをより小さなサブタスクに分割できますが、フィルターは意味のある必要なタスクのみが開発者に届くようにします。 フィルターの役割は、タスクを収集し、開発者と他の担当者(またはクライアント)との間の唯一の通信手段にすることです。 彼の能力は、ピンチネック症候群を克服する時間に直接影響します。



あなたはあなたのマネージャーを助けることができます-彼らの要求と指示でプロジェクト開発プロセスに関係のない人を拒否してください。 CEOによって承認された場合でも、決定を下す前にテクニカルディレクター(STO)、チームリーダー、またはプロジェクトマネージャーに相談してください。 彼らは通常、不合理で時間制限のあるものを要求する人々に近く、芽に自分のアイデアを「絞め込む」ことができます。 一度拒否しないでください-拒否しないでください。



そのような人々が何らかの形でこの障壁を乗り越えたとしても、礼儀正しく落ち着いてください。 マーケティングスペシャリストがWebページをスライドと呼ぶとき、またはロジスティクス担当者がインターフェイスを記述できず、すべてをExcelと比較するとき、それがどれほど面倒なことかを知っていますが、私たちはそれらを注意深く聞いて、a)それらを取り除くことができることを理解していますb)チームリーダーまたはマネージャーにアイデアを説明して、彼らと会話できるようにするか、アイデアが適切であれば新しいタスクを作成します。



信じられないほど便利なものには、数時間も残っています。 開発者、特にチームリーダーのために少なくとも2時間を残すように作業時間を計画することは、非常に重要なポイントです。 これにより、チームとライブで会ったり、ディスカッションのためにビデオまたは音声通話を行うことができます。 1枚の写真は1,000語の価値があり、1回の呼び出しは1000通のメールの価値があります。 電話は、あなたの一日を計画し、タスクに関するすべての不可解な瞬間を見つけ、それらを解決するための最良の方法を見つけ、またあなたの英語のレベルを向上させるのに役立ちます。



無機溶液



このタイプのソリューションとは、詳細に説明したいアプリケーションとWebサービスのことです。 リストは決して完全ではありませんが、言及したツールのすべてではないにしても、ほとんどを使用しました。自分で作業しなかったものはお勧めしません。



Trelloは、SitePointで使用する主要なツールの1つです。 開発者ではなく、編集者や管理者に焦点を当てていますが、インターフェイスとマークダウンマークアップのサポートにより、タスクを簡単かつ詳細に説明できます。 技術者以外の人と定期的にコミュニケーションをとったり、アイデアを共有したい場合は、Trelloがまさに必要なものです。 そして、あなたはそれを完全に無料で使用できます。



BasecampはTrelloの人気のある代替であり、チームベースのTODOアプリケーションです。 Trelloのように、ディスカッション、ネストタスク、ファイルのアップロードがあります。 ただし、Basecampは無料ではありません。



Google Apps(GSuite)は、企業メールのホストとして機能し、企業のGoogleドキュメントとGoogleドライブの閉鎖企業アカウント、グループチャット、Googleグループ、企業カレンダーなどを提供します。 より多くの企業にGoogle Appsを使用してほしい。 さらに、Google Appsのビジネスバージョンはハングアウトをサポートしているため、コンピューターとスマートフォンの両方から即座にチームとメッセージを交換できます。 たとえば、ハングアウトを使用すると、2台のデバイスから同時にビデオハングアウトを受信できます。 たとえば、オフィスから徒歩5分のビデオ通話をしてから職場に着いた場合、[この通話に参加]をクリックするだけで、職場のコンピューターから電話を受けることができます。 これにより、チームでのコミュニケーションを真にプロフェッショナルにすることができます。



FlySprayは非常にシンプルなオープンソースのバグトラッカーであり、日々の作業の小さなバグを追跡するのに役立ちます。 私の過去の会社では、技術者以外の人がFlySprayを使用してリクエストとバグレポートを送信することを許可し、フィルターは意味のないメッセージを破棄し、実際のバグをより詳細に説明しました。 そのため、常に完全なレポートを受け取り、バグをより迅速に再現および修正することができました。



Githubは、共同プログラミングのための一般的なネットワークです。 これはオープンなリポジトリのハブであり(有料サブスクリプションの場合は閉じられます)、誰でも簡単にチームで作業でき、サーバーでリポジトリを構成する必要はありません。 BitBucketは、閉じたリポジトリを完全に無料で提供するまともな代替手段です。



BitBucketの作成者であるAtlassianには、 ConfluenceJIRAなどのチームコラボレーション用のその他のツールも多数あり、リアルタイムでチームと連携してすべての情報を1か所に保存できます。 Jetbrainsは、継続的な統合のためのTeamCity (無料のプロフェッショナルエディション)と、バグ、問題、リクエストを追跡するためのYouTrack (60日間の試用期間または10ユーザーの無料バージョン)の優れたツールセットも提供します。



アジャイル開発のアジャイル開発方法論を順守している場合、最高の有料ツールはPivotalTrackerGreenHopper (JIRAプラグイン)です。 両方のツールには無料版があります。



TO-DOリストを作成するのに役立つ最後の重要なことは、 Todoist (私は毎日使用しています)です。 インターフェイスは簡単で、タスク自体に焦点を合わせています。 実際、同様のアプリケーションで見たものはすべて揃っていますが、大幅に改善されています。



開発者の場合、GithubとTeamCityを使用すること、および議論にはTrelloを使用することをお勧めします。 プロジェクトマネージャーおよびサポートの場合は、Google Appsを使用することを強くお勧めします。 チームがSCRUM方法論を使用している場合、Pivo​​talTrackerが役立ちます。



おわりに



この記事では、チームの作業の改善と生産性の向上に役立ついくつかのソリューションを検討しました。 次の記事では、上記のすべてのツールについて詳しく検討します。



お気に入りのチームコラボレーションツールはありますか? チームの問題をどのように解決しますか?



All Articles