Automatticに入社しました

2年間お世話になったセオ商事を2018年6月いっぱいで離れ、8月から Automattic に JavaScript エンジニアとして入社することになりました。

2年前、ずっと趣味でやっていたプログラミングを本職にしたい気持ちが高まってきたところ、kotarok さんに背中を押してもらいセオ商事を紹介されたのがすべての始まりでした。

業界未経験ではありましたが、企画からUI設計、デザイン、開発まで、多岐にわたる経験をこの短い期間で積むことができました。しかも、社長の瀬尾さん、同僚のあらたまさんと今井さんという、公私ともに仲良くできる人たちに囲まれて。契約形態やリモートワークなどに関しても柔軟に応じていただき、フリーランスからの転職だったのでとても働きやすかったです。

背伸びのチャレンジ

そして今年の春、もっと開発主体の仕事に身を投じたいと強く思うようになり、理想の会社として少し前から注目していたアメリカの Automattic に応募しました。

会社の価値観デザイン思想働き方、すべてに深く共感でき、移籍するならここという確信があったので、いわゆる一球入魂の応募です。コネもなく書類選考すら通らない覚悟だったのですが、まさかの最終選考まで合格。世界中から大勢の候補者が集まってくるなかから、雇ってOKな開発者(?)として認められて、今までの努力が実ったんだなあと感慨深いです。応募してみるもんですね……。

スタートラインに立ったばかりではあるのですが、 ついに開発を本職にすることができ、正直ちょっと夢みたいです。しかも、本社オフィスがもはや存在せず、世界中に点在する800人近くの全社員がリモートで好きな時間に好きな場所で働く、という先進的な企業。「東京にいながら世界進出」どころか、「靴も履かずに世界進出」できてしまうという、なんだか私のためにあるような会社です。

リモートワークに特化した採用プロセス

採用プロセスも独特でした。Slack上での面接&テクニカル知識チェックから始まり、これに通ると2次選考のコーディングテストに進みます。JSの採用なのに言語がJSじゃない上、バグだらけのひどいスパゲッティコードを渡され「いい感じにしてください」というフワッとした課題。完成品を提出するとコードレビューがあり、内容のディスカッションをSlackで行いました。

これに通過すると、3次選考の「トライアル」というフェーズに入ります。全職種一律の少額時給でいったん契約を交わし、1ヵ月ほど自分のペースで、そして自分の主導で、実務に準ずる仕事を遂行します。エンジニア職の場合、GitHubなどでコミュニケーションをとりながら、オープンソースの実際のプロジェクトに参加します。当然ほとんどの候補者はフルタイムの仕事についている状態で応募してくるので、夜間や土日に作業することになります。

CS系のハードな知識の深さを問われるというよりは、コミュニケーションやプロジェクトマネージメントを含めた総合力、そして何より主体性を査定されている感じがしました。リモートワークであるだけでなく、チームメイトがぜんぜん違うタイムゾーンにいたりして非同期的な進行になるため、ただ良いコードが書けるというだけでは成立しないようです。やっぱり対面型のコミュニケーションじゃないとつらい……という人もいるので、この段階で相性の悪さに気づけば辞退できます。

ちなみに最初から最後まで Slack や GitHub 上でやりとりするだけで、一度も顔を見られることなく採用されました。面と向かって(=ビデオチャットなどで)やりとりを行うことが実務上では少ないので、むしろテキストでのコミュニケーションしか審査する必要がないとのこと。外見や年齢、しゃべり方のクセなどでバイアスがかからないのも利点です。

周りに比べて大した経験も自信もないのでずっと不安でしたが、トライアルのおかげで最終的にはなんとなく実務をこなせそうだという感覚もつかめました。こうやって採用前に「疑似入社」するというのは、双方にとってなかなかの時間的投資にはなるのですが、それだけお互い正確にマッチングを見極められるんだろうと思います。実際、テック業界の平均からみると離職率がとても低いそうです。

日本の同僚も増やしたいので、興味のある方はぜひ求人ページを見てみてください。

開発系仕事のタイムライン

セオ商事に在籍していた2年間ではデザイン仕事をはじめ様々な業務を行っていたのですが、せっかくなのでその間に経験できた開発仕事を振り返ろうと思います。

