バフェット・コードのブログ

企業分析やプロダクト開発にまつわる記事を配信中

入社エントリ:C++しかわからない僕がバフェットコードに転職する話

こんにちは。山本です。 バフェットコードへ入社してしばらく経ったので入社エントリを書きます。

まず、そもそも僕はバフェットコードに入社する気は全然ありませんでした。
転職活動もしていませんでしたし、当時勤めていた会社で満足していました。加えて求められる技術スタックも全然違う。

それでもどうしてバフェットコードに転職することにしたのかについて書いてみようと思います。

前職について

C++とは

今から20年以上前の話です。僕は学生時代から激しいC++推しで、Javaは軟弱者が使う言語、スクリプト言語に至ってはもはや脳がスライムのやつが使うものだと思っていました。(*あくまで個人の見解です)

このように、一神教原理主義者として学生時代を過ごし、そのままのノリで就職したのが前職で、三次元医療画像ソフトウェアを開発していた会社です。簡単に説明するとCT/MRIなどで撮影した画像を元に、三次元可視化したり、解析したりという、主に病院(医師や放射線技師)をユーザとするネイティブアプリケーションの開発をする会社です。僕はそこの製品開発部に所属しており、最近は心臓領域のプロトコルをいくつか開発・担当していました。

とても良い会社で、皆が皆圧倒的に優秀な人ばかりで、刺激的な毎日でした。
入社当時はまだ人数も少なく、ちょうど今のバフェットコードくらいの規模感でした(開発者/それ以外の比率は違いますが、全体として)
新卒で入社してからおおよそ20年ほど、ずっと同じ企業で働いてきました。いつでも新人のつもりだったのですが、気が付けばかなりの古株になっていました。

BTCシステムトレード

話は変わりまして、2017年くらいでしたでしょうか。当時僕は個人的にビットコインの短期トレードをしていました。この時のBTCはまだあまり複雑ではなく、参加者がみな素人で、テクニカルがバキバキに効いていました。テクニカル分析+イナゴフライヤーにかじりついてトレードしていたことを思い出します。

BTCを取引していて、これは自動売買いけるぞ!と気が付いたのはずいぶん遅かったほうだと思います。相場が難しくなってきてそう簡単には勝てなくなってきたころになってようやく、これってプログラムでいけると気が付きました。プログラマなのにプログラムを使わないで他者と同じ土俵で戦っていた。これは痛恨のミスでした。

遅ればせながら、BTCシステムトレードの参入です。
ちょこっと調べてみると大抵のコードはPythonで書かれている。
しかし僕の教義にはPythonを使う選択肢は全くなく、当然C++を選択しました。しかしC++はREST APIにリクエスト送って結果を取得する、ただそれだけでもなかなか面倒だったんですよね。肝心のストラテジを書く前に、障壁が高い。

一方、BTCシステムトレードを始めるためだけにちょっとプログラム書き始めました~みたいな素人がポンポンストラテジを作って、これは儲かったとか儲かってないとか(コミュニティ内で)やっていて、僕がこんな苦労しているのに、どういうことだよ!と憤りました。そして、耐えられなくなり、ついに手を出してしまったのです。

そう Pythonに。

これがすべての間違いの始まりです。

あれ……おかしいな。
C++で1000行くらい書かなきゃならないものが50行くらいで書けるんだが……
pipってなんだよなんでも入ってるじゃねーか
こっちはSTLとboostだけで戦ってんだよ舐めやがって……
でも、Python使うのを……やめられない……脳が、脳が震えるぅぅううう

こうして、Pythonは徐々に僕の体を蝕み、それなしではいられないようにして、怠惰なコーディングをさせるようになっていったのです。

そんなこんなでPythonを使ってヘコヘコするのですが、遅きに失したというか、BTCの一番熱かった時期はとうに過ぎ去ってしまっており、システムトレードで勝つのもだんだん難易度が上がってきたのもあってフェードアウトしていきます。この時にもう、C++に対する熱いこだわりみたいなものは急速に薄れていって、適切な言語を使いましょう派になっていきました。
……これが大人になるってことか。そう、人はいつまでも子供のままではいられない。

副業

そんな感じで心境に大きな変化があって、脳がスライムになった色々なものが受け入れられるようになってからしばらく経ち、コロナを経てリモートワークとなり、仕事もちょっとしたマンネリ感がでていた頃、バフェットコードの開発者の一人から「うちで副業してみませんか?」とお誘いをうけました。

