エキスパートは突然生まれない。 やるべき仕事で結果を出し続けた人だけが、周囲からエキスパートと呼ばれるようになる。
プロフェッショナルな振る舞いについては、以前の記事で書いたことがある。
今回は、新卒から2〜4年目の若手エンジニアがエキスパートになるために何をすればよいのかについて説明する。
エキスパートとは何か
エキスパートとは、ある分野において専門的な知識や技能を持ち、その分野で高い成果を出せる人のことを指す。 つまり、エキスパートとして認められるには、評価者が求める水準を超える成果を出し、認められる必要がある。
そのためには何が必要なのか。 重要なのは、 特定の分野に詳しい人では足りない ということだ。 例えば下記のような例だけではエキスパートとは呼ばれない。
- 本を読んでいる
- 資料をよく知っている
- SNSで発信している
実際の現場で問題を解決し、結果を出しているかどうか。 そして、それを評価するのは自分ではなく、他人である。
つまり周囲から認められるような成果を出してはじめてエキスパートと呼ばれるようになる。
やるべき仕事で結果を出す
ではどうすればエキスパートに近づけていけるのだろうか。 結論から言えば、エキスパートになるためには やるべき仕事で結果を出す 必要がある。 ケント・ベックも、エンジニアにとって重要なのは影響(Impact)を与えることだと述べている。
最初のうちはここを誤解しがちだ。
どれも楽しいと感じるのであれば、それを大切にしてほしい。 だが、それだけでは事業にインパクトを与えることはできない。
では、事業にインパクトを与えるにはどうすればよいのか。
それは 事業にとって重要な問題を見つけ、それを解決する ことだ。
やるべき仕事とは、事業にとって重要な問題を解決する仕事のことである。
やるべき仕事の見つけ方
やるべき仕事を若手が見つけるために必要なことの一つは、自分が関わっているビジネスの構造を理解することだ。
- この会社はどこでお金を稼いでいるのか
- どの数字が伸びれば会社は成長するのか
- 今ボトルネックは何か
エンジニアであれば下記のような項目は事業にインパクトを与えられる可能性が高い。
- DBが遅くて売上機会を逃している
- バッチ処理が遅くて請求が遅れている
- 障害が多くて顧客が離れている
これらを解決できるなら、それはやるべき仕事である。
やるべき仕事の種類
やるべき仕事を見つけたら取り組んでいけば良い。 優先順位をつけて順番に仕事を片付けていくと 誰も手を付けないやるべき仕事 が残ることがある。 残っているやるべき仕事には誰にもできない仕事と誰もやらない仕事がある。 そこにエキスパートの道筋が隠されている。
誰にもできない仕事
問題はみんな認識している。 しかし解き方がわからない。 このような問題が誰にもできない仕事だ。 そしてエキスパートとして最も評価される場面がこの誰にもできない仕事を実行できることだ。
例えば、私の場合はPostgreSQLのスペシャリストであり、エキスパートとして活動している。そのため、PostgreSQLのパフォーマンスチューニングなど、現場で解決が難しい問題の相談を受けることがある。 私の場合、PostgreSQLのコントリビュータとして長くコミュニティに関わり、継続的にアウトプットを行ってきた。その実績を見て、「この人なら解決できる」と判断して声がかかる。
そして「私は◯◯のエキスパートです」と名乗るのであれば、その分野における専門的な知識や技能を持ち、それを活用して問題を解決できることを示さなければならない。
現場の誰も解決できない問題を解決できる。
それが誰にもできない仕事であり、エキスパートとして認められる状態である。
誰もやらない仕事
もう一つの切り口は「誰もやらない仕事」を積み重ねることだ。 以前、次のように書いたことがある*1。
やれることをひとつひとつやっていき、同時に誰もやっていないことを見つけてトライしていくと、いつしか誰にもできないことがうっすらと見えてきます。誰にもできないことは、ある日突然できるようになるのではなく、積み重ねの中で少しずつ育っていくものだと思うのです。
誰もやらない仕事、つまり みんなやりたがらないが、誰かがやらなければならない仕事 は必ず存在する。そして、その仕事の価値は高い。 重要なのは、誰もやらない は、長期的に見れば 誰もできない と同じになるということだ。 誰もやらない仕事を積み重ねた結果、それが自分しかできない仕事になる。
できることの掛け算が、自分しかできない仕事を生む
前述の記事でも書いたが、できることの掛け算が 自分しかできない仕事 を生み出す。
例えば、2つのスペシャリティがある。
- PostgreSQLのスペシャリスト
- MySQLのスペシャリスト
これを掛け合わせれば、異種データベース移行のスペシャリストになれる。 さらに抽象度を高めて見ると、次の2つのスキルがある。
- データベースエンジニアリング
- データモデリング
この2つを掛け合わせれば、論理設計から物理設計まで一気通貫で見られる存在になれる。 このように、自分のできることを掛け合わせていくことで、他の人にはできない仕事が生まれる。
そうやってスペシャリティを磨き、実績を積み上げていくことが、エキスパートになるための道筋の一つである。 実績の作り方については、以前の記事も参考にしてほしい。
おわりに
エキスパートになるための手順として、 やるべき仕事で結果を出す という考え方を説明した。 誰にもできない仕事をいきなり見つけるのは難しい。 しかし、誰もやらない仕事は必ず身近にある。
例えばエンジニアなら次のような項目はよくある誰もやらない仕事である。
- ドキュメント整備
- テストの追加
- CIの改善
- 古いDDLの整理
- 運用の自動化
- 再現性のない障害の調査
これらはみんなやったほうがいいと言うが、なかなか手を付けないタスクだ。 しかし、これらは事業に効く。
そして例えばトラブルシュートをやり続けた人は、 いつの間にか障害対応のスペシャリストになり、トラブルシューティングのエキスパートと呼ばれるようになる。 その積み重ねがスペシャリティを形作り、やがて 自分にしかできない仕事 へと変わっていく。
まずは、目の前のやるべき仕事で結果を出すことから始めよう。