はじめに
こんにちは。壮(sew_sou19)と申します。
僕は、コロナ禍で転職市場が冷え込んでいると言われた状況でも、実務未経験からエンジニアとして自社開発企業2社から内定をいただくことができました。
うち1社は社員規模が1,000人を超えるいわゆるメガベンチャー企業で、現在はそこでバックエンドエンジニアとして働いています。
そんな転職活動を通じて感じたのは「情報が何より大事」ということです。
と、「転職で得たい結果」という最重要なことを決めるためにも、情報を知っていると知らないとで判断が大きく変わってきます。
僕自身、情報を集めながらエンジニアとしてのキャリアを描いていましたが、知れば知るほど「もっと早く知りたかった」というものばかりです。
現に、Twitterで発信すると毎回それなりに反響をいただけました。
僕と同じように未経験からエンジニアを目指す方には、いち早く情報を知って有利に立ち回れるように、知っておくと周りと差をつけられる情報をnoteにまとめました。
では早速まとめていきます。
1)WebサイトとWebアプリの違い
今となってはその違いは当たり前だと思うようになりましたが、勉強を始めた当初はよくわかっていませんでした。自分が進みたい方向(Web制作なのかWeb開発なのか)に関わってくるので、超重要です😇
1-1. Webサイト
1-2. Webアプリ
※ネイティブアプリ(iOSやAndroidにインストールして使用するアプリ)と混同させないために"Web"アプリと呼称してます。
2)Webアプリの役割分担
「Webアプリが何か」はなんとなく分かったかと思います。
その上で、「じゃあWebアプリを作るにはどういう役割・職種があるんだろう」と僕は思ったので調べました。
よく「フロントエンド」「バックエンド」と聞く部分はここのことです。
2-1. フロントエンド
2-2. バックエンド(サーバーサイドとも言う)
2-3. インフラ
3)IT業界の企業形態
「IT業界の企業形態や職種ってよくわからない!」
僕も最初全く同じことを思っていました。そのため業態と職種に分けて僕なりに調べたことをまとめます。
3-1. 自社開発企業(Web系)
いわゆるWeb系企業。
大多数がBtoCのサービス(食べログやTwitterなど)で、このnoteを運営するnote株式会社もここに該当します。
3-2. 受託開発企業(SIer)
いわゆるSIer(エスアイヤー)企業。
企業向けの業務システムを開発したり、企業に依頼されて開発する。SIerは「システムインテグレーター(System Integrator)」から来ている。
3-3. SES(System Engineering Service)
イメージとしては派遣に近い(人材派遣ではない)。
3-4. ITコンサル
エンジニア職とは一線を画すが、IT業界の企業形態の一つなのでご紹介しておきます。
4)エンジニアの職種-下流工程-
【職種】:まず下流工程を3つに大別します。
そもそも「上流工程?下流工程って何?」って方はググってみてください(簡単に情報に辿り着けます)。とはいえ簡単に説明すると、システムを作る流れのうち「どういうシステムにするか?」など最初の方の工程(川でイメージするところの上流)=「上流工程」、決められた仕様を実装する後の方の工程(川でイメージするところの下流)=「下流工程」、というイメージでOKです。
未経験から入る場合は、多くの人が最初はいずれかに該当するかと思います。主に開発やテストなどの下流工程を担当することが多いです(会社によります)。
4-1. フロントエンドエンジニア
近しい職種に「コーダー」や「マークアップエンジニア」がありますが、詳細な説明は省きます。簡単に説明すると、いずれもフロンエンドエンジニアの枠におさまる職種で、業務の幅がより限定的(コーディングをするだけ、扱うのがHTMLとCSSだけ、など)というイメージです。
4-2. バックエンドエンジニア
サーバーサイドエンジニアとも呼ばれます。いわゆる「Webエンジニア」と呼ばれる職種で一番イメージが近いのがこの職種だと思います。
4-3. インフラエンジニア
SESと相まって悪いイメージが先行してますが、しっかりとスキルアップすればしっかり稼げる職種だと思います。専任のインフラエンジニアだとサーバーとにらめっこになるので、コードを書くことやシステムを設計することはほぼないです。
5)エンジニアの職種-上流工程-
ある程度経験を積んだ上でのキャリアアップの選択肢として。企画や要件定義などの上流工程を担当することが多いです。上流工程になるほど給与は上がります(その分経験や、技術以外のスキルも必要)
5-1. SE(システムエンジニア)
5-2. 社内SE(コーポレートエンジニア/情シス)
社内の業務が正常に行えるように整備したり、社内の業務効率化が命題です。
イメージだけで言えば「エンジニアとしてゴリゴリ働きたいというよりは、家庭などを大事にしたい方におすすめな職種」という感じです。ただ、会社を回すためにめちゃくちゃ重要な職種です。
※社内SEと自社開発企業との違い
「会社内の人が使うシステムの開発(=社内SE)」→本来の事業は別にある
「会社外の人が使うシステムの開発(=自社開発)」→本来の事業の開発に携わる
5-3. PM・ディレクター
6)転職活動で意識したポイント
未経験からの転職は正直キツいと予想していたのでめちゃくちゃ戦略を立てて臨みました。
6-1. 転職活動の準備
6-2. ポートフォリオ作成
6-3. 面接対策
7)企業に刺さるポートフォリオのポイント
7-1. 構想 → 何のために作るか
7-2. UI/UX → ユーザー視点の意識
7-3. 機能/コード
7-4. インフラ
※8)〜9)で詳細書きます。
7-5. その他
8)アプリ公開先の種類と評価ポイント
大きく2種類。アプリを公開する観点で見ていきます。
8-1. IaaS(アイアース、Infrastructure as a Service)
8-2. PaaS(パース、Platform as a Service)
8-3. 評価されるポイント
一例ですが、下記を理解して実装していること。
9)ポートフォリオ公開先(インフラ)のポイント
9-1. Webアプリの場合
Webアプリ=動的サイト。RailsやLaravelで作られるものはこれ
9-2. Webサイトの場合
10)未経験からのエンジニア転職で使用した媒体
10-1. Wantedly
10-2. スクール (エージェントに近い)
10-3. 直応募
10-4. Green
ついでに、「意外と知られていない、未経験からのエンジニア転職の常識」は以下です。
+α:面接対策で実践すべきポイント
1)〜10)でプログラミング学習から転職活動において、知っておくべき知識を紹介してきました。
最近このnoteを見直して「転職を成功させるために必要なポイントも加えよう」と思ったので、今回リライトを兼ねて追記しました。当たり前のものばかりですが、以下です。
1. 自己分析
面接対策で最も重要なのが「自己分析」です。
面接官は、「なぜエンジニアになりたいのか」「流行りに流されて半端な気持ちでないか」ということを見ています。それらに納得感を持って回答するためには、自己分析が重要です。
・まずは、以下の質問への回答を書き出してみてください。
・次に、面接官に対して話せるようにまとめてみてください。
・次に、家族や友人に対して何も見ずに伝えてみてください。
・そして、気になった点をフィードバックをもらってください。
これをやるだけでも自己分析の深さが大きく変わってきます。
特に「自分以外の誰か」に話してみて、フィードバックをもらうのが重要です。もし「家族や知人は恥ずかしい…」という場合は、転職エージェントに登録して担当の人に話してみたり、「転クエ」などエンジニア転職に特化したコミュニティを利用するのがおすすめです。
2. 企業分析
自己分析で自分の軸を定めるだけでは、選考を通過できません。
選考で合否を左右する最大のポイントが「企業分析」だと思って対策すべきです。
事実、内定先の企業からのフィードバックで「君はうちに合うと思った」と言っていただけましたが、それは完全に狙いに行った結果です。
そのために行ったことは以下。
ポイントは以下のようなイメージです。
↓
↓
これを徹底的に行って面接の中でアピールできれば、未経験者に重要な「カルチャーマッチ」をクリアできます。
企業分析によるその他の効果は以下。
3. 面接練習
自己分析で軸を定め、企業分析でアピールポイントを明確にしたら、内定まであと一歩です。
最後にして最大のポイントは「面接練習」。これに尽きます。
転職活動なら当たり前のことですが、面接練習中に以下を徹底することで面接が上手くなり、結果的に内定につながります。
①鸚鵡返し
質問で聞かれたことをそのまま返す手法です。「志望動機はなんですか?」「御社を志望した理由は〜」という話し方です。これを意識するだけで冗長な回答を避けられます。
②笑顔で話す
笑顔で話すと「あ、こいつは余裕があるな」と感じてもらえます。対面でももちろん重要ですが、特にWeb面接の場合は非言語で伝わる情報が表情しかないので特に意識していました。
③結論から話す
これは当たり前すぎて逆にできてないと面接の通過率が落ちます。簡単な実践方法は、「結論から申しますと〜」や「●●です。理由は3つありまして〜」などが効果的です。
④論理立てて話す
「結論から話す」もこの一部ですが、コミュニケーション能力があるか?はここで見られます。質問に対する回答が、「なるほど!」となるか「え、、、?結局何が言いたいの?」となるかで合否が大きく変わってきます。簡単な実践方法は【結論→理由→結論】の構成です。
⑤繰り返し面接練習
意外と疎かにする方も多いのですが、超重要です。繰り返し練習することで、質問に対しての回答の引き出しを早く見つけられるようになりますし、何より回答の仕方をどんどんブラッシュアップすることができます。
結構多いのが、事前練習なしでぶっつけ本番で面接に挑むパターン。これは相当アドリブ力やトーク力がある方以外は爆死必須ですので、絶対に事前に練習を繰り返し行っておくことをおすすめします。
⑥第三者の客観的意見
これも必須です。自分だけで考えているとどうしても考えが偏りますし、自分が思いもよらない抜け漏れがかなりあります。フラットな視点で第三者に見てもらうとその辺りが補正できて、本番で突っ込まれる前に対処できるのでおすすめです。
⑦話すのではなく伝える
特に面接が苦手と思ってる方はこの思考が重要です。どうしても「あれも話さなきゃ、これも話さなきゃ」という思考になってしまいがちですが、面接は「話す」場ではなく「伝える」ためのコミュニケーションの場です。
つまり日常生活の会話と同じです。「話したいことを話す」のではなく「面接官に伝える」という意識を持つと世界が変わります。
⑧本番の面接の数をこなす
どんなに準備をしても最初の面接からいきなりうまく話せる人は稀です。練習と本番では緊張感が全然違います。特に最初のうちは不安しかないので、不安が緊張を呼び、緊張が不安を呼ぶという負のサイクルに陥りがちです。
ただ、それは数をこなして場慣れすれば次第に解消していきます。「この会社はそんなに志望度高くないしな…」と書類通過したにもかかわらず辞退する方が結構いらっしゃいますが、面接練習と割り切って受けに行くことを強く推奨します。
⑨話すことを決めてから話す
場慣れしてない&想定してない質問が来ると結構陥りがちなのが、話す内容をまとめる前に話し始めて、結果冗長な回答をしてしまう、というものです。
もしすぐに話し始めるのが難しい場合は、「少しお時間をください」と断ってもいいので、話す内容をまとめてから話しましょう。
おわりに
いかがだったでしょうか?
僕がプログラミング学習を始めてからエンジニアへ転職するまでに、困ったことや知っておくといいことをまとめ、さらに転職において効果の高いポイントまで追加しました。
自分自身、どれも「もっと早く知っていれば」と思うことばかりですし、逆に言えばこれらを知れたので、転職活動を有利に進められた面もあります。
ここまでに紹介してきたことを生かして、僕が実際に転職活動を成功させるために立てた戦略や、実践して効果が高かった面接対策などの具体的な解説・実例をより実践的な形でnoteにまとめています。もしご興味あれば覗いてみてください🙇♂️ ※宣伝ですw
---------------------------
---------------------------
---------------------------
---------------------------
マガジンもあるので、まとめて見たい!という方はこちらの方がちょっとですがお得です。
この記事のご感想はTwitterなどで寄せていただけると非常に喜びます!
この記事を読んでくださった皆様の転職活動がうまくいくことを切に願っております^^