エンジニアの人材不足が叫ばれる昨今、求める人材像と合わないエンジニアを採用してしまうことは、企業とエンジニアの双方にとって不利益です。採用する企業は、自社に合ったエンジニアをどのように見定めていけば良いのでしょうか。
これまで数々のエンジニアを採用し、しくじり経験もあるという株式会社オモチ 取締役/CTO/COOの足澤憲さんにお話を伺いました。
足澤憲
株式会社オモチ 取締役/CTO/COO たのしいポイ活アプリ『ポモチ』開発責任者 https://www.ai-credit.com/ 株式会社ランステック システム部 開発責任者 https://www.lanstech.co.jp/
ポイ活アプリ特有の求められるスキルとは?
まず、足澤さんが現在取り組んでいる事業について教えてください。
株式会社ランステックではSES事業と受託開発事業を行なっており、株式会社オモチでは受託開発と、自社事業『ポモチ』の開発を行なっております。
ポイ活アプリ『ポモチ』についても教えていただけますか。
それぞれのお店のポイント還元率を簡単に調べながら、楽しくポイントを貯められるポイ活アプリです。今はクレジットカードやスマホ決済などさまざまな決済方法がありますが、お店ごとにお得な決済方法が違います。
例えば、あるお店はクレジットカードの特約店だから20%オフになったり、別のお店ではPayPayのキャンペーンで5%オフになったり、あるいはポイントカードでポイントが付与されることもあります。何がお得なのか分からないときに『ポモチ』のマップでお店を選んでいただくと、クレジットやスマホ決済の組み合わせでいくら還元されるのかを一目で確認できます。
一番お得な決済方法が瞬時に分かるのですね。
ええ、さらにポイント付与機能もあります。『ポモチ』経由でサービス登録やクレジットカード発行をしていただくとポイントが付与され、そのポイントをTポイントなどの共通ポイントに交換したり、ギフト券や現金に交換したりすることもできます。
ユーザーはどういった方々が多いでしょうか?
ポイ活や金融系のサービスに関心の高い、40〜50代の男性が中心となっています。
足澤さんは『ポモチ』の開発責任者としてエンジニア採用に携わられていますが、開発体制においてどのような課題があったのでしょうか。
最初は私一人でバックエンドもフロントも全て作り始めました。しかしそれでは手が回らなくなったため、アプリのエンジニアやバックエンドのエンジニアを徐々に増やしていくことになりました。
ただ『ポモチ』はポイ活やお得な決済方法に詳しい方でないと、ロジックをプログラムで再現するのが非常に難しいんです。そのため、当初はポイ活が好きなエンジニアを採用したかったのですが、なかなか条件が全て当てはまる人がいなくて……。いろいろ努力したもののポイ活に詳しいエンジニアを採用することが出来ませんでした。そこで採用条件のハードルを下げて「ジョインしてからポイ活について詳しくなりたい方」を探すことにしました。
ポイ活に詳しくないと、業務の中でどのような支障が生じるのでしょうか。
バックエンドの計算ロジックを書く部分ですね。例えばクレジットカードとスマホ決済を組み合わせた時、チャージ時に何%還元になるかという組み合わせの計算が発生します。クレジットカードは1,000種類以上ありますし、スマホ決済もどんどん増えているので、ここを組み合わせるとそもそもチャージできないとか、チャージはできるけれど還元率が例外的に0%になるとか、個々のパターンに合わせてプログラムを作る必要があります。この辺りの理解ができていないと、ロジックを書くのが難しいと思います。
たしかに専門的な理解が必要ですね。最初からその知識を持っている人を探すのは難しそうです。
はい。「入ってから一緒にプログラムを見ながらポイ活のことを勉強していきましょう」という方向性に変えたので、他の人が書いたプログラムを理解できる人かどうかを重視しました。他人が書いたプログラムには癖があったり自分の書き方と違う箇所があったりしますが、それを踏まえてしっかり読める方が良いと判断しました。
プログラムの他に、ポイ活の情報をキャッチアップしてもらうフローを作られたのでしょうか?
ポイ活の勉強会を週に1回開き、クレジットカードごとの還元率やスマホ決済・電子決済について、基礎からご説明していきました。
足澤さんはクレジットカードの記事を監修されていらっしゃるので、ポイ活の説明は得意分野ですね。
そうですね、『ポモチ』は自分が実際にポイ活をしているなかでの悩みを解決するために開発したアプリなので、そのときに感じたユーザー側の課題も伝えるようにしています。元々、私自身がポイ活を楽しんでいたのですが、スマホ決済がどんどん増えて人間の頭では組み合わせの計算ができないという次元になった時、アプリかサービスが必要だろうと思ったんです。
エンジニア採用におけるしくじり事例
組織を構築していく上で、大変だったことは何でしょうか。
スキルが少し足りないエンジニアさんを何名か入れたことがあり、そういった方たちにポイ活の説明もしながら、エンジニアのスキルと共に徐々に成長させていこうとした時期がありました。
しかし、エンジニアのスキルと『ポモチ』で必要なポイ活の知識の双方を底上げするのはなかなか難しく、一筋縄ではいきませんでしたね。エンジニアのスキルが高い方を中途採用して、後からポイ活についてだけ学んでいただく方が楽だったんだろうなと思います。
これはどのサービスにも共通しそうなことですね。まずはスキル面を担保して、サービスに必要な知識は入社後に身につけてもらう方が、効率的ということですね。
そう思います。
その他に、採用における反省点はありますか?
HTML/CSSのコーダーさんを採用したことがあったのですが、コーディングは毎日新規サービスを作っていたら毎日必要ですが、1回作り終わってしまうと次の新規サービスや画面が大きく変わるタイミングでないと、なかなか稼働するタイミングがありません。採用したものの、なかなか活躍の機会が少なくなってしまいました。
採用した理由としては、外部に都度委託するにはコストがかかるからということでしょうか。
それもありました。当初は自分が何でもやっていたので、“ちょっとここだけ修正したい”ということがどんどんスタックしてしまう時期があって、コーダーさんがいてくれると良いなと思ったんです。
なるほど、中長期的な視点で考えた方が良いということですね。
ええ、コーディング関連の業務がない時は、別の業務をお願いしていました。本人的にもコーディングが将来的にはAIに代替される可能性を危惧していたので、未経験のプログラミング言語にも取り組んでいました。今後のキャリアにおいて、新たな挑戦の機会になったのは良かったと思います。
他にも採用のしくじり経験があれば教えてください。
スキルが尖っているメンバーを採用したことがあったのですが、たしかに持っているスキルは素晴らしいものの、うちの会社ではなかなか使う機会がないということがありました。こだわりが強く「このプログラミング言語じゃないと開発しません」と言われてしまうと、それに合う案件を探してくる必要があります。見つかるまでは何もしない時間が生まれてしまいました……。
ちなみに、その方の使用言語は?
C++など、有名な言語ではあるのですが、我々が得意としているWebサービスの開発においてはあまり使われない言語なので、上手くマッチングしませんでした。当時は採用についての考えが足りず、尖っていてこだわりが強いのが個性的で面白そうだなと感じてしまったんです。まさかそれがチームに大きな影響を与えてしまうとは思いませんでした。
200項目のスキルチェックと深掘り質問で採用精度をアップ
さまざまな経験を踏まえて、今エンジニアの面接において重視しているポイントはありますか?
スキルの質問は一通り行います。それ以外には、我々は人数が少ないチームで、1人の採用インパクトが大きいため、コミュニケーション能力は大事だと思います。コミュニケーションが取れないとその方がチームの中で大きなボトルネックになってしまうので、そこは非常に重視しますね。
コミュニケーション能力については、具体的に面接でどのような質問をされますか?
例えば非エンジニアのメンバーにシステムの構成やアルゴリズムの仕組みを説明できるかどうかは、面接でも確認します。そういったスキルに課題意識を持っている方が多い印象なので、磨いておくと大きな強みになると思います。また、我々のようなフェーズでは、渡されたタスクを消化するだけでなく、次に何をするべきなのかを一緒に考え、密にやりとりしていける方がマッチすると感じます。
スキルについてはどのようにチェックされているのでしょうか。
200項目ほどのスキルチェックシートを作っており、具体的なプログラミング言語やフレームワークの知見を問う質問や、正社員であればマネジメントスキル、日本人ではない方に向けては日本語がネイティブレベルかどうかなどの質問を網羅したシートを作っています。採用だけではなく、これを元に社員の給料も決めています。
定量的にスキルが分かるようにされているのですね。質問項目を決めていく上でのしくじり経験もあるのでしょうか?
会社において重要なものから質問項目を定めていったのですが、質問項目が増えていくと広く浅い質問ばかりする面接になってしまい、全体的に浅いスキルを持った方を採用してしまったことがありました。そうするとその方1人にプロジェクトを任せることができなくなるので、もっと深掘りする質問を加えるようにしました。
どのように深掘りされているのでしょうか。
例えば、あるプログラミング言語について知っているかどうか聞くと「知っています」と答えていただく方が多いのですが、名前を聞いたことがあるだけなのか実務で使ったことがあるのか、あるいは趣味程度でちょっと触ったことがあるのかで全くレベルが異なりますよ。そのため、その後の質問で「どのバージョンを実務で使っていましたか?」と聞くようにしています。しっかりその言語に携わっていれば、バージョンを知っているはずです。
なるほど、できるだけ具体的に聞くようにしているんですね。
はい、面接される方も「深掘りされるんだな」と認識して軽い気持ちで「知っている」とは言わなくなるという効果もあります。知らないものは知らないと素直に言ってくれた方が信頼できますし、次の質問へスムーズに進められます。
その他にはどのような深掘りをされていますか?
プログラミングして終わりではなく、GitやCI/CDを使って本番反映するまでの一連の流れは共通でお聞きしています。構築から運用まで面倒見られる方でないと、今の弊社のフェーズとしては合わないので、それを理解できているかは重点的にチェックしますね。また環境の切り分け、テストプログラムを具体的にどうするかも聞いています。
面接時点で十分なスキルはないものの、成長への期待感を持って採用されることもありますか?
ありますね。例えばデータベースの構築について口頭で説明してもらうということもよくするのですが、アプリのエンジニアさんだとデータベースの構築をやってこなかった方もいらっしゃいます。それでも、組んだことはないけれどこうやってやったら出来そう、と考えられる方もたまにいます。そういう方で将来的にバックエンドのエンジニアもやってみたい方は、「プログラミングの吸収スピードが早そう」と判断したときに採用することもあります。
正社員・業務委託の棲み分けはどうしてる?
正社員、業務委託、受託と雇用形態はさまざまですが、コスト的な観点はもちろんありつつも、棲み分けや押さえているポイントはありますか?
正社員は採用までに時間がかかりますし、取り返しがつきにくいので、慎重に採用するようにしています。一方で業務委託は、リソースの確保までが早いですし、ミスマッチだった時も解除がしやすいです。ですから、一緒に働いてみたいと思ったらまず業務委託で何ヶ月かやってみて、お互いに合うと実感できてから正社員化するというのが、一番ミスマッチが少ないと思っています。
受託については我々も受託会社なので弊社がどこかに依頼することはないのですが、まるごとお任せできるチームを確保できるのがメリットではないでしょうか。
スキルレベルで見ると、それぞれの雇用形態で違いは感じていますか?
業務委託は副業でやられている方も多いので、本業がちゃんと出来てプラスオンで副業もやられるという点から見ても、スキルが高い方が多いと思います。正社員でもスキルのレベルはもちろん高い方が良いのですが、どちらかと言うとマネジメントスキルが求められますので、そこは向き不向きもあるかもしれませんね。
優秀なエンジニアを獲得するためのポイントがあれば教えてください。
まずは業務委託で半年ほど一緒に仕事をしてみて、良いなと思う方を正社員にするのが、一番ミスマッチが少ないと感じています。スキルも完全に把握した状態で迎え入れられますし、オンボーディングもしっかりされた状態で入ってくることになるので、社内体制の構築でも非常にスムーズではないでしょうか。
事業を成長させていくための理想的な開発体制について、足澤さんはどのように考えていますか?
個人的にはエンジニアは3年程度で転職した方が良いと思っています。というのも、エンジニアは新規サービスがいくつもあって毎年のように部署が変わる会社でない限り、1社で得られるスキルが限定され、別のスキルが身につかないとエンジニアとしての市場価値がどんどん下がっていってしまうからです。ですから企業としても、3年でエンジニアが辞めても問題ない体制を築くことが健全なのかなと思います。
エンジニアもフリーランスが増え、多様な働き方が増えていますよね。
ええ。弊社でも正社員より業務委託の方の人数が多いです。正社員にはマネジメントを求めますが、業務については正社員と業務委託のボーダーを設けていません。タスクだけ投げると言うよりも、次にどんなサービスを作っていくべきか相談し合うチームワークを大切にしています。正社員と業務委託で分けるよりも、それぞれに一番働きやすい働き方をアサインしていくことが求められているのではないでしょうか。
転職も受け入れられるように組織を作っていらっしゃるのでしょうか。
これ以上スキルの発展がないと言う場合は、転職を考えている方を無理に留めておこうとはしません。人事には怒られるかもしれませんが(苦笑)。
とてもフラットに接していらっしゃるのですね。最後に、御社の今後の展望についてお聞かせください。
自社サービスである『ポモチ』の成長はもちろん、受託開発も引き続き積極的に取り組んでいきます。我々は元々受託開発をするために創業したわけではなかったのですが、受託開発をやるようになって、受託開発はクライアント様の自社開発なのだと気づきました。
自社事業をやるのも楽しいのですが、他の会社さんの自社事業をがっつり作り込むというのも、とても好きなんです。作ったサービスは我が子だと思って開発するので、そういったドライではない開発スタイルをお求めの方がいたら、ぜひお声がけいただけると嬉しいです。
ライター
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから