Yu-tax’s diary

おじさんの小言ブログ

エンジニアとしてのキャリア

現在社会人8年目のエンジニアです。

ここ数年はリーダー役職での仕事がほとんどでした。
自身がコードを書くというよりは、レビューや相談・チームの方針決めなどが大半の役割でした。

はじめに結論

結論は2年前から変わっておらず、「マネジメント方法に絶対的な正解はない」
その都度チームのメンバーや状況に応じて最適な方法を模索する必要がある、と思っています。
以下で論じているのは僕はこう思っているよっていう考え方です。

マイクロマネジメントについて

2年前の記事では「絶対悪」として取り上げましたが、少し考え方が変わりました。
結論で述べている通り、絶対的な正解がないということは逆に言うと絶対的な悪もないということなのではないか?と思うようになりました。
チームリーダーを長く務めていて、メンバーの入れ替えも多くありました。
色んな人と仕事をしてみてマイクロマネジメントが有効なメンバーも一定数いることが分かりました。

マネジメント論

まず全員にニュートラルに接します。
はじめは誰がどの程度デキるか、どういうキャラクターなのは不明なので平等に等しく接します。
一緒に仕事をしていく中で
「あ、こいつデキるな?」
「あ、こいつデキないな?」
という瞬間が度々訪れます。
僕の場合は以下をよく見ています。

・問いかけに対するレスの早さ
・受け答えのハキハキ具合
・「誰かやってください」というallメンションへの反応
・割り振った仕事の完了の早さ
・抽象度の高いタスクを振ったときの動き
・プルリクの質(指摘の少なさ等)
・当たり前をちゃんとやってるか(遅刻しない、MTGの時間守る等々)

このあたりは一緒に仕事をしていると徐々に見えてくるため、段々とメンバー各自の能力やキャラクターが見えてきます。
特に「抽象度の高いタスクを振ったときの動き」これは顕著に差が出ます。
デキるやつはタスク分解が上手く、抽象度をどんどん下げていき具体的なタスクへと落としていきます。
そのために必要な情報は自分で調べるし、決めや判断が必要なものはリーダーに聞いて固めていけます。
デキないやつは抽象度が高いままタスクに着手し、2,3日経ってから「進んでません」「よく分かりません」と言ってくる印象です。

最優先なのは「デキるやつ」は絶対に粗末に扱わないこと。
デキるやつは大体雑に仕事を振っても上手くタスクをこなしてくれます、だってデキるやつだもの。
ただデキるやつだって人間です、嫌なことだってやりたくないことだってあるでしょう。こういう人材は本当に貴重なので丁寧に扱い、重要度の高い絶対失敗したくないタスクを振るのが良いでしょう。もちろん本人の意思やモチベを確認しつつ。

「デキないやつ」に関しては粗末に扱って良い訳ではないですが「デキるやつ」よりは優先度が下がります。
ここで意識しなければならないのは「デキないやつ」は今デキないだけで、今後デキるようになる可能性があるということ。
この扱い・マネジメントが非常に難しい。
ここからは教育の領域も含みますが以下のことを意識しています。

・アウトプットさせる
・難易度の低いタスクで数をこなし経験を積ませる
・デキるやつのコードをレビューをさせる(質の良いコードを読ませる)
・朝礼等で毎日タスクの進捗確認(困ってることの確認)

「朝礼等で毎日タスクの進捗確認」
これに関してはマイクロマネジメント寄りですね。
僕自身マイクロマネジメントは苦手で嫌いなのですが、かといってちゃんと細かく見ていかないと上手く回らないケースもあるため必要だなと思っています。タスクを任せて1週間後に何も進んでおらず「なんで聞かないの?」みたいな、マネジメント記事でよくネタにされるダメ上司の典型みたいなこともよくありました。これはもちろん本人が分からないことを人に聞かないというダメな部分もありますが、リーダー側の「任せすぎ」というダメな部分でもあります。