エンジニアを雇うのに500万かかる話
ソフトウェアエンジニアを会社の外から雇うと、500万円($50K)くらいかかりますよという話がある。
これはエンジニアに直接払う給料は含まない数値で「ほんとにそんなにかかるの!?」と思うけど、冷静になって考えるとそれに近い値段がかかることが多いなというのが実感としてある。というよりも、それ以上のコストがかかるケースも多々ある。何と言ってもコストのうちでわかりやすいのは外部のエージェントに対して支払う紹介料(年収の30%前後)だけど、それ以外にもインタビュー等に費やされた時間・エネルギーや、チームにジョインして生産性が上がるまでにかかる時間(3-6ヶ月。場合によっては12ヶ月)に必要なトレーニングコストなんかも考えると、500万円という概算は全然おかしくないなと思う。
さらに、これが国をまたいだインターナショナル・リロケーションだったりすると、ビザ取得にかかる弁護士代・申請代、引っ越し代、現地での受け入れコストなどなどがかかってくるので、平気で600万700万と増えていく。
こうして考えると、ソフトウェアエンジニアを雇うにあたってミスは犯せない(生産性が上がらなかった時のサンクコストが大きい)&せっかく雇って生産性が上がるようになったソフトウェアエンジニアは決して失いたくないという意識が強く働く訳だけど、この状況を改善するためにマネージャーができることって、
- できる限りReferralを活用する (たかだか5,6時間のインタビューだけで判断するのではなくて、候補者を知ってる人からのフィードバックを元に判断できるし、コストも安上がり)
- インタビュープロセスをできるだけ効率的・効果的なものにすることで、インタビューワー側の負担を最小限に抑えると同時によい候補者が取れるような手を打つ
- 入ってきた新人ができるだけ自力で生産性を上げられるようなトレーニングを整備する
- 生産性が上がったチームメンバーが常に高いモチベーションで仕事ができるような(そして会社に残ってくれるような)チーム環境を維持する
あたりなのかなと思います。
Googleの例だと、新人のエンジニアが入社してから一定レベルの生産性に到達するまで典型的に6-12ヶ月くらいかかるとされているようで、この数値は会社がエンジニアに期待するアウトプットの規模、既存のシステムの複雑度、それにチームのカルチャーなんかにもよると思うのだけど、大きい会社で大きい仕事をしていればしているほどこの時間は大きくなってしまうのかなという気がする。逆に、小さなスタートアップなんかでオープンな技術を使って最小限の人出で開発をしている場合、コードベースやシステムの複雑度・依存関係、それにビジネスとの絡みも限定的なので、1,2ヶ月程度でアウトプットが期待されることもあるのかなと思う。
10 biggest tech companies and their avg. employee tenure. #Facebook #google #oracle #twitter #amazon #apple #Microsoft #airbnb #uber #snap #socialmedia pic.twitter.com/nS9MfQQwTO
— Shatha Al Maskiry (@shathamaskiry) 2018年7月7日
最近バズってたtweetで、メジャーなテック企業の平均tenure(社員がその企業に留まる年数)が長くても2年少々ってのがあって、さすがにこれは統計の取り方によるものだという印象があるけど、ひとつの会社・チームに3年もいれば一通り仕事である程度の結果は残せてプロモーションをもらってるか、あるいは結果は残せなくても経験は積んだから他の会社・チームに移ってもよいかな、という雰囲気はあるような気がする。
もちろん、会社のカルチャー・技術が好きで、評価もされるから5年10年と居つく人も一定数はいると思うけど、今どきのテック企業ではそういった居つく社員のほうがレアで、高度な流動性をもった人材マーケットというものを大前提としてチーム運営やハイヤリングをしていく必要なのかなと思う。