効果的な技術的リーダーシップ

画像



ほとんどの成功したプロジェクトには、深刻な技術的ソリューションを自信を持って採用することでプロジェクトを進める責任を負う開発者が1人います。 通常、この人は技術管理者と呼ばれます。 原則として、彼は人々をコントロールしませんが、代わりに彼らに彼らの最高の仕事をするように教えます。



すべての企業は異なっていますが、私が一緒に働いた最高の技術マネージャーの間には共通点があります。 良い例を示してくれたブライアン・ストーラーネイサン・ハントエヴァン・ギルバートリッチ・バードンに敬意表します。



この記事では、その質、機能、アクションの観点から、クールな技術リーダーとは何かを説明します。 これらの原則の多くは、一般的に人を冷静にします。 あなたの経験は私の経験とは異なるかもしれません。



品質



コンピテンシー、スピード、認識の 3つの品質を常に向上させる必要があります



1.能力

技術的知識は、適切な情報に基づいた意思決定を行うための洞察と自信を与えます。 強力なテクニカルマネージャーには、幅広い詳細な知識があります。 チームメンバーが特定のコンポーネントまたはシステムの動作方法を尋ねた場合、それを十分に詳細に説明するか、それを実行できる人に問い合わせることができるはずです。



能力を維持するために、次の順序で3つのことを行います。

  1. コードを評価します
  2. 設計ドキュメントを読みます
  3. 私はコードを書いています(記事ABC:Always Be Codingを参照)




特に最初の2つのポイントでは、順序が重要です。 作業が終了しても評価を待っている場合は、ほとんどの場合、自分の作業を延期し、プロジェクトの進行を支援する必要があります。 他の人を助けていない場合、コードを書くことで、ソースコードベースに遅れずについていくことができます。



技術管理者は、いくつかの技術に精通している必要があります。 たとえば、Java、JavaScript、C ++、分散ストレージシステム、クライアント側のWeb開発により、本格的なWebアプリケーションのテクニカルディレクターの職に就くことができます( Full Stackの詳細はこちら)。



2.スピード

非常に迅速に反応し、即座に意思決定を行い、常にボールを前進させることを学ばなければなりません。 質問であなたに来るとき、開発者は彼らが迅速な答えを得るであろうことを知っているべきです。



私は個人的に迅速に対応できることを誇りに思っています。 目標は、チームに遍在するように見せることです。 私の秘密兵器は私の受信トレイなので、私はメールと密接に統合するツールを使用することを好みます。



たとえば、問題解決の追跡、コードの評価、およびリマインダーに使用するソフトウェアに関係なく、チームメンバーは電子メール通知を受信し、電子メールでコメントできる必要があります。 チームの各メンバーが新規または変更された問題に迅速に対応し、モバイルデバイスを使用している場合でも、すべての変更を最新の状態に保つことができます。



3.意識

プロジェクト全体の現在の状態を覚えておく必要があります。 そうでなければ、潜在的に避けられないブロッカーに気付かないでしょう。 プロジェクトの速度を低下させる可能性のある内部または外部の力がある場合、これに注意する必要があります。



繰り返しますが、ここで重要なのは電子メールの統合です。 理想的には、オフライン会議に関しても、すべての状態の変更または更新は何らかの形で電子メールを経由する必要があります。 たとえば、各会議の後、特に重要な決定が下された場合は、誰かがすべてのチームメンバーにメモを送信する必要があります。



あなたは常により速く、より有能で、より知識を得ることができるので、あなたは常に上記の3つの資質を改善しなければなりません。



機能



5つの主要な機能がありますが、結局のところ、私はいつか技術マネージャーとして絶えず実行していました。 ほとんどすべてのアクションは、次の機能のいずれかに起因します。

長年にわたり、技術管理者ができる最も重要な2つのことは、 ロックロック解除の正反対であることに気付きました。



1.ロック

ブロックには高度な認識が必要であり、戦略的な意思決定と戦術的な開発タスクの両方に適用されます。 技術管理者は、プロジェクトで何が起こっているかを常に把握し、通常はより良いソリューションを提案することで、悪い決定を下す前に常に有効にしてブロックする準備ができている必要があります。



たとえば、開発者は評価のために別のプロジェクト開発者にコードを送信します。これは評価者にとって安全に思えますが、実際には新しいエラーが発生します。 制作を譲渡または開始する前に、作成者に介入して警告することができます。これは、作成者、評価者、およびプロジェクト全体にとって非常に役立ちます。



