このエントリーについて

いやゆる退職ブログです。どのようにしてCircleCIに入り、どんな仕事をし、そしてなぜやめるのかについて書いています。あとちょっぴり求人要素も入っています。

アメリカのスタートアップで働くのってどう?英語はどれくらい必要?など、実体験に基づいた一般論も書きました。海外のスタートアップに挑戦しようとしている方の後押しになれば幸いです。

目次

コンパクトにするつもりが、書きたいことが沢山ありすぎて長文となってしまいました。前半は思い出の振り返りポエムなので、興味がない方は海外のスタートアップで働くことについてまでスキップしてもらって大丈夫です。

CircleCIについて

CircleCIはアメリカのサンフランシスコに本拠地を構えるスタートアップです。着実に資金調達を繰り返し、直近のシリーズEでは1億ドル(日本円で約115億円)を調達しました。

継続インテグレーション・継続デリバリー、いわゆるCI/CDのプロダクトをメインに開発しています。CI/CDは開発者がコードに変更を加えるたびに自動でテストを実行したりデプロイするのを手助けしてくれる技術です。

CI/CDについて詳しく知りたい方はCodeZineで書かせていただいた「CI/CDのエキスパートが解説:CI/CDとは何か? なぜ今、必要とされるのか?」を読んでもらえればと思います。

CircleCIでやったこと

大きく分けると次のような仕事をしました。

  • サポートエンジニア
  • ソフトウェア開発
  • 日本法人の立ち上げ
  • SRE

サポートエンジニア

最初はサポートエンジニアとして入社しました。そのときCircleCIはシリーズBを調達したばかりで、アジアの時間帯でサポートできる人を探していました。僕は日本で初めての採用として入社しました。東京から毎日リモートでアメリカの会社に勤めると言うちょっと変わった日々の始まりです。

このときCircleCIは20人ほどの小さな会社でした。フルリモート・マネジャーなし・好きな時間に働いてOK・有給休暇は無制限、など絵に描いたようなスタートアップです。

入社の手続きでサンフランシスコのオフィスを訪れてCTOのRob Zuberに挨拶に行くと、「入社おめでとう!ところでnpm installがコケててユーザーに影響が出てるから一緒にデバッグしてもらえる?」と入社20分後にいきなり仕事を振られ「これがアメリカのスタートアップか。ごくり、、」といい意味でショックを受けたことはつい最近の出来事のように覚えています。

ソフトウェア開発

サポートで少しずつプロダクトに対する理解を深め、サポート業務以外の仕事も少しずできるようになったので、入社前からやりたかったソフトウェア開発の仕事をするチームに移りました。

実は入社面接のとき、開発のポジションとしてエントリーしたのですがコーディングテストの結果がひどすぎてサポートとして採用されたのは内緒です。

色々なプロジェクトに携わりましたが、今のCircleCIのプラットフォームの基礎となっている「CircleCI 2.0」のプロジェクトに携われたのはとても幸運でした。

日本法人の立ち上げ

2018年になると社内で日本法人を立ち上げる機運が高まってきました。どのように自分が担当することになったか詳しい経緯は覚えていないのですが、とにかく担当することになりました。CircleCI Japanの誕生です!

日本法人立ち上げプロジェクトは問題が曖昧すぎてどこから手をつけていいか全くわかりません。それでもやりながら少しずつわかってきたことはCI/CDに関する認知度が自分が思ってたよりもずっと低いということです。

CI/CD、そしてCircleCIがどのような問題を解決するのかを伝えるために登壇したり、コミュニティーの活動をがんばりました。この時まではマーケティングを馬鹿にしていた僕がその重要さに気づきます。

SRE

さて、登壇やらコミュニティーやらの活動を1年ほどした頃、自分に中でコレジャナイ感が漂いはじめていました。マーケティングに対する認識は改まったものの自分には向いていないと強く感じるようになっていました。

次何しよう、、、そう考えているときにSREチームへのオファーをもらいます。この頃CircleCIではKubernetesを使ったマイクロサービスアーキテクチャーにシフトしはじめていました。Kubernetesを学んでみたいという気持ちもあったのでSREチームへのジョインを決めました。

