私は先日、あるIT企業から内定を貰いました。その企業に就職し、機械学習エンジニアを目指す予定です。
IT企業に勤めていた経験もないし、つい3か月前までは機械学習についても全く知らず、就職なんか考えていませんでした。人生わからないものです。。。
今回は、30代でIT業界未経験、機械学習未経験の私が、3か月でIT企業に就職して機械学習エンジニアを目指すまでに至った体験談を紹介します。まだ機械学習エンジニアになった訳でもないので、このような記事を書くのは少し躊躇してしまいますが、私と同じように未経験から機械学習エンジニアを目指す人の、参考になればと思い書くことにしました。
と〜げ
要点を絞らずに、ダラ〜と書いていきます。個別の詳細は別記事を書く予定です。
私のスペックとプログラミング経験
私のスペックとプログラミング経験を、なんとなく知っておいてもらった方が、参考にしやすいかと思うので、簡単に経歴なども含めて紹介します。
- 学歴:工学系理系大学院卒(地方の大したことないところ)
- 職歴:メーカー2社で4年ほど生産技術。その後は3年くらい無職生活。
- プログラミング経験:
工学部の講義で、Fortran, C言語を少し
研究室でプログラムを組む機会や、Linuxを触る機会が少しあった程度
決して誇れる学歴でも、職歴でもありませんが、全く勉強をしてこなかったわけではないので、何か新しいことを学ぶ際の基礎学力は少しあると思います。
プログラミング能力については、上記で示す程度で、実務で使えるレベルでは決してありませんが、全くの素人というわけではありませんでした。全くプログラミングをやったことがない人よりは、コードを書くことへの障壁は低かったと思います。
では、ここから、機械学習の勉強のことや、就職までのことについて紹介していきます。
機械学習の勉強
2019年11月10日から、就職活動をはじめるまでの2020年1月16日までおよそ2か月間、毎日平均4時間ほど機械学習の勉強をしました。
きっかけ
2017年あたりに、機械学習やディープラーニングについて知って興味を持っていました。また、プログラミング自体への興味も学生の頃からあり、ずっと勉強してみたいなぁ〜とは漠然と思っていました。
2019年は北海道に住んでおり、夏と秋は釣りを中心に生活をしていました。しかし、冬は釣りができないため何かをしようと考えていました。そこで、以前より興味のあった機械学習を勉強してみようと思ったという運びです。
機械学習の勉強方法
機械学習の勉強には、Aidemyを使いました。
Aidemyは、AIエンジニアになるためのオンライン学習サービスです。Python入門から、ディープラーニング、自然言語処理など、有名な人工知能技術を実際にコードを書きながら習得できます。
私は、Aidemy Premium Plan
- AIアプリ開発コース
画像認識を利用した機械学習を用いたWebサービスを作成するコースです。データの取得から、機械学習アルゴリズム、Webアプリの実装までの流れを学ぶことができます。
- データ分析コース
データの自動取得(スクレイピング)から、機械学習、時系列解析等を学びます。応用課題では、タイタニック号の乗客の生存率を予測する課題、最終課題ではオリジナルデータを利用したデータ分析を行います
- 自然言語処理コース
機械学習、ディープラーニング、自然言語処理を学び、応用課題ではツイッターのデータから、会社の株価を予測するモデルを作成します。
Aidemyでの学習は、基本的に、カリキュラムを読み、自分でコードを打ちながら学習を進めるといった感じです。そして、カリキュラムの最後には、添削問題があり、コードを提出して、Aidemy講師の方にコードレビューしてもらえます。
また、Slackを使って、いつでも質問をすることができます。さらに、オンラインのメンタリング(ビデオ通話)で、質問をしたり、勉強方法への相談や、転職相談などもできます。
質問に答えてくれる講師の方はとても優秀です。私の経験上、質問に的確に答えてくれたことしかありません。また、コミュニケーションは非常にスムーズで、不快に感じるようなことは皆無でした。
講師の方々は、とても若く、おそらく学生さん?なのかもしれませんが、機械学習の知識だけでなく、コミュ力も高く、とても雰囲気がいい人でした。
私のAidemyの勉強方法
私がAidemyで勉強するときに、意識したことは『6,7割の理解でも先に進む』ということです。これはAidemyの講師の方からアドバイスされたことです。なので、例えば、ディープラーニングの理論的な部分はわからなくてもいいから、とりあえず実装して、結果が出たらOKというノリで進めていました。
また、各コースを終えるごとに、そのコースで学んだことを使った成果物を作成するようにしました。また、そのことをブログでアウトプットしていました。
これもAidemyの講師の方からアドバイスされたことで、カリキュラムを何回も繰り返して勉強するよりも、学んだことを使って実際にアプリを作成したり、何かのデータを分析したりした方が力が着くということでした。また、転職の際に、成果物はアピールになります。
結果的に、私は、以下のようなアウトプットを出しました。
アウトプットに関しても、完成度はあまり求めずに、とりあえずやってみた!そしてなんとなく形になった!という意識で取り組んでいました。
Aidemyについては、別でブログ記事を書く予定です!
就職活動
就職しようと決めた理由
Aidemyで機械学習を学ぼう!と思ったときに、就職できるくらい頑張ろう!と思っていました。しかし、本当に就職するかは、やってみてから判断するという感じでした。
結果として、1か月くらいで機械学習やPythonのコードを書くことが面白く感じて、本格的に仕事として取り組んでみたいと思うようになり、就職しようと決めました。
実際に動き出したのは、1月14日くらいで、Aidemyの受講開始から2か月経とうかというときでした。
Wantedlyを使って就職活動
私の就職活動は、Wantedlyを使用しました。Wantedlyは求人情報サイトです。ですが、リクナビのような一般的な求人情報サイトとは少し違います。
私が思う一番の特徴は、選考に進む前に、企業や仕事について色々質問ができるカジュアルな面談を設けてもらえる点です。このカジュアルな面談は、実際に企業を訪問するケース、skype面談のケース、採用説明会に案内されるケースなどがありました(実体験)。
Wantedlyを使って企業の選考に進む流れはこんな感じです。
- Wantedlyに登録しプロフィールを入力
- 気になる企業があったら、『話を聞きに行きたい』ボタンから気軽にエントリー
- エントリーした企業から返事が来て、カジュアルな面談の機会を設けてもらえる
- 選考に進みたければ選考に進む
私の場合、Wantedlyを使って以下のように選考に進む企業を絞っていきました。というか絞られていきました。
- Wantedlyで「エンジニア」「中途採用」「機械学習」というキーワードで企業を探す
- 未経験でも採用の可能性のありそうな企業20社にエントリーする
- 20社のエントリー中、8社から返信があり、カジュアル面談(説明会含む)の案内をされる
- 面談を経て選考に進んだのが3社、結果は以下
- A社は説明会 → 一次面接 → 最終面接 → 内定
- B社はカジュアル面談 → 最終面接 → 不合格
- C社はカジュアル面談 → 一次面接 → 選考辞退(内定のため)
結果として、なんとか1社から内定をいただけました。志望度が高い会社だったので良かったです。
就職活動期間は、16日間でした。2020年1月14日から開始して、2020年1月29日に内定が出ました。個人的には、選考のスピードがはやいことに驚きました。私が以前に転職したメーカーは面接から内定までに1か月ほどかかったので。。。。
私は結局使いませんでしたが、転職エージェントを使って自分の希望に合った会社を探してもらうという方法もあります。私は内定が出る直前に以下の『マイナビエージェント』など何個か登録をしました。マイナビエージェントが一番早く連絡がありました。
面接ではどんなことを聞かれるのか
実際に面接を受けてみて聞かれたことを、私の回答や思ったことを交えながら紹介します。私が受けた面接では、予想できるような一般的な質問しか聞かれませんでした。
これまでの職務経歴についての質問
基本的に面接の前に、職務経歴書と履歴書を提出しているので、それらに沿った質問は必ずされました。一般的な転職者への質問です。具体的には以下。
- 学生時代の就職活動における会社選びの軸とは?
- 新卒で入社した会社を選んだ理由とは?
- 転職をした理由とは?
- 会社を辞めた理由とは?
- ブログをはじめた理由とは?
機械学習についての質問
- 機械学習の勉強をはじめたきっかけは?
私の回答:プログラミングや機械学習には昔から興味があって勉強してみたいと思っていた。北海道に移住して冬は釣りができないので、良い機会と思い勉強することにした。 - Aidemyで学んでどんなことができるようになったか?
私の回答:教師あり学習を使った画像の分類。実際に、勉強の成果物としてアプリを作成した。 - なぜ弊社に機械学習エンジニアとして就職しようと思ったか?
私の回答:機械学習を勉強してみて、面白いと感じるようになり本格的に仕事としてやりたいと思った。また、生産技術の経験を生かして製造業の問題を解決するような仕事をして貢献したいと思った。
今後のキャリアについての質問
- どんなエンジニアになりたいか?
私の回答:実際に問題解決ができるエンジニア。変化に対応していけるエンジニア。 - どんな仕事をしたいか?
私の回答:製造業の抱える問題を機械学習を使って解決するような仕事。 - 中長期的なキャリアプランは?
私の回答:今はない。まずは目の前のことを頑張って、機械学習を使えるエンジニアとして貢献できるようになりたい。
自身のことについての質問
- 強みと弱みは?
- 今まで最も大変だったこととそれをどう乗り越えたか?
- ストレス耐性はある方か?ストレス解消法は?
- どんな人達と一緒に働きたいか?
- 夢はあるか?
私がいくつかの面接を受けてみて思ったことは、思ったよりも普通の面接だったということです。
私が未経験者なので当然かもしれませんが、技術的な部分の質問はほとんどありませんでした。単純に、質問に対して的確に、端的に、論理的に回答できているか?みたいなことを見られたような気がします。
未経験者の場合、なぜエンジニアになろうとしたのか?どんなエンジニアになりたいのか?みたいな部分が大事なんだろうなと思いました。Aidemyの講師の方にも同じようなことを言われました。
評価されたポイント
私のような30代のIT業界未経験、機械学習の実務経験もない人間をなんで雇ってくれたのか?私が思う評価されたポイントは以下2つかと思います。
Aidemyでの勉強と成果物のアウトプット
機械学習エンジニアになる!という意欲をアピール出来て評価していただけたと思います。
ただやりたい、興味があるよりも、実際に勉強して成果物を作成するという行動をしていることで意欲に説得力が生まれたのでは?と思っています。
生産技術の経験・工学的バックグラウンド
内定をいただいた会社は製造業関連の機械学習案件が多い会社でした。なので、私の生産技術の経験を生かせる!というアピールが評価されたのだと思います。
実際に、データの特徴量エンジニアリングには、ドメイン知識があった方が良いということを面接の場でも言われました。個人的には、製造業関連のお客様とのコミュニケーションが取りやすいのかなとも思います。
機械学習への興味や意欲と、これまでの経験を生かして貢献できます!的なアピールが良かったと思われます。
まとめ
- 機械学習の勉強は、Aidemy Premium Plan
- 就職活動はWantedly
- 面接では以下2点をアピールしたのが良かった。
- Aidemyでの勉強と成果物のアウトプット
- 生産技術の経験・工学的バックグラウンド
未経験からAidemyで2か月勉強して、2週間就活して、就職できました。内定をいただいた会社には、採用していただいてとても感謝しています。よく考えると、30代の未経験者を採用するって結構ありえないことのようにも思います!
人生どうなるかわからないものです。正直、運もかなりあったように思います。
とはいえ、私は機械学習エンジニアになれたわけではありません。スタートラインに立ったとも言っていいのか。。。とにかく、就職した会社で機械学習のプロジェクトに参画できるように、機械学習やその他知識を人一倍頑張って身につけていかなければならないと思っています。
大変な道のりになりそうですが、自分の成長に集中し、それを楽しんでいきます。
未経験からIT企業に入社してみて、思ったことや、勉強したことなどはこのブログで発信していく予定です。私の成長の記録的な記事を書けたらと思います。
そんな時間ないかもしれないけど。。。