🔰 概要
未経験からソフトウェアエンジニアへ転職(就職)する際に、採用側が見ているポイントについてです。
採用側は誤った人材を採用すると、金銭的にもチームへも大きな損出になるため、面接の際は通すかどうかを慎重に見ています。
✅ 【前提】採用ミスによる損出
正確な数字ではありませんが、採用ミスによる損出は、大雑把にこのぐらいの金額になります。
- エージェント経由などでの採用コスト: 年収*0.5 = 400*0.5 = 200万円
- 給与に対して不適切な労働価値: 見込み価値毎年380万円 * 0.3(30%期待よりも少ない) = 114万円/年
- チームメンバーへの影響(教育コストなどによる工数)100万円/年
概算ですが、合計、200+114+100 = 400~500万円程度の損出ぐらいには考えられます。
また無期雇用契約の正社員形態の場合には、業務委託などと違い簡単には解雇ができないため、毎月(毎年)雇用し続けることによる赤字の継続(期待する労働に対しての価値が出ない)になります。
そのため採用する側は正社員として雇う場合にはリスクなども考慮して慎重に採用を行います。
自分がもし採用する側であったらそう考えるのは当然です。
採用シーンではシビアに見られ、採用後はわりとゆるく、さらに慣れてくると「思ってたよりも普通だな・・・」となるケースが多いです。
✅ 未経験からソフトウェアエンジニアを採用する際に採用側が見ているポイント
1: ソフトスキル
「ソフトスキル」というのはかなり抽象的なので、具体性を高めると以下のような項目です。
- 他者と意思疎通を行って適切なコミュニケーションができるかどうか
- 質問に対しての意図を掴んで受け答えができているか
- 周りに合わせて空気を読めるかどうか
- 相手の意図を把握できるかどうか
- 性格: 明るくポジティブな雰囲気があるかどうか
- 場に合わせた身なりをできるかどうか
- 人格やこれまでに問題がある人物ではないかどうか
- これまでに努力経験があるかの有無
2: ポテンシャル
主に未経験からエンジニアへ転職(就職)する際には、新卒、第二新卒、中途のどのケースでも、基本的に実力(技術力)が伴わない状態のため、ポテンシャルが見られます。
ポテンシャルを感じさせるような人物の特徴は以下です。
- これまでに努力してきた結果が他人が分かる形で存在する
- 例) 学歴、前職での取り組みとその結果、何かしらの活動による結果
- 自分で勉強してきたプログラミング(技術)の内容と試行錯誤によるあなたのオリジナルのストーリー
- オーソドックスな技術トレンドの把握
- フロントエンドとAPIを分けて、AWSなどのクラウドサーバーにデプロイするなどのモダンなウェブアーキテクチャの定番構成に関して
- なぜソフトウェアエンジニアで仕事をするのか、という明確な動機
- ソフトウェアエンジニアとしてどうなりたいかのキャリアパス
3: コーディング力(データ構造とアルゴリズム)
ソフトウェアエンジニアの仕事はレベルが上がるにつれて、最終的に原点回帰したベースラインの能力が重要になります。
- ベースラインの能力の例
- アルゴリズム力
- キャッチアップ力
- 抽象と具体の行き来(思考力)
- 仕事遂行力
- 求められる結果に対してタスク化し、それを期日までに終える
- 必要なものと不要なものを切り分けて、不要なものを可能な限りやらない
- 工数(コスト)意識
- 他者とコミュニケーションを適切に取り、周りと一緒に仕事を進める力
その1つとして、コーディング力(データ構造とアルゴリズム)が見られます。
オンライン上でのコーディング試験を採用試験に利用する企業も多いですし、画面共有などで採用試験でコーディング力を見る企業も多いです。
AIで複雑なアルゴリズムなども解いていける時代になりましたが、最終的にその出力されたコードをハンドリングするのが人間になることや、AIをハンドリングして開発を進めるのが人間である以上、アルゴリズム力は今も必要な能力です。
4: オーソドックスな機能が入っているオリジナルのウェブアプリ(ポートフォリオ)
- 独自ドメインでのデプロイ
- CRUDを伴う何かしらの機能
- ユースケースがある具体的な機能
- データベース
- 認証(OAuth認証, トークンによるメールを使った認証など)
- HTML, CSSによるUI, またはReactなどを使ったモダンフロントエンドによるUI
- APIの利用(サードパーティのAPI、独自のAPI、など)
- Git, GitHubの利用
一部がなくても大丈夫ですが、採用側から見た際に「この人は、開発チームに入ってキャッチアップしていけばなんとかついていけそう」という評価になれば、基本的に技術力の面ではPASSできます。
一方で「この人の技術力では、キャッチアップを最初にがんばってもらったとしてもついていくのは不可能」と判断されれば技術力が原因で落とされます。
応募する際の枠によっても評価に重きを置かれる場所は変わります。
まんじがフロントエンドでフリーランス化する際には以下の3つが主に要因となって技術面ではPASSできたことが推測されます。
- https://kujira-seo.com
- フロントエンドが一定のレベルで書ける証拠
- サーバーサイド側(API, データベース)も最低限理解している証拠
- インフラ側(VPSによるデプロイ)も最低限理解している証拠
- Reactベースの技術質問
✅ 採用側の視点ですごいシンプルに考えてみると...
「この人を雇った場合、少しのキャッチアップや勉強(2~3ヶ月程度)で、チームに馴染んで開発を進めていけると推測できる」
その手段として、
- ポートフォリオによる技術力の証明
- 実力不足の際に、がんばっていけると錯覚するような何かがある
- これまでがんばってきた経験
- これからソフトウェアエンジニアとしての意欲が強く感じられる
「直近で採用面接をした未経験の人材よりも何かしらの領域や分野で引きがある」
直近の採用面接をしてきた人がプログラミングスクールのクローンアプリばかり作ってきているとしたら、オリジナルで自分で試行錯誤してデプロイまでしてきた人がいれば、後者の人がおそらく選ばれます。
✅ その他の関連情報
運もある
ちょうど受ける企業が多く採用をしようとしている時期などであれば、入りやすいこともあります。
なので、自分でコントロールできる側面を向上させることも重要ですが、ある程度の数を打って運を引くということも重要になります。
ポテンシャルの要素
未経験からソフトウェアエンジニアに転職する際には、主にポテンシャル採用になるので、ポテンシャルを感じさせる要素を自分側が用意することが重要です。
- 数ヶ月間自分で勉強してきた事実
- ポートフォリオをモダンな技術スタックなどでデプロイまでしてきた事実
- プログラミングの勉強で数ヶ月にわたって、試行錯誤してきた事実
- これまでに何かしらの分野でがんばった事実
- これからソフトウェアエンジニアをがんばるであろうと錯覚させられるだけのあなたにとってのオリジナルの言葉とストーリー
✅ 具体的なアクション
- 採用する人(会社)の立場になってできるだけ考えてみるトレーニングをする
- モダンなウェブ開発の技術スタックについて調べる
- ポテンシャルを感じさせるような人物は一体どういう人なのか考えてみる
- ポートフォリオを充実させる
- そのためには、日々のポートフォリオ作成と、勉強をスケジューリングして取り組む