新卒で自社開発企業にエンジニア就職

エンジニア転職で上手く人の「技術レベル」の目安とは【個人的見解】

ノロノロ

どうも、大学生エンジニアのノロノロ(@noronoro_yurupoです。
エンジニア転職で上手くいく人の技術レベルってどれくらい?転職の小テクとかそんなんじゃなくて、純粋な「採用レベルの技術力」を教えてくれ。

読者(社会人)

という人に向けて記事を書きました。
記事の内容
・エンジニア転職で上手く人の「技術レベル」の目安とは【個人的見解】
かなり具体的なことなんですが、結論から言います。以下をご覧ください。
※ポートフォリオ作る前提で話すので「ポートフォリオは作らないなあ」という人は時間の浪費になるかもしれません。もうしわけございません。
・CRUD機能がついている
・ログイン機能がついている
・テストコードが書いてある
・チュートリアルレベルを超えていること

上記はポートフォリオのレベル感です。
・アウトプットを「継続」してしっかりしているかどうか。そして証明できるかどうか。
僕の経験上ベースだと、ここらへんが最低限のレベルだと思います。

上記の基準を満たしていれば、数を打つことでエンジニア転職をすることはできると思います。SESとかではなく、自社開発企業ですよ。

僕の同期で自社開発企業に合格した人や、僕が自社開発企業に合格したときのレベル感はだいたいこんな感じだったので、結構参考になると思います。

もう少しだけ詳細に話していきたいと思います。




エンジニア転職で上手く人の「技術レベル」の目安とは

冒頭でも言ったように、基準は以下を見ておけば大きくハズレることはないと思います。

・CRUD機能がついている
・ログイン機能がついている
・テストコードが書いてある
・チュートリアルレベルを超えていること

上記はポートフォリオのレベル感です。
・アウトプットを「継続」してしっかりしているかどうか。そして証明できるかどうか。

CRUD機能がついている

エンジニア転職を考えている人でポートフォリオを作成しようと考えている人は多いのではないでしょうか。

その考えは正しいと思います。僕も作りましたし、エンジニア転職で上手くいっている人の大半はポートフォリオを作っているので。

そういった中でポートフォリオに「CRUD機能」が実装されているかは1つのポイントなんですよね。

CRUDとは

・Create(生成)
・Read(読み取り)
・Update(更新)
・Delete(削除)
この4つの総称のことを言います。フォーム入力でデータをDBに保存して、ビューで出力して、出力したデータを特定のユーザーが更新して、さらには削除することができるというものです。

ユーチューブコメントとかってCRUDそのものです。保存できますし、保存したコメントを見れますし、編集もできますし、消せますよね。その機能をつければOKです。

ここはそこまで難しいことではなく、コンピューター言語(Ruby、PHP、Python等)の基礎的な文法事項をしっかり学んで、DBを少し触ればできるようになりますよ。

ログイン機能がついている

ユーザーがログインをして、ログアウトできればOKです。もっとあればいいのは

・パスワードの暗号化
・パスワードを忘れたときの再設定機能(メールアドレスを送信させるやつです)
・SNS認証(Google、FaceBook等のソーシャルアカウントでのログイン)
この中で1番評価が高いのは「SNS認証」ですね。

SNS認証をするのはAPIを上手く利用し、DBを絡めた実装力が問われてくるので必然的に評価も高くなるんですよね。

ただ、本番環境でのSNS認証はちょっと難易度が高いのでローカル環境だけでやるのもいいと思います。当時の僕は本番環境まで手が回りませんでした。笑

Githubアカウントだけの登録だけにしてサービスを利用するユーザーの質を向上させる意図があったのですが、技術的な問題で実現できませんでしたね。

実際面接の場でも「SNS認証があればサービスとしての質がグッと上がるのにね〜」みたいに示唆されたこともあったので、余裕がある人は挑戦してみてください。

シンプルなログイン機能に関しては、実装されていて普通という認識まであるので、挑戦しましょう。
Railsとかを使うならgemのdeviseを使えば一瞬なので、そこまで苦労することはないかと思います。

テストコードが書いてある

テストコードは思っている以上に重要な要素です。

現場に入って初めにやらせてもらうことは大抵「テスト」ですし、テストは開発をしていく上でもかなり重要なんですよね。

ほんとに未熟だった頃の僕はテストの重要性がまるでわかってませんでした。

・ブラウザで直接確認したらよくない?
・テスト書く時間で他のことやればよくない?
・別にバグってもエラー内容わかるしよくない?
浅はかでした。開発の規模が大きくなっていくにつれてテストの重要性は上がっていきます。

個人アプリ程度の規模ならべつにテストなんて書かなくてもいいと思いますが、TwitterやInstagram規模のサービスになるとテストは必須です。

すぐにバグを見つけれることは迅速なサービス復旧につながりますし、万が一の問題にもすぐ対応することができますからね。

ちなみに当時の僕はやりませんでした。ただ、今なら間違いなくやりますね。テストは地味でめんどくさいかもしれませんがやっておくのが吉です。

チュートリアルレベルを超えていること

「チュートリアルレベルのポートフォリオを作っても、そこまで評価につながらない」というのはわりと正しいというのが僕の見解です。

なぜかというと、実務未経験プログラミング学習者のポートフォリオレベルは上がっていますし、今の時代プログラミングは誰でも始められるからです。

チュートリアルレベルなら「プログラミングをやるだけ」でそこまで努力せずとも到達できてしまうんですよね。
なので、採用側もチュートリアルレベルのポートフォリオはそこまで評価しない傾向にあり、見ないことすらあります。

こうなると「じゃあチュートリアルレベルってなんなんだ!?」となりますよね。僕の中の定義としては

・スクール卒業程度の技術力→ギリセーフ(スクールで作ったものはダメ)
・Railsチュートリアル→アウト
こんな感じです。

スクール卒業後の技術力に関してはこちらの記事で詳しく解説しているので、ぜひ参考にしてみてください。
プログラミングスクール卒業後の技術力ってどんなもの?【経験者】 「自分の頭で必死に考えて、エラーを解決して、意図されたコード」がしっかり書かれてあるポートフォリオが理想です。

ポートフォリオはとりあえず完成させたらいいというものではないんですよね。「自分の技術力を証明するもの」になるので、完成度を上げていく必要があります。

アウトプットを「継続」してしっかりしているかどうか。そして証明できるかどうか。

これはポートフォリオ関係ありません。

日々のプログラミング学習をアウトプットしている人はエンジニア転職で上手くいく傾向にあるんですよ。例えば

・実装した機能の手順をQiitaで書いている
・ブログで技術書のアウトプットをしている
・勉強している技術のまとめブログを運営している

・Githubを積極的に動かしている
ブログ、Qiita、Twitterなんでもいいです。見せられるレベルでアウトプットしているのが重要なので。

僕の場合は基本的に履歴書に書いていましたが、URLレベルで証明できるものがあるといいと思います。

その人の「プログラミングに対する意欲」や「自走力」を測る大きな指標にもなるので、アウトプット記録は取っておいてください。




エンジニア転職する上で「プラスアルファ」あればいいもの

ここまで解説してきたことを実践すれば基本的にOKなのですが、まだ不安が残る人は以下に挑戦するにもアリですよ。

・AWS
・Docker
・Circle CI
ようはインフラ系を触るということですね。サーバーサイド側だけじゃなく、インフラもやっておくのがいいと思います。

バック側のエンジニアを目指していてもインフラの知識は必須ですし、初学者には少しハードルが高いがゆえに「目に見えて」評価につながりますからね。

僕はAWS、Circle CIが評価されました

僕が面接した企業さんでは毎回ほぼ確実に

AWSや自動テストの知見があるのはいいね〜

開発本部長レベルの人

と言われました。

実務未経験で取り組むには少しレベルが高いので「自走力」を評価することができましたし、文系というデメリットも吹き飛ばしてくれました。

ただ、「実装し切るのはかなりきつかったの」というのが事実です。

・AWS→Applicationエラー出まくり、Nginx動かない、EC2がバグる、DBが開けない
・Circle CI→何回やっても自動化できない
AWSに関しては何回「Herokuで妥協しようかな、、、」と思ったかわかりません。

しかし、何十回も壁を乗り越えることで明らかに技術力は伸びましたし、インフラ系を勉強することでサーバー側の理解にも深まりました。

確かに、AWSやCIのハードルが高いには事実ですが、一歩踏み込んで攻めていくとまた変わってくるのかなと。

・ポートフォリオ作成が主目的化するのはNG

ここまでポートフォリオに実装したほうがいい技術関連の話をしてきましたが、ポートフォリオ作成は主目的化するのはダメです。

確かに、エンジニア転職をする上でポートフォリオは大きな武器になります。ただ、ポートフォリオって完璧を求めすぎると終わらないんですよね。

・ここのデザイン微妙すぎるな。ちょっと色変えよ。
・ボタンのデザインがなんか違う。CSSいじろ。

・もう少し機能つけたほうがいいかな。
・CI終わったし、CDもやろう。
こういった向上心はほんとに素晴らしいと思います。上手くいく人の考え方そのものです。

とはいえどポーフォリオが主目的化すると「いつまでたっても終わらない。転職活動が始まらない」ということになるので、ポートフォリオのゴールをある程度決めるのがいいですね。

現場に入ってコードを書いたほうが、ポートフォリオを作り込むことよりもレベルは上がります。その前提を認識してポートフォリオ作成もほどほどにしていきましょう。

ということでエンジニア転職頑張ってください。僕も日々のアウトプット頑張ります。

ノロノロ

ここまで読んでいただきありがとうございました!
【転職特化】おすすめのプログラミングスクール3選【時間ない人】 「やることちゃんとやってる人」がエンジニア転職で上手くいく説。 20代後半のエンジニア転職で失敗しにくい「3つ」のポイントを紹介 社会人のプログラミングの始め方を徹底解説してみた【転職前提】 働きながらのプログラミングスクールは可能か?【無理じゃない】

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA