もしも技術面接について一つだけ変えられるとしたら
技術職の次のポジションを探して、色々なタイプの面接を何回も経験してきました。持ち帰り課題やデータ構造とアルゴリズム、解答の書き出しなど、ありとあらゆる面接を経験してきたからこそ、今となってはどんな面接形式が良いか悪いかすらもうどうでもいいくらいです。
でも、業界のエコシステムに変わって欲しいと心から望む変化があります。それは、面接の後にフィードバックを提供することです。はい、叫んでいます。なぜなら、これほど簡単で基本的な礼儀すらどこでも守られていないなんて信じられないからです。そして、誰も気にしていないように見えるんですよね?
願わくば、応募段階でのフィードバックは忘れてもいい。でも、候補者が3ラウンドも1時間もかけた技術面接に臨んだ後で、不採用の理由すら語らないって、これが今の私たちの業界の落とし所なのでしょうか?
候補者からのスキルアップや継続的な学習を話しますが、あなたの会社は面接のスキルをアップスキル&学習していますか?それとも、常にパイプラインを満たし、最高中の最高を採用することだけが重要なのでしょうか?
個人的なエピソード
この無意味で混沌とした面接のスタイルの中でも、私はdeepsourceでかつてないほど素晴らしい面接体験をしました。
3つの面接ラウンドがありました:
- 私の仕事について、そして私が何をしているのかについてのイントロダクションコール。
- コードペアリングセッション(ペアプログラミングのようなもの)で、1.2時間で意味のある何かを一緒に構築しました。
- 伝統的なシステム設計ラウンド。
不採用だったにも関わらず、フィードバックを求めたところ、以下のような返答を得ました。
この2つのポイントには心から同意します💯。私のシステムデザインのスキルは常にグレーゾーンにあり、時間を見つけては改善しようとしています。少なくとも今は、その分野で取り組む必要がある具体的な証拠があります。
シニアエンジニア/マネージャー/CTO/創業者への丁寧なフィードバック
面接を担当している皆さんへ。この候補者は十分ではないとHRにどのように伝えていますか?明白な理由があるはずですよね?頭の中で分かっているはずですが、それを2行のパラグラフにまとめて書くことに何が障っているんでしょうか?
「良いソフトウェアエンジニア」にはコーディングスキルだけでなく、優れたコミュニケーションスキルが求められると言われていますよね?その場合、ちょっと立ち止まって考えてみてください。面接の「途中」や「終わり」にどのようにコミュニケーションを取っていますか?それを改善しようとは思いませんか?
もし面接の数が多すぎて、連続して面接を実施していたり、締め切りが切迫していたりで、思考を書き留める時間がないというのなら、最低限次のようなことを試してみてください。
(全開示:私は面接官ではなく、今まで誰を面接したこともありませんが、これが私ならどうするかという信念です)。
- 面接の始まる前に5-10分を割いて、候補者の履歴書やポートフォリオをじっくりと観察してください。自己紹介している内容を読み解き、各履歴書を短い物語として読んでください。これで最大で5分かかるでしょう。
- 面接中に彼らが問題を解決しようと奮闘している間(そして気まずい沈黙が流れる中)、候補者への印象を書き留めてください。
- 面接が終了し、彼らとの進展を見込まないと決断したら、その判断に至った理由を2分で書き留め、HRに依頼して、明らかな「不採用テンプレート文」に「コピペ」して候補者に送るようにしてください。
たったこれだけです。本当にそんなに難しいことでしょうか?
候補者へのアドバイス
全てのラウンドで最善を尽くしてください。最近学んだことは、もし全てがうまくいっても、選ばれない可能性が常にあるということです。フェアなゲームではない(決してそうなることはありません)。だからと言って諦めないで、学び続けてください。希望の職に就けますように👍
さようなら👋
こちらの記事はdev.toの良い記事を日本人向けに翻訳しています。
https://dev.to/bhupesh/if-i-could-change-one-thing-about-tech-interviews-3464