振り返るとこの期間で一番楽しかったのは執筆の仕事だった思います。日本法人の立ち上げ時に技術評論社のWebDB+PRESSでCircleCIの特集を書いてくれたuraway_tomoyatonと知り合い、CircleCI実践入門を書くプロジェクトが始まりました。コロナ禍もあり執筆作業は当初の予想より時間がかかりましたが、誰一人諦めず一冊の本を完成させたことは僕の誇りです。

海外のスタートアップで働くことについて

ここまで思い出ばかり語ってきたのでここからは一般論について書きたいと思います。日本からアメリカのスタートアップで働くのは実際どんな感じかについてです。

英語について

やはりみんなが最も気になるのは英語じゃないでしょうか。

CircleCIに限らずエンジニアリングのチームで働く場合、英語は必須なところが多いと思います。ペラペラである必要はないですが、日常の会話は英語で行われるので技術的なコミュニケーションが取れるくらいのレベルは必要だと思います。

簡単でないですが挑戦する価値は大いにあります。もし英語でエンジニアリングの仕事ができるようになれば今後のキャリアの可能性が大きく広がるからです。

CircleCIにはいい前例もあります。一緒のチームで仕事をしたganezasanは最初は英語は得意ではありませんでしたが、毎日欠かさず勉強をしたおかげで今では何の問題もなくチームとコミュニケーションがとれるようになっています。

最初は難しくても毎日コツコツ続けることで身に付くのが言語のいいところです。CircleCIには日本法人もあるので英語に対する壁は少し低いかもしれません。

時差について

正直これが一番難しいところなんじゃないかと思います。

僕が入社したときはどうしてもアメリカ時間に合わせる必要があったので朝すごく早くか、夜すごく遅くに仕事をする必要がありました。深夜1時のミーティングは慣れっ子です。

どこのスタートアップでも求められるわけではないですが、仕事の時間を柔軟に対応できるのは海外のスタートアップで働く上で重要なスキルだと思います。

CircleCIでは日本のエンジニアリングチームがしっかりしているので業務時間内で大体完結しますが、それでもトラブルがあった時やプロジェクトを早く進めたいときは仕事をする時間を調整する必要があったりします。

フルリモートについて

コロナ禍ですっかり定着したリモートワークは海外のスタートアップで働くには必須です。

最初に言っておくとリモートワークは素晴らしいです。無駄な通勤時間を減らし生活に余裕を作ります。オフィスに行かないので病気にもかかりにくくなります。

しかし、使いこなすにはある程度のスキルが求められます。そこに時差が加わるとさらに難しくなります。

時差を超えてリモートワークでうまくやるには、1. 積極的なコミュニケーション力2. チームメイトに対する信頼が重要と考えています。

1.がないと情報の齟齬が発生し勘違いや手戻りが多くなります。2.がないと例えば自分の質問に対する答えがすぐに返ってこないことにフラストレーションを抱えたりして、チームメイトに対して疑心暗鬼になったりします。

いつどこにいても同じ目標を達成するためにチームで仕事をしているんだ、という意識を持てないと難しいでしょう。

ストックオプションについて

ここはもっと早く知っておけばよかったと思うことなので少し詳しく書いています。ストックオプション(以後SO)に興味がない人は読み飛ばしてもらって大丈夫です。

SOは株価が上がったとしても昔の安い時の株価で買うことができる権利を意味します。あくまで権利なのでSOをもらっても株をもらっているわけではないことに注意が必要です。権利を行使して安い価格で株を購入し、今の高い株価で売却した時の差額が利益になります。

これだけであれば話は単純です。自分の会社に対して自信が持てないうちはSOを保持しておき、株価が高くなったらSOを行使して株を買ってその後売ればいいだけの話です。

しかし、税金が関わってくるとややこしくなります。

スタートアップでよく使われるSOはNSO(非適格ストックオプション)といい、日本(と多くの国では)では税金が2段階でかかります。まずNSOを行使して株を取得した時点で所得税がかかり、売却したときにもう一度かかります。

前述しましたが、株は取得して売却することで初めて利益が出ます。株を取得するだけではだめです。

