Lean Baseball

No Engineering, No Baseball.

23年間のエンジニアキャリアで学んだこと - 「強いエンジニアにならなきゃ」と自覚した2大事件

皆さんこんにちは. 「Google Cloud Partner Top Engineer 2024」を受賞した人です*1.

狙ってたので嬉しいです, 関係者の皆様誠にありがとうございました🙏

このエントリーはそんなGoogle Cloud...とは関係が無くて,

先月(2023/10/17)Findy Engineer Labで公開された, 「強いエンジニアになりたくて。20代の大失敗で始まる、夢を掴んでも挑み続ける二刀流というキャリア」に対する「執筆者本人による, 執筆者本人と読んでくれた人たちのためのオマケ話」となります.

findy-code.io

今回の寄稿文, 読んでくださった皆様および, 企画・レビュー等々にご協力頂いた皆様誠にありがとうございました.

今回のインタビューを纏めるにあたり, 編集の方とコミュニケーション・議論を重ねて来たのですが,

  • なんやかんやで言っておきたいエピソードあるな🤔
  • インタビューの構成上, ボツった話も供養したいぞ?

という話がいくつかあるので, いくつか書きたいことがあるので書こうと思います*2.

【本編の前に】デブキャリ2023に出ます【CM】

CMといいつつ, 実はこのエントリーともかなり関係があるのですが(それは後半で).

event.shoeisha.jp

「自らを強いエンジニアにするための3つの習慣」というテーマでDevelopers CAREER Boost 2023(デブキャリ2023)で登壇します.

12/09(土)16:05 - 16:35, オンラインでぜひお楽しみください(申込みフォーム).

TL;DR

「自分のキャリアを言語化すること」が「強いエンジニアになる」地道だけど手っ取り早い習慣である.

自分を語るエピソードがあるってのは結構大事なことだったりしますよっていうオチになります.

強いエンジニアを意識した私の2大事件

例の記事で公私共にインパクト大きかった話は,

それでも最低限の技術スキルと文章力、ちょっとしたコミュニケーションスキルでいい感じに渡り歩いていましたが、勉強を疎(おろそ)かにした自分の力量不足に加えて、2008年に発生したリーマンショックの影響から2つの事件に遭遇しました。

  • 配属先のプロジェクトがなく、社内ニートとして過ごすピンチに陥る
  • 転職活動で20社以上に選考を申し込むものの、全ての企業で不採用になる

上記だと思います, 実はこれ先月のPyCon APAC 2023の会場でも記事読んだという何名かの方からツッコミ受けてました*3.

ちなみにこの話は今回が初出*4*5ですがあんまり広げるつもりもありません&友人等で気になる人は直接聞いてください(のでここでは掘り下げません).

「強いエンジニアにならなきゃ駄目だぞ!」と強く意識した大事件は40手前になってから起こった以下の事件です.

  • 「野球エンジニアになりたい!」と言い続けた&行動したら本当になってしまった事件.
  • 社長に突然『中川ならやれる』と開発責任者として指名→色んなものを削りながら作って出したAIワクチン接種予測やりきった事件.

結果的に現職にも繋がり, 自分の業界的ポジション(と年収)にも大きく影響したがこの2つだったりします.

Findy Labの文脈上, 書けなかった話も含めてちょっと補足的に書きたいと思います.

野球エンジニアになった事件(2017-2019)

私と言えば!ぐらいに切っても切り離せないのがやはり「shinyorke, マジで野球エンジニアになっちゃったよ」というこの件ですねと.

私の野球に関するデータ分析と活動(ブログやカンファレンスでの発表)が野球関係者の目に止まり、2018年春にはスポーツデータを分析するベンチャーに初代CTO(かつ1人目のエンジニア)として転職。「大好きな野球の分野にエンジニアとして携わりたい」という夢を見て活動を始めて約5年で、本当に野球の仕事をする機会を得たのです。

詳しい話はこのエントリーに載ってます.

上記エントリーおよび今回のFindy Engineer Labさんの記事では文字数・コンテンツの関係で省略したのですが, 野球エンジニアになるまでのキャリア作り・転職において以下を何気に意識していました.

  • エンジニアとしてオールラウンダーになること.
  • エンジニア以外の仕事も知り, 多少の事はできるようになること.
  • 色んな人と対等に話せる・臆せずコミュニケーションを取れるようになること.

「エンジニアとしてオールラウンダーになること.」ですが, 2014年(35歳)ぐらいまでの私は「PythonやRubyでサーバーサイドのエンジニアができてアジャイルが好き・得意な人」ぐらいの限定したスキル・キャリアに特化していました, はっきり言えば「いい感じにLTとかイベントでアピールして, あわよくばイケてる事業会社のエンジニアになりたい」というチャラいお気持ちが産んだ緩いキャリア形成でした*6.