彼は僕の学生時代の後輩にあたる人物で、当時Javaを勉強しているという異教徒でしたが、それにしてははなかなか話せる奴ではないか、ということで学生が終わり、社会人になってからも付き合いは続いていました。その縁もあってお誘いいただいたのだと思います。

当時であれば、ちょっと業務内容が私の教義に反するので……と断るところでしたが、多様性を身につけた僕にとっては、特に強く断る理由もなく、また僕が仕事でやってきたようなこととは全然違う業界なので、ちょっとした興味もあってちょろっと始めてみることにしました。

上記した通り、僕の思想信条もやってきたことも、バフェットコードが必要とするものとは全然違うものです。異世界転生です。言語も違ければ文化も違う、突然知らぬ世界に迷い込んだ子羊です。今まで使い込んできた武器はどれも使えません。でも大丈夫だと思っていました。

「全部AIに聞けばいい!」

転職

チート能力「AI」を使って週末異世界転生をしながら二か月くらい経ったころです。バフェットコードに転職しないかというお誘いを受けました。先にも書いた通り、ちょっとした異文化見学ツアーくらいな気持ちでやっていたので転職話は寝耳に水でした。

副業でちょっと手伝うくらいならいいが、転職となると話が違う。なので一度は断っているのですが、まあ諦めない。

一方で、もうずいぶん長いことそれまでの会社にいたので、居心地が良い一方で医療機器の開発なのでミスれないという精神的プレッシャーも大きくて、時期的にちょっと疲弊していたというのも正直なところありました。

そんな心の隙間にスッと入ってきてささやくのです。
「バフェットコードでAI、やりませんか」
あ……ああ……


まじめな話をすると、僕はもうプログラミング言語を直接扱ってコーディングするような今までの我々に求められてきた技術力というのはほとんどいらない社会になっていくと思っています。それも近いうちに。だからC++がなんだとか、Pythonがなんだとか、そういうのはどんどんどうでもいい話になっていくと考えています。

今まで磨いてきた技術は、あっさりAIに代替されるようになる。

さみしいようですが、これは現実で、抗いようがない。
だから今の自分はのんびりしていられるような場合ではなく待ったなしの状況にある。
自分に求められる能力というのはなんだろうか?今のまま会社に閉じこもって同じ製品を作り続けていたら、ジリ貧にならないだろうか。

……そう、やはりAI、これから求められるのはAIをシバく人材

まあもちろん、AIがあればプログラミング能力はいらんのかといったら全然そんなことは無くて、AIがあるからこそ、むしろ熟練のプログラミング能力がより求められるようになっている、という逆転現象みたいなのがあると思っているのですが、これは入社エントリなので、それはそれでいつか機会があれば。

そんな考えになっていたので、AIどんどん使っていこう、AIで業務を効率化!みたいなところは一番やってみたいところでした。積極的にAIを取り入れていきたいという姿勢は魅力的です。

また同じ職場にずっといるより、これから先のAIによる大きな社会の変化を考えると色々な現場を知っているほうがいいのではないか。だから、あえて自分のキャリアとはだいぶ距離のあるバフェットコードみたいな会社に入ってみるのもいいかもしれない。
そういった諸々のことを考えて、いっちょやってみっか、と転職を決意するに至ったのです。

僕にとって転職とは、一大決心でした。
なんせ20年勤めた会社で(実際は入社前から3年くらいバイトしていたので23年近い)もう上京する前の実家より長いこといた場所ですから、色々な思い入れもありました。
ただ、自分がより成長するために、別の視点で物事を見てみるために、旅にでてみよう、そんな気持ちで転職をすることにしました。

旅には出たばかりですが、この旅路が良いものになればよいと願って、この入社エントリを書いています。

宣伝

バフェットコードでは、エンジニアを募集しています!
あなたも異世界転生してみませんか?
ご応募はこちら

















あ、そういえば、今日、本を買いました

Rust

C++の進化版と聞いていたのでやらないわけにはいかないと思っていました
枯れるのを待っていたけどそろそろいいかなと。
この本の帯には「安全性、高速性、並列性に優れ、C/C++の問題点を解消した新世代のシステムプログラミング言語」とあります。

ふぅん……?

本当にC++の進化版なのか、ページをめくるのが楽しみです