Launchable の人とカジュアル面談した


TL;DR

  • 興味があったので Launchable の @yoshiori さん @draftcode さんとカジュアル面談をした
  • テストをはじめとしてソフトウェアエンジニアリングの生産性をデータドリブンで改善していくというのはめちゃ面白そう
  • 自分は現段階では転職意思がないけど、機械学習エンジニアで興味ある人は言ってくれればおつなぎします!

Ubie Discovery に転職して一年半が過ぎた。
日々楽しく働いているのだが、ご時世も相まって外の情報を得ることが少ないのはちょっと残念だなぁと思うことがある。
他の会社の人の話を聞くのは面白いしためになることも多いので、またそういう活動も少しずつやってみようかなと思い始めた。

そんな折に Launchable https://www.launchableinc.com/ で Machine Learning Engineer の position を募集しているというを見て、yoshiroi さんが転職した会社だし面白そうなので話を聞いてみたいなと思って連絡したら、転職の意思があまりないと事前に伝えていたにも関わらず快諾してもらった。

現時点では自分が転職するということはないが、興味ある人もいるだろうということでブログに残しておく。 (話の内容をブログにしてもよいというのはすでに先方に確認を取っています)

経緯

書いた通りだが、思い立って連絡したら一時間ほど話をしてもらえることになった。 最近入社した @draftcode さんも呼んでもらって三人で話をすることになった。

自分としても面白そうだと思っていた分野なので、話の前に HP を見て紹介されていた https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/45861.pdfhttps://engineering.fb.com/2018/11/21/developer-tools/predictive-test-selection/ やちょっとググって関連知識を調べるくらいはしておいた。

Launchable の会社全般的な話

会社の目指すところはデータドリブンでソフトウェアエンジニアリングの生産性を上げるというもので、その最初の取り組みとして特にテストに注力しているとのことらしい。

ソフトウェアエンジニアリングはどのように不確実性と向き合うかというのを積み上げてきてはいるが、その中には確率的に判断せざるを得ないものもあるし、そうなると適切にデータを集めて統計的に考え行動する必要があると思う。
データ分析とか機械学習とかが流行り始めて久しいが、ソフトウェアエンジニアリングにおいて開発プロセスをデータドリブンで改善するという取り組みは驚くほど少ない気がする。
これは待っていても勝手に開発プロセスに組み込まれる気配はあまりしないので、それを主目的とするサービスが広がることによってソフトウェアエンジニアの行動を変容させていく必要がある、ということなのだろう。

そういったところに真正面から取り組んでいる Launchable の目的には共感する。

ビジネスモデルは toB 向けのフリーミアムモデルで、HP の pricing を見るとなかなか面白くて、$7 / hours saved ということで開発が効率的になった分だけお金を支払うというものになっているらしい。
現状はテストを主戦場としてるのでこのような料金体系になっているというのもあると思うが、顧客にとって分かりやすい価値が売上に転換されるので、シンプルで力強いなと思った。

マーケットはソフトウェア開発をしている企業全般ということになるのでポテンシャルはとても大きい。
いわゆる Horizontal SaaS になっていて、ソフトウェア開発におけるテストという現世にはありふれたものを対象にしているので、サービス改善によるレバレッジはめちゃくちゃ効くという話になっている。

とはいえ会社ごとに違いはありますよね?という疑問が思い浮かぶので聞いてみたが、会社ごとにセットアップしてサービスを展開してきて、色々な勘所が分かってきたという段階らしい。 カスタマイズを要求されまくって破綻するみたいなことはなさそうな一方で、もっとスケールさせるためにはまだまだアイデアやチャレンジが必要そう、みたいな印象。

最近優秀なソフトウェアエンジニアの人が続々入社してる会社なので、一緒に働く同僚から得られる刺激が多そうなのもよさそう。

Launchable の機械学習周りの話

機械学習周りの話も色々と聞いてみた。

ファイルの変更行数などを入力特徴量として、各テストの fail する確率を予測する GBDT を使うというのが基本になっているらしい。
モデルに関しては初手これくらいでよさそうというものを作ってみたらそれで結構いけるのが分かったので、いまはそれ以外の部分を作り込んでいることが多いとのこと。
サービス初期なので、ある程度使えるものができたとなればモデリングよりも他に時間を掛けることが多いと思うけど、どういう特徴量がどう効いてるかとかを色々いじりながら調べることができたら面白そう。

テスト実行を積み重ねることによってそこから単なる 成功/失敗 以上の情報を抽出するという試みは興味深い方向性だ。
flaky test の原因がより効率的に分かるようになるとか、コードの品質を高めなければならない部分がデータで可視化されるようになるとか、そういう価値までどうやったら出せるようになるかを創っていくのは楽しそう。

同じ会社でもレポジトリによって触る人が全然違うし、テストは複数レポジトリにまたがることもあるので、モデルを学習する単位としては一連のテストを実行するプロジェクト単位で作っているとのこと。
ある程度の規模で使い込まれるまではデータが少ないのでその辺りの解決策を(機械学習だけにとどまらずにサービス全体で)考えるとか、ある会社ではうまくいくけど別の会社ではうまくいってないというときにその原因を分析してそれを抽象化して広くスケールできるように改善するとか、そういう部分が課題と言っていた。

ソフトウェアエンジニアリングに造詣がありつつも軸足は機械学習にある、というタイプの人がマッチしそう。
新しい会社なので 0 → 1 ができる人で、新しいアイデアを出したりビジネス的な観点でも議論できる人が必要、とのことでした。

ということで、Launchable は機械学習エンジニア絶賛募集中とのことです!

ソフトウェアエンジニアは採用が順調だけど、機械学習エンジニアはなかなか path がないとのことだったので、私からも宣伝しておきます。
興味があるので話を聞いてみたいけど、中の人を知らないのでいきなりは声を掛けづらいという場合は、菊田に Twitter DM とかで連絡をくれればおつなぎします。

もちろん一番は Ubie Discovery に興味を持って話を聞かせてくださいというのを期待しますが、Ubie Discovery よりも Launchable の方が興味があるんや!という場合も遠慮なく言ってください。
一応言っておくと紹介してインセンティブとかはもちろんないです。 勢いのある面白そうな会社でチャレンジする人々が増えればいいなと思っているだけです。

ちなみに拠点は JP と US だけど、開発拠点は日本が中心とのことです。
とはいえ @draftcode さんは US で働いてるので、希望があれば US とかでも働ける雰囲気でした(詳しく聞いてないですが、拠点があるのでビザの問題とかクリアできたらきっと大丈夫なんでしょう)。

菊田さんぜひ!というありがたいお言葉もいただきましたが、自分の興味関心から考えるとやはり Ubie だなという気持なので、何か状況が変わるタイミングがあったりしたらまた話をさせていただきたい、という感じでカジュアル面談は着地しました。

まとめ

興味があったので Launchable の話を聞いてみたら面白そうだったのでブログに書いてみた。
興味はあるけどいきなり中の人には声を掛けづらいという機械学習エンジニアがいましたら、菊田までお気軽にご連絡ください。

ちなみにあわよくば話をした二人とも Ubie Discovery に引っ張ってこようとして話の最中にどんどんこちらの話もねじ込んだのですが、さすがに転職するという雰囲気はありませんでした。ベンチャー企業同士仲良くやっていきましょう!