ところが野球エンジニアを明確に目指し始めた2015年ごろ, データサイエンス(これはセイバーメトリクスに触れる以上必須条件*7)やDocker*8, クラウド*9など色々な興味や仕事が増えてきたこともあり,

  • 他者との差別化および, 「小さい会社だと一人で何でもやらないと」という気付きもあり, 何でも屋を目指すことに.
  • 仕事で迷ったら「やったこと無い」「誰もやらない」事に手をかけるようにした. 難易度が高い物や不明瞭な物で面白そうなやつを手掛けるようにした.
  • 結果, 「フロントエンドとアプリ以外ならなんとかなるマン」なエンジニアのshinyorkeが爆誕.

という感じになりました. 野球エンジニアになる頃にはスキルもキャラも「唯一無二の野球エンジニア」になってたと思います&不得意だったフロントエンドも野球エンジニアの仕事の中で一通りの事はできるようになりました*10.

「エンジニア以外の仕事も知り, 多少の事はできるようになること.」は一言で言うと「器用なビジネスマンになる」事です.

営業同行, カスタマサポート, 採用etc...

「プロフェッショナルな商売はエンジニアだが周辺の仕事を知る」事で様々な事の理解を高めようとした結果, それなりにうまくいきました*11.

状況的に「はい or YES」的なシチュエーションだったこともありますが*12...

「エンジニア同士の会話はうまくいくけど, エンジニア以外との会話はなんかぎこちない」のは割とエンジニアあるあるだと思います&私も過去はそうでしたが, 流石にこれが続くと機会損失に繋がるなという実感も有り, 「エンジニアな自分とそうじゃない自分を使い分ける意味でも話ができるやつになろう*13」というモチベーションでやりきりました.

最後の「色んな人と対等に話せる・臆せずコミュニケーションを取れるようになること.」ですが,

  • ちゃんと人の話を聞いて相手の気持ちを知ってコミュニケーションする
  • わかりやすい言葉, 響くような表現で相手の理解を後押しする
  • 相手がお客様だろうが上司だろうが新人だろうが, 自分の意志・意見をストレートに伝えてコミュニケーションする

仲良しこよしになって意見を言えない・言いにくい状況も, ワンマンなボスからの一方通行も両方良くないのでせめて自分は主義主張を通せるように(でも周りに溶け込む)みたいな所で意識しました.

...と, ここまで書くと「ああshinyorkeやるじゃん!」みたいな話にも聞こえますが,

一方で、私は「プレーヤーの方が好き」という気持ちで仕事をしていたため、マネジメント上いくつかの仕事が放置状態となったり、加えてマネジメントやチーム運営の経験不足が起因となってトラブルが発生したりしました。

結局プレーヤーなエンジニアとしての自分が好きで上手く行かない事もあったので, まあそんなもんです.

短期間でAIワクチン接種予測を作った事件(2021)

野球エンジニアのキャリアを終焉したあと, 前職であるJX通信社で(事実上)最後の仕事だった「AIワクチン接種予測」の爆速開発&リリースでした.

また、新型コロナウイルスが猛威を振るい「ワクチンをいつ接種できるのか?」が注目される中で「AIワクチン接種予測」をリリースし(現在はサービス提供終了)、世の中にインパクトを残すことができました。これはプロダクトオーナーである社長から「中川さんならできるでしょう」とバイネームで指名され、数カ月間は死ぬ気でプロダクトマネージャー兼エンジニアとして企画・開発を仕切らせてもらったのはよい経験となり、人生で初めて自分の強みを全て使い切った仕事になりました。

間違いなく日本で一番最初にやりましたからね, ワクチンいつ接種できるの?予測💉

このエピソードで最も重要な部分は「『中川さんならできるでしょう』とプロダクトオーナーである社長から指名を受けるぐらいには技術者と人間として信頼*14を築いていたこと」です.

野球エンジニア時代に形成した以下の軸

  • エンジニアとしてオールラウンダーになること.
  • エンジニア以外の仕事も知り, 多少の事はできるようになること.
  • 色んな人と対等に話せる・臆せずコミュニケーションを取れるようになること.

これらの組み合わせで入社してから1年半やってきた結果,

  • 「オールラウンダーなエンジニア」としてデータ基盤構築・運用・データ利活用からプロダクト開発, データ分析・マーケティング支援という仕事をコツコツとこなし.
  • 「エンジニア以外の仕事の経験」を活かしてエンジニア採用やインターンの教育・採用, 社員登用まで伴奏したり.
  • 「文章力と会話力, エンジニア以外のリテラシー」を活用してエンジニア以外の老若男女とコミュニケーションを取りながら成果を出したり.

これらの積み重ねが入社してから1年半と少しあり, その結果が「中川さんならできるでしょう」という話になったのではと思っています.

だって, この時のご指名は本当に震えましたからね私, やりたいことにマッチしてかつ責任も重大って意味で*15.

幸いにも周りに非常に優秀なスタッフ(学生さん含む*16)が多くいた事で, 「オールラウンダーなエンジニア」な自分がStreamlitで雑に作ったプロトタイプを見事に素晴らしい本プロダクトに仕上げることができました.