当たり前のように開発者として働いている人からすると「何を大袈裟な」と思うかもしれません。が、長いこと本業と並行して趣味で開発をしていた自分としては、開発でお金がもらえるということ自体がおおごとであり、ひとつひとつが思い出です。嬉しかったこと、悔しかったこと、いろいろありました。自分の成長の記録として、1年後、5年後にまた見て笑いたいです。

2016年7月

セオ商事のウェブサイトを作らせてもらった!(WordPress)

個人的にいくつかのWPサイトは作ったことがあったけど、お金をもらってやるのは初めて。

2017年1月

LPコーディングの案件を任せてもらえた!(Gulp, Sass, jQuery)

自分ではない人がデザインしたものをコーディングするという、初めての純粋コーディング仕事。セオ商事のサイトを作ったときに、素のCSSを使うのが大変ということに気づいたので、Sassを使ってみることに。その流れでGulpに挑戦。また、「これどうやるんだっけ?」といろいろ調べているうちにアクセシビリティの大切さに気づく。アクセシビリティ=ウェブの本質と悟り、ウェブの人として生きていくことを決意。

2017年2月

プロのエンジニアの仕事ぶりを間近でパクりまくった!(Gulp, Sass, jQuery)

自分でデザインやユーザビリティテストを行ったウェブアプリのフロント部分コーディングを、tacamy さんのアシスタントとしてやらせてもらう。たくさんのコンポーネントをいかに切り分け、維持管理しやすい構造にするかといったノウハウをごっそり吸収できた。共同開発が初めてだったため、足を引っ張らないか、面倒な素人と思われないか不安だったが、どうにかついて行けた。

2017年5月

LPコーディングの案件! (Gulp, Sass, jQuery)

だいぶ慣れてきた。

2017年9月

SPAを開発! (React)

とある新規事業の需要・供給をシミュレーションするためのツールをあらたまさんと共同開発。ドメインモデル設計やシミュレーションのアルゴリズム、技術選定までいろいろ任せてもらえて、経験値が大幅にアップ。Webpackをイチから設定してみたり、ReactやES6に初挑戦したり、しっかりユニットテストを整備したり、なんだか今っぽい感じに! そして何より、今までほぼ1人Gitしかやったことなかったのを、あらたまさんのご指導によりPRやコードレビューなどのちゃんとしたGit作法をひととおり経験できて嬉しかった。

2018年2月 & 4月

LPコーディングの案件 (Gulp, Sass, jQuery)

余裕が出てきた。

2018年6月

SPAを開発! (React)

とあるキャンペーン用の管理ツールを、フロントエンドが私、バックエンドがあらたまさんという切り分けで開発。フロントは create-react-app から始めたら拍子抜けするほど簡単で、前回 Webpack をイチから設定したときのことを思い出して笑う。

これからの自分

いろんな人に支えられて、ようやくここまで来れました。

開発のこと、そして開発を通してプロダクトを良くしていくことを四六時中考えていられる環境がついに手に入り、ちょっと信じられないほどの幸福感があります。去年の9月に初めての React アプリを作っていた間、「この仕事が終わらなければいいのに、ずっと続けばいいのに」と思っていたのをよく覚えています。それが叶ったのです。

というわけで、しばらくは React/Redux や Electron 漬けの毎日になります。周りは10年選手、20年選手のエンジニアばかりなので、とにかく実務経験の浅い私はこれからもものすごい勢いで勉強しなければいけません。期待外れでクビになるんじゃないかという不安がないと言ったら噓になるのですが、がんばって少しずつ自信をつけていければと思います。

ひとつのプロダクトが世界中で使われるということが増えてきた今、それらのプロダクトを作る側の人たちが多様であることが非常に重要です。そうでないと、例えば英語以外の言語では非常に使いにくい設計のプロダクトが出来上がったりします。グローバルに使われるプロダクトの開発者として、自分は日本語話者を代表しているのだということに意義を感じています。また、アクセシビリティにこだわることの大切さも再認識しています。

半年後、1年後に自分が何をやっているのか、何を目指しているのかはわかりませんが、どうなるのかとても楽しみです。