Squareに転職しました

f:id:soutaro:20191118172717j:plain

11月からSquareで働いています。POSレジを作るのが嫌になったと言ってユビレジを辞めてSiderに転職したのが2016年、その3年後にまたレジの会社で働くことになるとは……(レジは作ってませんが。) *1

アメリカに行くのかというとそんなことはなくて、東京で日本法人の従業員として働いています。Squareが日本でサービス開始したのは2013年のことですが、それ以来東京のオフィスには開発者がいない状況でした。募集もしてなかったのですが、募集があるかどうかの確認もせずに知り合いづてに応募した人間がいて、それが私です……入社してから気づいたのですが、最近、全社を挙げてSFから世界中に分散していくというのを進めているそうで、その流れに気づかないうちに乗っていたのかもしれません。

今回仕事を探すに当たっては「RubyとSteepの開発に時間を使えるようにしたい」「社内でRubyの型に関するテスト・実験がしたいので、それなりに人数がいてRubyで書かれたコードに投資し続けていく意思があるチーム」という希望がありました。Squareでは、

  • 東京オフィスで発生している様々なエンジニアリングに関する問題の解決
  • SquareのRubyコードへの貢献(型検査とか)
  • Ruby/Steepの開発

などをやっていくという話になっていて、つまりRubyコミッタとしてお給料の一部をもらっていることになるので、これからはパートタイムコミッタを名乗っていきたいと思います。

入社までの経緯

去年Fog City Ruby MeetupでSteepの話をしたときに、ShannonBrandonなどSquareの開発者と会っていて、それ以降もRubyConfやRubyKaigiなどで何回か顔を合わせていたこともあり、今年の夏に転職をしようと思ったときに相談してみたのがきっかけです。その後、社内で調整してもらうのに少し時間がかかったようですが、面接などして入社となりました。

面接は、

  1. コードを書く
  2. ホワイトボードにお絵かきしながら技術的な話をするやつ
  3. これまでの経験などについて話をするやつ

などの種類があって、最初にリモートで1.と3.を一時間ずつ、次にまたリモートで全部で5時間、という流れだったはずです。2ラウンド目の5時間の方は、多分普通はSF本社でやるんだと思いますが、私の場合はリモートで3日かけてやりました。コードを書くのは、お題をもらって小さなRubyプログラムをペアプログラミングするもので、アルゴリズムについて詳しく聞かれたりとかいう感じではありませんでした。*2

今のところの感想など

入社して1ヶ月くらいなので、まだまだよくわかってないのですが、

  1. それなりにでかい会社なので開発者も多く、CIサービスが自前のものだったりいろいろと社内向けのツールがそろっていたり、いろいろと投資できるんだなーと思う
  2. アメリカとミーティングをすることがありますが(マネージャとの1 on 1とか、開発者との話とか)、地球の形の都合から午前中にビデオ会議になります
  3. マネージャがいていろいろと世話を焼いてもらえる *3

など、興味深いいろいろがあります。

また、Webサイトの採用情報はまだ出ていないのですが、東京オフィスで引き続きエンジニアを採用していくという話をしていますので、興味があるようでしたら私に声をかけていただければ。私はRubyを書いていますが、それ以外でもJavaiOSAndroidが書ければ、なんとかなるのではないかと思います。

英語はかなり厳しいことはあって苦労はあります。マネージャにも、「こいつは少しだけだけど日本語がわかるから、なにかあったら相談しろ」とSFで人を紹介してもらったりとか、1 on 1で喋っててもうまく通じないのでSlackに書いてもらったりとか、申し訳ない気持ちがある……*4

*1:ちなみに「前は日本でiPad向けのPOSレジを作っていたんだ」と社内で自己紹介するとまあウケます。

*2:例えばGoogleではかなりアルゴリズムの話を突っ込んですると聞いていますが、それとは違うようです。

*3:僕は大体ずっとスタートアップの役員として仕事をしてきたので、マネージャに相談したら問題が解決するというのは新鮮な体験です。

*4:一方で「日本語で話しててもこのくらいの意思疎通のエラーはしょっちゅうでは」という思いもあるので、気持ちを強くもって生きていきます。