しかし、NSOは取得した時点で会社からの報酬、つまり所得、として見なされるため所得税がかかります。もし、取得した後会社が倒産すれば所得税は払い損になります。また、この所得税は株を売却する前に払う必要があるのであらかじめキャッシュがないと株は購入したけれど税金が払えない、という事態になりかねません。

つい長くなってしまいましたが、要するにスタートアップのSOは博打的な要素が強いので注意が必要と言うことを伝えたかったのです。詳しく知りたい人はこちらのブログがわかりやすいので読んで見てください。

CircleCIで働きませんか?

唐突ですがここで求人情報です。現在自分の代わりにチームに入ってくれる人を募集しています。

ここまで読んでもらえるとわかってもらえると思いますがCircleCIはいろんな挑戦ができる素晴らしい会社です。CircleCIもCI/CDの分野もこれから大きくなることは間違いありません。日本法人があるおかげで福利厚生などもかなりしっかりしていると思います。

  • チーム: Infrastructure Engineering Team
  • 募集ポジション: Staff Engineer (うまく訳せないのですが、シニアエンジニアの一つ上です)

仕事の内容はKubernetesを主とするマイクロサービス基盤の構築・運用です。どんどん増えていくマイクロサービスを安定稼働させスケールできるような基盤を整えることがミッションです。

技術スタックはAWS, k8s (EKS), Terraform, Goを主に使用します。チームは日本、ヨーロッパ、アメリカのリージョンに分かれていて、主に日本のチームで働くことになります。

このチームのいいところは世界の全時間を3チームでカバーしているので業務時間外の障害対応がほとんどないということです。障害が長引いてしまう時は次のリージョンのチームにバトンタッチして対応します。

これは深夜のエスカレーションと切っても切れない縁があるインフラエンジニアにとってはすごいことではないでしょうか!

もし興味がある方はこちらから応募をお願いします。気になることがあればTwitterのDMで直接聞いてもらっても大丈夫です。

なぜやめるか

いくつか理由があります。

1つ目は3人の子供の育児に一息つくことができるようなり、仕事に復帰できるようになった妻をサポートするためです。

2つ目はCircleCIに入る前に持っていた「ソフトウェア開発者になりたい」「Coolなスタートアップで働きたい」「本を書きたい」という3大目標を達成したためです。

3つ目は自分で起業した会社に集中するためです。実はCircleCIに勤めながら副業として電動キックボードの会社であるSWALLOWを運営してきました。

なぜ起業に至ったのかの経緯だけを簡単に書くと、日本法人の立ち上げが落ち着いた頃、自分のキャリアパスについて迷っていました。このまま開発者としてやって行くのか、それとも日本法人の正式な代表(カントリーマネージャー)になるべきなのだろうか。

CEOのJim Roseに相談したところ、「おまえは”manage”(管理)より”do”(行動)が好きだろう?カントリーマネージャーは”manage”する仕事だから向いていない。自分もそうだ。行動するのが好きだからCEOをやっている」と言われました。

それまでCEOは漠然とマネージャーの延長なのだと思っていましたが、Jimの言葉によりCEOとは色んなことに挑戦できる仕事なのだと気づきました。

確かに自分はマネージャー向きではなく、色々な新しいことに挑戦することに生きがいを覚えます。自分で会社を起業してCEOになれば常に新しいことに挑戦できるんじゃないか、そう思い立ち色々模索したのち電動キックボードという自分が夢中になれるフィールドを見つけたので起業しました。

一般的に開発者はある時点でそのまま生涯開発者で行くか、マネージャーに転向するかという二択に迫られます。僕はそこに起業という第3の選択肢を提案したいと考えています。こちらについては今後改めてエントリーを書けたらと思っています。

おわりに

ここまで読んでくれてありがとうございます。

CircleCIを辞める日は永遠に来ないと思っていたのに、実際にその日が来るとあっけないものでした。今までお世話になった人に感謝を伝え、このエントリーを書きつつ淡々と退職の事務処理を進めています。

7年という時間はほとんどのスタートアップの寿命より長いでしょう。CircleCIの初期にジョインして共に成長できたことは人生で最も貴重な経験となりました。

しばらくは沢山本を読んで、余った時間を家族と過ごすために使うつもりです。

次の挑戦についてもこのブログやTwitterで発信していくのでフォローいただければと思います。