外資系マネージャーの独り言

日本で外資系企業のソフトウェアエンジニアマネージャーをやってる人のブログです

日本人エンジニアが上に行くために必要なもの

今の職場にいる何人か日本人のエンジニアや、外資系他社の日本人エンジニアなんかの話を聞いていて思ったことをまとめてみます。

f:id:jpsdm:20180909042814j:plain

いまどきのテック企業では、Individual Contributor(IC)として、マネージメント要素は一切含まない形でエンジニアやその他の職種で高位のポジションを目指すことができます。最近では日本の一部企業でもマネージメントに行かなくても出世する道を用意してくれているところが増えているようですが、ICとしての活躍するキャリアパスや待遇などについては欧米圏のテック企業のほうが制度面・機能面で先を行っている印象があります。しかし、外資系テック企業において周りを見る限りでは、日本人のソフトウェアエンジニアはシニアレベルまでは頑張ってリーチできても、その上のレベルに行っている日本人は見たことがないなー、というのがこの記事を書こうと思ったモチベーションです。

平均的に言って、一定レベルの経験を積んだ日本人エンジニアは、よく技術を知っているし、勤勉だし、言われたことをしっかりこなせてよい仕事をするな、という印象があります。でも、例えばシニアレベルか、それ以上のレベルに行くには「ここぞ」というところでのパンチ力が決定的に足りないなーという印象があります。

共通するのは、

  • 高いJob Knowledge
  • 業務をこなすのに十分なスキル
  • よい仕事をする意識

ですが、例えば上のレベルへのプロモーションとかって話になった時には「よい仕事をしています」だけでは不十分なことが多いように思います。どうも日本人の性として、「よい仕事をしていればいつか認めてもらえる」と思いがちで、人知れずよい仕事をしていて知ってる人は知ってるけど、会社全体・チームとして見た時にはプレゼンスが足りなくて…ということになりがちなことが多い気がします。会社やチームを人知れず影で支えているような人のことをUnsung Hero(名もなき英雄)なんて言いますが、それをやってるメリットは外資系企業ではあんまりありません。

一般的に言って、欧米圏の企業では「よい評価=正義」「プロモーション=勝利」「昇給=やりがい」と捉えられていて、控えめな日本人マインドではこれを狙ってがっつくのはハシタナイこと…と思いがちだけど、このマインドを180度切り替えて「何が何でもプロモーションをもらってやるぜ」とかいったモチベーションにしてしまうのがよいのではないでしょうか。結局、マネージメントやってる側としても、評価されるべき人が評価されていないのは問題だし、影ながらよい仕事をしていた部下が評価されずに去っていくのを見るうのは寂しいことです。

**

周りを見ていて、Principle EngineerとかStaff Engineerとか、そういった高みに昇ったエンジニアに共通するのは、よい意味でも悪い意味でもキャラが立ってて、言うべきことをしっかり言うし、やることはちゃんとやる、ところだと感じます。ユニークな個性と知識・技術・実績で会社に貢献していることを自分の言葉ではっきり言い切れるようなタイプの人たちが評価されているなと思うと同時に、このあたりこそが典型的な日本人エンジニアに足りていない(ことが多い)点なのだと自分は思います。

この足りてない「何か」を一言で言うなら「コミュニケーション能力」かなと自分は思っていて、一定サイズ以上の企業内の仕事で、高難度の課題に対してCommitして、きっちり結果を出そうとした時には

  • Stakeholderを見つけて正しいアプローチでコミュニケーションする
  • 技術的課題や社内のバリアについては、きちんとデザインレビューしたり、相手との相互理解を高める
  • 遂行した仕事のインパクトや価値について、正しく理解してきちんとアピールする

といった姿勢が重要。

ソフトウェアエンジニアの性として、プロジェクト絡みの面倒なコミュニケーションはPM/TPM任せとか、積極的にプロジェクトの畑を耕す作業に加わらない傾向があるけど、自分の見てきたシニア以上のエンジニアは、例外なくそういったコミュニケーションに飛び込んで行って、プロジェクトがおかしな方向に行ったりといったことを食い止める努力をしているし、遂行した仕事が持つ価値についてはPMやマネージャーと同等か、それ以上に技術的な価値を正しく把握していることが多いようです。

これってどういうことかっていうと、純粋にエンジニアとして優れている(正しいデザインができる、高度なコーディングスキル、特定分野の技術に詳しい、新しい技術のキャッチアップが上手)といった評価軸の他に、エンジニアのチームやビジネス目線でどのくらい大きな影響力を持つことができるかどうか、という評価軸があって、シニアレベル以上になってくると前者が整ってるのは大前提として、後者をどのくらい高い次元で実現できるかということが問われる、ということです。

この「大きな影響力を持つ」のに、圧倒的に必要になるのがコミュニケーション能力だと自分は思っていて、これは単純に英語ができるとかそういうことではなくて、例えば

  • 自分の意見をしっかり持った上でそれを幅広い層に対してきちんと説明できる
  • 他チームとの交渉において少なからず戦略的にコミュニケーションを組み立てて合意を得る
  • 意見を求められたら言うべきことはちゃんと言う(と同時に文脈に応じて発言内容を適切に調整する)

とか、そういったきめ細やかであると同時に大胆なコミュニケーション・スタイルを持ってないと、チーム内外において影響力を発揮することはできないわけです。外資系企業だから、言いたいこと言ってOKなのはジュニアから中堅どころまでで、その上になってくると政治的とまでは言わないまでも、正しい言動が必要になって来る、というところでしょうか。

まー、日本でも根回しだったり、外堀を埋めるだったり、そういった寝技的な技術によって仕事をスムーズに回せると言うことは多分にあるわけで、似たような要素が外資系企業でもありますよ、ということでしょうかね。