ロックは進行を停止すべきではなく、停止しないようにプロセスを調整します。 後でそれを修正する方法ではなく、最初にそれを正しく行う方法を考えてください。



2.ロック解除

ロック解除の反対のロック解除も同様に重要です。 地獄への道は、非アクティブな開発者が並んでいます。 誰かに質問がある場合は、答えを出すか、このために適切な人を連れてくることができるはずです。

研修生の存在は、このスキルの開発に役立ちました。 優秀な研修生は多くの質問をします。 そして、答えが得られない場合、しばしば行き詰まるか、さらに悪いことに、あきらめる可能性があります。 私は正しい答えを与えるか、それらを前に導く人々にそれらをもたらすことを学ばなければなりませんでした。



3.リダイレクト

あなたがどれほど優れていても、あなたはすべてを知っているわけではありません。 そして、あなたは質問に答えることができません。 たとえ技術的にこれを行うことができたとしても、ほとんどすべての時間は質問に答えるために費やされるでしょう。 これらのギャップを埋める(そして自分の仕事をすることができる)ためには、答えを見つける場所を常に知るために、あなたの心の中で専門家のリストを作成する必要があります。 最初の頻繁なリダイレクトは非常に便利な方法です。 技術マネージャーは、多くの場合、人々をつなぐ「302人」(または電話転送者)です。 チームの開発者が何かわからない場合、または正確な答えがわからない質問をする場合、送信先を理解することは非常に貴重であり、多くの時間を節約できます。



質問でリダイレクトすることに加えて、適切な人材を任意のプロセスに積極的に追加したり、コードを評価したりすることで、作業全体の品質を向上させることができます。 たとえば、開発者が最初に作成したものではない重要なコンポーネントにコードを追加する場合、コード評価にエキスパートを追加すると、関数が正しく実装されるようになります。



4.決定

責任の一部は、チームが依存する決定を下すことです。 意思決定を迅速に行うことができれば、それに応じて他の人がより早く行動を開始できます。 多くの場合、前進する明確な道はありません。そのような状況では、直観に従うことが正しいでしょう。



本能に耳を傾けるときは、時の試練に合格する適切な決定を必ず行ってください。 プロジェクトは出発後も継続する可能性が高く、レシーバーに呪われたくないでしょう。 これは、多くの技術的な負債を抱えるプロジェクトでよく起こります。



いくつかの可能なオプションがあるときに決定を下す必要に直面して、私は通常、次の手順に従います。

  1. オプションの数を2に減らします。問題の複雑さは、オプションごとに指数関数的に増加します。
  2. 経験やデータに基づいて最適な選択ができるかどうかをすぐに判断します。
  3. この段階で正解が明らかでない場合、決定を下すのにより適した人に質問をリダイレクトすることは可能ですか?
  4. それでも最良の選択ができない場合は、十分なデータがないか、間違った質問がされている可能性があります。 本能に従って、決定をブロックするか、ロックを解除します。




上記の手順は、すぐに念頭に置いて行う必要があります。



ソリューションの品質は、ハヤブサの襲撃によく似ており、犠牲者を倒して殺すことができます。 -孫子




5.デモンストレーション

技術リーダーの最も重要な資質の1つは、例を挙げて実証する能力です。 「例の設定」というフレーズを聞いたことがありますが、話すよりも見せたいです。 技術リーダーは通常、マネージャーではありません。なぜなら、彼はエネルギーを人ではなくコードに集中しているからです。 したがって、あなたのチームから尊敬と信頼を獲得する必要があります。これは、あなたが自分の仕事を知っていることを示すことによって最もよく達成されます。



ほとんどのマネージャーは、コードを書く時間を見つけるのが難しいと感じるかもしれませんが、そうすることは非常に重要です。 私はそれを「時間の作成」と呼びます。 わずらわしいエラーをなくしたり、必要に応じていくつかの有用なコードを追加したりする「ブラックワーク」にかなりの時間を割くことができたとしても、それを行います。 これは、コード自体よりも価値があります。



アクション



以下は、プロジェクトを前進させるためにテクニカルマネージャーが通常行うことのリストです。 このリストは完全なものではありません。







インストール、成功したテクニカルマネージャーになる方法は存在しません。 それらの中で最も優れているのは、製品開発で非常に大きな経験を積んだ生産的なコーダーです。 今、あなたが働いた最高のリーダーを覚えて、あなたが上で読んだものがどれだけ彼らに当てはまるかを考えてください。



自分に自信を持ち、動き続け、常に改善してください!



翻訳は、 トルストイサマーキャンプのスタートアップスクールの一環として行われました。



All Articles