見出し画像

就職活動におけるいちばんの後悔

はじめに

こんにちは、昨日からはじめた就職活動体験記の第二弾になります。ちなみに昨日書いた記事はこちらになりますので、読んでない方はぜひ読んでみてください。これらの記事は文系から新卒でエンジニアになった私の体験記になっております。私の主観的な意見も多いと思いますが、自分が思ったことを忖度なく正直に書いておりますので是非読んでいただけますと幸いです。

エンジニア就活を通しての一番の後悔

私の就職活動は大変納得いったものになりました。しかしこの就職活動が落ち着いてから改めて考えると、「ああ、これやっとけばよかったな」と思うことが一点だけありました。今日はその話をしたいと思います。

私がエンジニアとして就職するためにおこなっておけばよかったと思うことは「Webアプリケーションをとりまく技術全般に対して学習すること」でした。Webアプリケーションをとりまく技術全般いうのは「HTTP」「TCP/IP」などの通信プロトコルについて、「アプリケーションサーバー」「webサーバー」などのミドルウェア について、「linux」 などのOSについての知識、「SQLインジェクション」などの脆弱性について、などなどです。ここにあげたもの以外にもたくさんありますが、一例として挙げさせていただきました。
これらは簡単にいうとアプリケーションを動かすために必要な知識です。

このように感じる理由は私のプログラミング学習経歴にあります。
私はプログラミングスクールでプログラミングの学習を始めました。Ruby on Railsを用いて簡単なCRUD、認証機能がついたWebアプリケーションの作成の仕方を学びました。そのような流れで学習をしていたのでフレームワークの使い方は理解しているのですが、フレームワークの裏側でアプリケーションがどんな動きをしているのかはあまり理解できていませんでした。
(全てのスクールがフレームワーク中心の学習じゃないとは思いますが、私が通っていたスクールはあまりセキュリティーのことなどは学習しませんでした。セキュリティーや脆弱性についてしっかり勉強できるスクールも存在します。)
その理解のなさが就職活動を通して、明るみになっていきました。

ここで私が言いたいことは、エンジニアを目指すのだったらフレームワークやプログラミング言語だけを勉強するのではなく、それ以外の技術に対しても学習することが大切ということです。フレームワークでアプリケーションを作ること、フレームワークを学習することが悪いとは全く思いません。
フレームワークを使うことで初学者でも比較的簡単にアプリを作れます。それが初学者の方にとってプログラミング学習における成功体験となり、モチベーションにつながるからです。とても素晴らしいことだと思っています。
しかしエンジニアを目指す以上はそれだけでは足りないとおもっています。

エンジニア就活を進めていくにあたって技術面接を受けたり、技術的な質問をされる場面が何回かありました。そのような時にWebの知識を学習していなかったために苦労することが多かったです。
例えば、「君の作ったアプリの中に検索機能があったと思うんだけど、SQLインジェクションがおこなわれることに対して何か対策をしてる?」(検索機能あるアプリ見せたら十中八九言われました)や
「負荷テストってしたことある?」「ブラウザでリクエストを送ってからレスポンスが返ってくるまでの流れ説明してみて」(これ有名だけど本当に聞かれるんだっておもいました。)などです。

正直私は技術面接がとても怖かったです。自分の知識のなさが明るみになる上にその対策をどうしたらいいかわからなかったからです。しかし、今振り返ってみると、上記(SQLの脆弱性)に挙げたことを勉強すれば比較的答えられるのではないかと思います。技術面接で聞かれることはフレームワーク自体のメソッドのことより、Web技術全般に対することが多かったです。そのような技術は言語や使うライブラリー、フレームワークが変わっても使える技術だからではないかと私は思います。正直これら周辺の技術の勉強をすることはたくさんの機能があるポートフォリオを作ることより大切なことではないかと強く感じました。

ではどのように学習すればいいのか?

現在エンジニアの方にメンターになってもらい学習管理をしてもらっているのですが、その際にWebの技術を学ぶために読んでおいた方がいい本、勉強方法を教わったのでそれを共有させていただきます。

Webを支える技術

スクリーンショット 2020-03-09 18.37.09

これは記事などで取り上げられることもあるのでみたことがある人も多いのではないでしょうか?この本にはWebサービスの実践的な設計や設計思想などが書かれています。メンターの方にエンジニアになるんだったら一回は読んでおいて欲しいと言われました。しかし、少しこの本を読んでみて、本の中身はそこそこ難しく、初学者の方が読むには難しいと思いました。プログラミング初学者の方には以下の本をお勧めします。

イラスト図解式 この一冊で全部わかるWeb技術の基本

スクリーンショット 2020-03-09 18.41.54

この本はWeb周辺の技術についてイラストでわかりやすく解説してくれています。入門書として読むのにぴったりなレベルとなっているのでWebを支える技術はまだ早いなと思う方に読んでいただきたいです。

③基本情報試験の学習をする

これもメンターのエンジニアの方に勧められた学習方法です。基本情報の試験範囲のことを学習することは現場で開発をする上でとても大切なことだとアドバイスをいただきました。資格を持っているかということより、資格の内容を知っているかどうかは技術者として信頼されるために必要なことらしいです。学習の方法は以下の本がお勧めです。

スクリーンショット 2020-03-09 18.46.41

キタミ式イラストIT塾 基本情報技術者 令和02年 (情報処理技術者試験)

最後に

エンジニア就活において高性能のポートフォリオを作ることも、エンジニアインターンにいって業務経験をつむことも大切だと思います。しかし、なかなか授業の関係でエンジニアインターンにいけなかったりだとか、どのようなポートフォリオを作ったらいいかわからないこともあるとは思います。
そんな人にお勧めなのがWebの周辺技術について勉強することです。
私はこれらの単元を早めに学習しておけばよかったとおもっています。
是非RailsやLaravelなどを用いて簡単なアプリは作れるようになったけど、
就活に向けて何をしたらいいかわからないという方はこの記事に載っていることをやってみてはいかがでしょうか?

明日も何か書きますのでみていただけますと幸いです。ではでは〜〜


この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
15
都内在住の大学4年生。法律が専攻だけど趣味はプログラミング。

こちらでもピックアップされています

就活体験記
就活体験記
  • 2本
コメントを投稿するには、 ログイン または 会員登録 をする必要があります。