「プロトタイピングしてPoCしたやつをクオリティ上げながら本番に出す」はまさに「人生で初めて自分の強みを全て使い切った仕事」と言える内容でした.

これ普段は個人開発*17でやってることですからね.

結び - 23年間で学んだこと

そんな訳で「強いエンジニアになりたくて。20代の大失敗で始まる、夢を掴んでも挑み続ける二刀流というキャリア」番外編をお送りしました.

23年間のキャリアでは特に35歳以降が結構エキサイティングで学びがあるな!というのが自分史を書いてみて気が付きました.

35歳からのキャリア史

これはデブキャリのために描いた絵ですが示唆がすごい...(自画自賛)

23年間で学んだことは沢山ありますが, 敢えて一つ大事なことを言え!と言われたら,

「自分のキャリアを言語化すること」が「強いエンジニアになる」地道だけど手っ取り早い習慣である.

って所でしょうか. 翌々考えてみると私は転職回数がめちゃくちゃ多い(23年間で7回, 現職が8社目)事もあり, キャリアの中で定期的に「職務経歴書(CV)」を更新しています*18.

職務経歴書の更新をすると「過去にやったこと」「今やっていること」「これからやりたいこと」を自然と考える*19のでこれが「キャリアを言語化する」ことに繋がってるし, 「強いエンジニアになる」為の筋道を自分で引けていた用に思えます(&このブログやnoteでも自分のキャリア思想を書いてるのもある).

この辺の詳しい話は「自らを強いエンジニアにするための3つの習慣」というテーマでDevelopers CAREER Boost 2023(デブキャリ2023)で話すので良かったら聞いてやってください.

event.shoeisha.jp

大切なので二回言いますが, 12/09(土)16:05 - 16:35, オンラインでぜひお楽しみください(申込みフォーム).

最後宣伝っぽくなりましたが大真面目なキャリア話は以上です.

今度はしょうもない個人開発ネタでお会いしましょう, それではまた.

*1:仕事とプライベート両方でGoogle Cloud使いなので何かほしいとは思っていました.

*2:ここに脚注を書きます

*3:インパクトやわかりやすさで反響はあるだろうって思ったけど想像の334倍はありました, なんでや.

*4:クビになりかけた件は今でもトラウマなのですが, 結構年数も経ったのとコンテンツとして入りやすい話が欲しいというのもあり出すことにしました.

*5:コンテンツとしては初出ですが私との飲み会や雑談では偶に話していたりもします&記事にした話は実際の話よりも大分端折っています(フルバージョンは流石に書けません)

*6:緩い, と言いつつも2012年くらいから初めて2014年, 35歳の誕生日の数日前にリクルートに転職したのである意味目標は達成しています.

*7:と書きましたが, 元々簿記やExcelに強かったこと, 野球ゲームのハックの為にPythonなデータサイエンスは趣味でずっとやっていたのでこっちの技能は最初から結構ありました.

*8:これはリクルートにいた時に社内勉強会の無茶振りでゼロベースで覚えました. 結果的にこれが今のクラウドインフラの仕事に繋がってると思うと無茶振りも悪くないなと思います笑

*9:AWSを2009年頃から触っていたのでこれもあんまり抵抗は無かったです.

*10:野球エンジニア時代にコントリビュートしたコードで最も多かったのはフロントエンド(Vue.js)だった気がします&結果的にこれでSPAと仲良くなれたのでエンジニアスキルの成長的には本当に良い体験でした

*11:今思えばコンサルから事業会社(リクルートおよび数社のベンチャー企業)に行った大きな学びの一つだったかもしれません. コンサルの提案に同行するのとSaaSだの製品だのを提案するのって似て非なるものな要素もあるので.

*12:スタートアップ・ベンチャーあるあるです, 他に演る人がいない or 全員でやろう的なやつです.

*13:この発想に至ったのは2社目で働いていたコンサル会社(現職じゃないです)の影響も強かったかも.

*14:指名した当の本人(米重さん)から直接話を聞いたわけじゃないのでアレですが, 確かなのは米重さんはエンジニアに対する要求はいい意味で厳しくて, 単にいい人・元気な人に任せよう!っていうタイプでは無いです(私の見解では)

*15:忘れもしない2020年の12月, クリスマスを迎えたかどうかぐらいの時期です, ちなみにご指名はSlackで知りましたw

*16:ちょっとイイ話すると学生アルバイト・インターンも基本的には自分が採用に関わり, 育成した子たちです.

*17:今だから言えるのですが, AIワクチン接種予測の企画・マネジメント・開発に使った手法の大半は自分ひとりチームでやってる個人開発の応用編で, これを数人のプロジェクトで回すためのアレンジだけして約2ヶ月の開発期間を乗り切りました.

*18:詳しい話はデブキャリでやりますが, markdownで書いているCVを都度PDFにする運用でやっています.

*19:理由は明確で, 通常の面接スタイルだろうがケース面接みたいな搦手をだろうが「求職者のあなた」を問うのが面接でその材料となるのがCVだからです.