nozayasu

子育て 仕事 マネージメント 読書 僕が考えたこと

エンジニアの個性を理解するために必要なこと

エンジニアの個性とはなんでしょうか?

一緒に働いているメンバーであっても、ひいては自分自身のことであっても、表現することが難しいと感じています。

そんな最中、採用に携わってきた方に頂いた言葉がとても強く印象に残りました。

これまでずっと企業の採用に携わってきて、特にエンジニアやプログラマの人は、他の職種の方に比べてこだわりポイントみたいのが多種多様かつ明確な人が多いと感じていました。

この言葉を受けて明確なこだわりがあってこそのエンジニアらしさであり、そのこだわりのベクトルがエンジニアの個性たるものなのではないかと考えることができました。

エンジニアの個性が少し具体化したように感じます。しかしまだ多様なこだわりのベクトルは曖昧です。

このベクトルの部分を、エンジニア以外でも認知しやすい表現に落とし込めるのであれば、組織とエンジニアのミスマッチが減るのではないか。 エンジニア間の期待値理解、エンジニアのモチベーション起因把握に役立つのではないか。

そんな想いを胸に、エンジニアの個性を今より少しでも深く、認知できるための何かを探ることが今回の趣旨です。

エンジニアの個性を探るための手がかり

サーバーサイドやフロントエンドといった、扱う技術領域による分類は個性でしょうか?

技術領域の違いも、個性であると思います。

技術領域は、組織内におけるエンジニアのパタン・ランゲージ*1になり得ているため、個性の表現に値すると考えています。

また事業価値を成長させていく過程で、チーム開発において繰り返し起きる課題(事業に直接的な課題だけではなく品質低下・レガシーシステム・モチベーション低下等の、開発を継続する上での包括的な課題のことを考えています)を解決するエンジニアというものが存在します

この部分こそが、エンジニアの個性を表現する上での、重要な要素ではないかと感じています。

しかしこの部分は、技術領域や役職による分類だけでは、うまくイメージしきれていません。

そこでエンジニアの専門性・役職・活動・思考といったものをパタンとして名前をつけ、エンジニアの個性がパタン間の関連で表現されると捉え、今より少しでも深くエンジニアの個性を認知できるための手がかりにしていきたいと思います。

パタン

一般に知れ渡っている概念や、役職として定義されているものも含めて、エンジニアが業務上貢献している側面と性質に、主観ではありますが名前付けをしていきたいと思います。

スペシャリティパタン

  • フロントエンド(サービスの表現に対して技術的解決をできる能力を持つ)
  • バックエンド(サービスの処理に対して技術的解決をできる能力を持つ)
  • インフラ(サービスの安定稼動に対して技術的解決をできる能力をもつ)

テクニカルパタン

  • プログラマー(局所的に技術的解決をできる能力を持つ)
  • ゼネラリスト(広範囲に技術的解決をできる能力を持つ)
  • スペシャリスト(局所的に高い技術的解決をできる能力を持つ)
  • エキスパート(広範囲に高い技術的解決をできる能力を持つ)

マネージメントパタン

  • リーダー(局所的に組織的解決をできる能力を持つ)
  • マネージャー(広範囲に組織的解決をできる能力を持つ)
  • ディレクター(広範囲に高い組織的解決をできる能力を持つ)

チャレンジングパタン

  • イオニア(新しい技術を活用する)
  • エバンジェリスト(新しい技術を浸透させる)
  • イノベーター(新しい技術で課題を解決する)

カバーリングパタン

  • コラボレーター(職務領域にとらわれず企画やセールス等の支援もする)
  • メンター(エンジニアに適切なフィードバックを与える)
  • メンテナー(エンジニアの継続的なアウトプットや効率性の支援をする)

インフルエンスパタン

  • リアクター(発信された技術や想いに反応を示す)
  • パフォーマー(社内外に技術や想いを発信する)
  • タレント(社外に発信した技術や想いで評価される)

思考パタン

  • サービス思考(ユーザー価値がある事業、好きな事業に貢献したい)
  • 技術思考(新しい技術領域、好きな技術領域を通して貢献したい)
  • 成長思考(責任を負える、適切なフィードバックを得られる環境にいたい)
  • 協働思考(友人、尊敬する人といった自分の好きな人と働きたい)
  • 独立思考(自分の生活、個人の時間を大事に働きたい)
  • 評価思考(評価、業務貢献度による対価を正しく与えてほしい)

パタンの可能性

今回あげたパタンは、多様な組織に属するエンジニアに見られる、普遍的なものとも捉えられます。

このようなエンジニアの個性パタンを定義することは、組織としてエンジニアの評価軸・課題設定・フォローアップ・チームビルディング・採用方針といったものにも応用が利く可能性があると感じています。

もう少し具体化した例をあげていきます。

パタンを通してロールモデルとの差分を課題設定にする

f:id:nozayasu:20170405022608p:plain

ロールモデルと設定しているエンジニアは、バックエンドにおけるスペシャリスト。 技術思考と成長思考に裏打ちされた、イノベーターな側面とタレントな側面もある。

一方現状自分はバックエンドにおけるゼネラリストであり、ロールモデルと比較するとスペシャリストとしての活動量がたりていない。 またスペシャリストとしての探究心を保つために、定期的なフィードバックを得られるようにパフォーマーとしての活動も必要かもしれない。

大枠としてロールモデルとの差分を認知しやすくすることで、どうロールモデルに近づくか?自分らしく課題と向き合い目標をたてるか?指針としての可能性があるかもしれません。

パタンを通してエンジニア採用の方向性の理解を深める

f:id:nozayasu:20170405023249p:plain

ある程度自立しているエンジニアでかつ、よりチーム開発を円滑にしてくれる様なエンジニアがほしいという裏側にある想い。

現在のチームにはゼネラリストでかつ、コラボレーターとして活躍している主要なエンジニアがいる。

さらにコラボレーターの側面を持ったエンジニアを採用して、そこの掛け合わせによってチーム開発の円滑さを高めるのか?

メンテナーの側面を持ったエンジニアを採用して、エンジニアチームのアウトプットを向上させる形で、エンジニア主導の円滑さを高めるのか?

採用したいエンジニア像を、イメージするための問いかけになる。

エンジニア採用の方向性として、エンジニアチームと採用チームとの相互理解に繋がる可能性があるかもしれません。

終わりに

単純にパタンの組み合わせで成り立つだけでなく、関連性の強いパタンと弱いパタンがあると思います。随時新たなパタンも生まれることと思います。

そんなパタンの関係性を捉えて、チームとして掛け算になるよう調整をとることが、マネージメントの腕の見せ所なのかもしれません。

今回の話は、エンジニアの個性をより深く捉えるための表現方法の模索が主旨でした。

エンジニアの個性を理解するために必要なこととして、愚直に向き合い続ける姿勢を持つこと。エンジニアらしさに沿ったアプローチをとること。少なくともこの2点を、自分の中で大事にしていく考えを作れました。

エンジニアを精神的に一人にさせる様なことを、少しでも減らせるように、継続的に考えていきたい課題です。

おしまい。

*1:暗黙知の部分に名前をつけ、認知しやすい状態にするという意味でパタン・ランゲージの考え方を参考にし、パタンという言葉を使っています。そのためコンテキストや問題、背景となる因果関係、解決方法、結果、例などから構成される本来のパタン・ランゲージほどに考えきれてはいません。