概要
アドベントカレンダー記事なのでゆるく書いていきたいですが、30過ぎて機械学習エンジニアになってから5年経ちました。データサイエンティストをやったりしながらもなんだかんだこの仕事を続けています。フリーランス転向したり法人作ったり身の回りの変化は大きいのですが、仕事面でも徐々にシニアエンジニアとしての役割を任せられたり、レビューする側に回ったりもしています。その辺りを今一度振り返ってみたいと思います。
キャリアチェンジしたきっかけと当時の環境
32歳でコードを書かない世界から機械学習の世界に飛び込んだのですが、多分に運に恵まれていたと思います。当時はAIって言葉がまだまだ一人歩きしていた時代で、理系の院卒で勉強して齧ったことがあるくらいでもワンチャン採用されました。今のようにデータサイエンティストという言葉が市民権を得ている時代の直前という感じで、AIってすごいらしいよ〜という時代でしたので、ゼロから作るディープラーニングを読んだというレベルでも採用されました。
正直、ポートフォリオも作ってないですし、ただ運が良かっただけなので再現性は全くないですが、今となっては5年続く仕事を選べて本当に良かったと思っています。そこから派生して副業に取り組んだり、法人を作ったりなどの経験もしたので、人生の転機になったのは間違えないなと思っています。
5年間の経験
技術面
フリーランスということもあって様々な技術を経験させてもらっています。直近はScikit-learnを使ったDeepではない予測モデルの構築ですが、大半の期間はPytorchを使ったDeepLearningでした。領域もGANやVAEの生成モデルや、画像解析、Pytorch Geometricを使ったグラフニューラルネットワーク、キャリアチェンジした当社は自然言語処理でした。かなり雑食的な機械学習エンジニアとして活動させてもらっています。
どれが得意というのもなく、データが画像であろうと、デーブルデータであろうと、テキストであろうとそこそこやれるという感じだと思っています(裏を返すとどれもすごくない)。
業務面
元々基幹システムをやっていた人間なので、お堅いシステムの方が得意だなぁとは感じます。人事・給与のようなバックオフィスや、売上の予測など少しレガシーな業界の業務の方が力を発揮しやすい気がします。
また業務上の役割も徐々にレビュワーだったり、後輩のエンジニアに助言したりなどシニアエンジニアとしての立場が強くなっています。後輩のエンジニアに技術やお作法を伝えたりすることも増えて、随分と偉ぶるようになったなwと思っていたりもします。
副業面
私の場合最初の雇用が正規雇用ではなかったので、何も躊躇うことなく、経験1年弱でフリーランス転向したのですが、キャリアの初期にコロナと親の死のダブルパンチで収入が途切れました。よい子は真似したらダメな動き方ですが、コロナ禍で地元でやることなくてUdemyを作ったり、それがきっかけて統計や機械学習の教育に携わらせたりもらったりもしています。法人化したのも副業が多いからというのが理由です。
5年間の経験を通して思うこと
今までの経験を通じて思うのはキャリアなんて思った通りにはならないって感じています、私は新卒でERPの開発をやっていたのですが、コーディングなんてやりたくねえと思って情報システム部に転職したのですが、気がついたら機械学習エンジニアをやっています。それも、たまたま理系の院卒で数学にそこそこ明るくて、当時AIが流行り始めていて未経験者でもポテンシャルがあれば採用されたといういろんな条件が重なってからの今のキャリアです。
月並みな意見になるのですが、今できることをしっかりやるというのが大事なのかなぁと感じます。元々数理的な素養があったのに加えて、情報システム部にいた時も、基幹システムのデータに向き合ったりする時間が多く、データドリブンな環境にいたから今があるんだろうなと感じています。副業面もコロナ禍で身内の不幸で実家に篭ることになり、やることないからUdemy作ってリリースしたみたいなことが今の状態につながっていたりするので、そういった目の前でできることを取り組んでいることで何か開けるものがあるのかなと思います。
少なくとも、新卒で入った会社を辞めた時に、機械学習なんて言葉知らなかったですし、手を動かさないエンジニアになったのに、そこから月日が経ってバリバリコード書いているなんて思ってもいなかったです。ただ、振り返ってみると自分のキャリアは全て繋がっていて、それは自分なりに向き合ってきた結果なんだろうなぁと感じます。
ありがとうございました!!