今回は高卒のバックグラウンドから自社開発企業に内定を獲得したMasaさんに、プログラミング学習方法や就職活動に関してインタビューを行いました。
- 自社開発企業から内定が欲しい
- 未経験からソフトウェアエンジニアを目指したい
- 効率の良いプログラミング学習方法を知りたい
そんな方にMasaさんの成功体験をお伝えします。
MASAさん
高校を卒業後、半導体の工場にて8年間勤務。ワーキングホリデーを利用して、海外で1年間庭師として働いた後、プログラミング学習を始める。自社開発企業の内定を獲得し、バックエンドエンジニアとして活躍中。
目次
高卒完全未経験から掴み取ったサクセスストーリー「MASAさん」インタビュー
――MASAさん、インタビューお受けいただいてありがとうございます。まずは簡単に経歴を教えていただけますか?
高卒で働き始めました。半導体の工場で8年ぐらい勤務した後は、ワーホリ1年(庭師)を経験しました。その他にはブランクもありつつ、ビール店店主などで働いた経験があります。
プログラミングに関しては、完全に未経験です。
厳密にいうと、工業高校時代にC言語を黒板上でどのように動作するかみたいなことは習いました。でもPCを使っていないので当時は意味不明な状態でしたね。
――Recursionを始められたのはどうしてでしょうか。
海外志向の友達がTwitterで見かけたRecursionに応募したと聞いたのがきっかけです。「無料で、テスト会員になれる」という言葉に釣られて、Recursionの創業者のShinyaさんに直接Twitterから連絡を入れました。
その友達は早い段階で離脱したのですが、私はすっかりハマってしまいました。
自社開発企業から内定を取るため、Recursionのプロジェクトをポートフォリオに活用
――テストユーザーからのご参加ありがとうございます!それでは、MASAさんがどのようにRecursionを学習されたのか教えていただけますか?
Recursionは、多い日で14時間、少ない日でも3時間くらいは利用していました。言語は、JavaScript, PHP, Python, Javaを学び、他にも独学でSwift, TypeScript, Rudyなども勉強しています。
初めはオブジェクト、リストの概念やキャッシュなどを中心に学習していましたが、プロジェクトをやってみて、見た目の大切さやフロント側でもロジックを組めることを知り、後半はフロントに注力していました。
データ構造やOOPのコースは、他の方と比べるとそこまで完璧にできていないかもしれませんが、最後の段階で力を入れてました。
また、Recursion内のDiscordコミュニティを活用して、わからないことはすぐに質問しました。回答してくれる方が答えやすいように、質問の仕方に気を付ける必要がありますが、自分でしばらく考えても無理な時はさっと聞く方がいいと思ったからです。
――コンピュータサイエンスプロジェクトについて教えてください。ポートフォリオとしても活用されましたか?
コンピュータサイエンスプロジェクトは、5のブラックジャックを飛ばして、6の途中までやっています。1-1, 2-1, 1-2, 2-2, 4, 3, 6-1という順に取り組みました。一度Recursionで作成したものをリファクタリングして、ポートフォリオにしています。
面接でもリファクタリングについて聞かれることがありましたので、機能改善やバグ直しなどやっておいた方がいいと思います。
私のポートフォリオはこちらです。
このデザインはGlassmorphismというデザイン手法で、YouTubeでトレンドをチェックして取り入れました。
初めは自分で好きな色を選んで、メインカラー、セカンドカラーの配色をしていたのですが、なんとなく洗練されていない感じになってしまって…。それで、ツールを利用して色を選んでもらいました。
ポートフォリオを作るときに意識したことは、各プロジェクトの説明をきちんと書いて、何をしているのか一目で分かるようにしました。使用したデータ構造やこだわった点を短めに書いて、コードのリンク、URLも入れてます。
未経験の壁を突破できた成功へのターニングポイントとは
――MASAさんの転職活動について詳しくお聞かせください。どのような点に苦労されましたか?
私は高卒ですし、プログラミングも未経験で途中ブランクもあります。書類選考の段階で落とされることが多く、技術力を証明することについて苦労していました。
未経験というだけですぐに落とされたり、運良く面接までいけても「会社が求める技量でフレームワークを使えていない」などで落とされたりしたこともあります。
今振り返って考えてみると、
- ポートフォリオを作っていなかったのでGitHubのリポジトリを企業様に面接の時に確認してもらう形になっていた
- 履歴書、職務経歴書の文章が間違っていたり、説明が少なくて内容が薄っぺらい印象になったりしていた
- 成果物のデザインがチープだった
- エンジニアになりたい熱意が弱かった
などの理由でうまく行かなかったのではないかと思っています。
――未経験だと面接までいくのも、なかなか難しいようですね。ご苦労されている中で、何をきっかけに成功へとつながったと思いますか?ターニングポイントのような出来事がありましたか?
- 創業者のShinyaさんに相談して書類を全面的に書き換えたこと
- ポートフォリオを作成して、企業様側からすぐに確認できるようにしたこと
- トレンドやプロジェクトに合ったデザインを取り入れたこと
これらの改善を行った結果、面接まで至る頻度や通過できることが増えていきました。
面接の際に、書類やポートフォリオでわかりやすくアピールして、Recursionで学習したことや作ったものについて企業様に興味を持ってもらうことができました。すると、面接後にGitHubを見てもらえるので、そこでコーディング力を証明することができたのだと思います。
採用面接ではRecursionで培った技術力と行動力をアピール
――採用試験についてお聞かせください。まず、選考の流れはどのように進みましたか?
paizaというITエンジニア向けの就活プラットフォームを利用したのと、企業様への直接応募もしました。
paizaの場合は、『カジュアル面談の予定の確定 & 書類の送信 &カジュアル面談(ほぼ一次面接です)& 二次面接 or 最終面接』という感じで進みました。たくさんの企業を見比べることができるし、面談まで行かせてもらえるのでいいサービスだと思いました。
企業へ直接応募の場合は、『書類選考 & 一次面接 & 最終面接』という感じで進みました。
中間にエージェントが入ると企業側が紹介マージンを取られてしまうので、最終面接まで行った時に「未経験にここまでお金を払いたくない」と言われたことがあります。
直接応募やマージンが少ないという噂のWantedlyは、面接までたどり着けることが多くなるのではないかと思いました。Wantedlyからは私は応募していないので推測ですが…
――書類や面接ではどのようなことをアピールしましたか?
これまでの仕事で経験した実績やそれに伴う改善活動について、実際の数字を出して成果を強調しました。
また、もっとモノづくりがしたいという意気込みや、エンジニアになりたい熱意を伝え、海外へ行った経験などから行動力があることもアピールしています。それに加え、英語や本、Udemyなど、継続して学習を続ける姿勢を見せました。
技術力に関しては、Recursionで学んだことやコーディングテストをこなした数、paizaでAランクを持っていることなどを特にアピールしました。
――採用者の興味を引いたポイントはどのようなことでしたか?
チーム開発を自発的にやっていて、プロジェクトをGitで管理していることをお話すると、大変興味を持ってもらえました。プルリクでお互いに監視するなど、Gitの管理ができていることを評価していただいたようです。
ポートフォリオに関しては、プロジェクトごとに雰囲気を合わせたり、デザインにトレンドを取り入れたりしたことで、プロジェクトのコードや説明を見てもらうことに繋がりました。
勉強時間の量、コードを書いた量も大事かもしれません。私のGitHubのリポジトリの数は、練習したものや完成してないものも全てあげていて50を超えています。
「英語を話している時の自分と、日本語を話している時の自分は違うように感じる」という話で興味をいただいたこともありました。
――Recursionで学んだ知識の中でも特に評価されたものはありますか?
フィードバックをもらってないのではっきりとはわかりませんが、再帰やキャッシュなどについて知っていることや実際にコードに実装できていることかなと思います。
また、データ構造の知識があることで、パフォーマンス改善に意見が言えることは高評価でした。
――内定をもらえた一番の要因は何だと思いますか?
- モノづくりがしたいという意思を伝えられたこと
- プロジェクトのデザインをしっかり作っていたこと
だと思います。
最終面接では社長や幹部が見ていて、人柄や思考法を確認するような内容でした。
海外に行った理由や前職で感じたスキルにならない作業に対するモヤモヤ、その状態から抜け出すための強い意志を伝えると特に社長からの反応が良かったです。また、ブランク中に何をしていたかや目標を持って行動していたことなども評価されたと思います。
私の場合はたまたま時期が被り選考していた2社で内定をいただき、1社最終面接前まで行っていたものはお断りする形になりました。
実務未経験者が自社開発企業から内定を取るためのアドバイス
――自社開発企業への内定獲得おめでとうございます!転職後の業務内容の概要を差し支えない範囲で教えていただけますか?
詳しい内容は控えさせてください。ただ、フロントエンドエンジニアの求人で応募したのですが、バックエンドを担当するかもと聞いております。使用言語は、TypeScript, React, Next.js, Node.jsなどでしょうか。
今後はとにかく学んだことをアウトプットしていきたいです。
――未経験者が内定を取るためにやっておいた方が良いことは何だと思いますか?
まずは、履歴書、職務経歴書などの書類をきちんと整えておくことでしょうか。
そして、何でもいいのでやったことは見える形で残しておくこと。GitHubにあげたり記事を書いたりでもいいと思います。このとき、デザインもある程度作りこんでおくと、「おっ!」と思ってもらえると思います。
Recursionのチーム開発を経験してみることもおすすめです。
プロジェクト自体はしょぼくても、実務で行われているような形で進めてみるといいと思います。
- 要件定義やモックデザイン作り
- 役割を決めて開発
- 互いにプルリクで評価
という経験をしておくことは、強いアピールの材料になると思います。
――MASAさん、興味深いお話を聞かせていただいてありがとうございました。MASAさんの頑張りが認められたこと本当に嬉しく思います。これからのご活躍を期待しています。