golden-luckyの日記

ツイッターより長くなるやつ

2010年代に日本のインターネットでいろんな事業をいい感じにやってきた会社から2020年代へのヒントをもらえる本を作った

半年ぶりの新刊です。『Engineers in VOYAGE ― 事業をエンジニアリングする技術者たち』です。紙とPDFがセットになった直販サイトはこちら。

f:id:golden-lucky:20200806215919j:plain:w150

さて、今回の新刊、いろいろ疑問を呼ぶタイトルかもしれません。

  • 「なぜ VOYAGE GROUP?」
  • 「なぜ t_wada?」
  • 「なぜ宇宙船?」

「答えは本書で!」と言って済ませることもできるのですが、ここで少し「個人的」なふりかえりをして何となく答えた気分になっておこうと思います。

なぜ VOYAGE GROUP?

もともと自分にとってVOYAGE GROUPという会社のイメージはこんな感じでした(雑な認識で本当に申し訳ありません…)。

  • 勉強会とかで会場とピザとビールを提供していただく会社(「SphinxCon JP 2015」で基調講演をさせてもらった思い出深い会場)
  • 社内に「ajito」という不思議なバーがある会社(『すごいErlang』の打ち上げもnishigoriさんのおかげでajitoでさせてもらえたのだった)
  • そしてなによりも「あじよしさんがいる会社

あじよしさんというのは、昔から自分が勝手にリスペクトしているソフトウェアエンジニアで、自分の中では「仙人っぽいエンジニア」カテゴリに入っている人です。 もう10年くらい昔になると思いますが、Haskellのイベントの後の懇親会で、『関数プログラミングの楽しみ』か何かの話をしたときのことをいまだに覚えています。 その前にも『プログラミングErlang』関係でどこかでお会いしたかもしれません。

そういった本を読んで自分の武器にしている強いエンジニアが長いこと務めているIT系の会社というのは、やはり何か面白いことがあるんだろうなって想像するわけです。

しかし、その会社がどんな事業をしているのかは、正直なところよく知りませんでした。 それこそあじよしさんが何年も前にErlang系の技術イベントか何かでオンライン広告の単価を決めるリアルタイムオークションの仕組みを説明したプレゼンを聞いたことくらい。 「広告配信の会社なのかな、そういえば前身にあたるECナビ(10数年前にちょっと使ったことがある)も広告いっぱいあったな」という漠然とした認識しかない状態です。

そもそも門外漢である自分は、インターネットの広告配信がどういう仕組みで成り立っているのかもよく知らず、あじよしさんの件の発表も「とにかくトラフィック多そう、やばい」という感想どまりでした。 だって、大きなウェブメディアでどれくらい膨大なトラフィックがくるのか想像もつかないけれど、 「あるウェブページをブラウザで表示したときの広告の単価がリアルタイムで毎回動的に決まっている」なんて外野には思いもよらない知らない世界です。 日々ぼーっとインターネットを眺めていると「もう広告ってGoogleとかFacebookみたいな大会社の領分になったのかな」って錯覚しそうですが、 日本の会社でそんな得体のしれない高トラフィックな仕組みをErlangで実装してビジネスをしているらしい

そんな雑駁とした「すごい」という認識しかなかったVOYAGE GROUPのCTOである小賀さんから、ある日「tech bookを作りたいと思ってるのだけど…」という相談を受けたのがすべての始まりでした。

「VOYAGE GROUPのtech book」と聞いて自分がまっさきに無邪気に思い描いたのは、 「現代のウェブ広告配信を支える技術を解説するような本ができるのかな、それはとても面白そうだぞ」という専門書脳の企画でした。 しかし実際に小賀さんとお話をしていると、どうやらVOYAGE GROUPにおいて広告配信の事業は氷山の一角っぽい、ということがわかってきます。 実際にはもっといろんなことをやっているし、広告配信にしても単にトラフィックさばければいいわけでもないっぽい。 しかも、それぞれの事業にあじよしさん級のすごいソフトウェアエンジニアがごろごろいるらしい(冷静に考えれば当然)。 そういえば、某チャットなどでオンラインだけでは接点があったはぎーさんもVOYAGE GROUPだったのでは?(いまいち繋がっていなかった)。

小賀さんとお話しながら、「これはもうVOYAGE GROUP全体の技術者文化を伝える本のほうが面白いな」という方向へ舵を切り、 「それなら t_wada さんっていうぴったりの人がいるので彼の力を借りられれば…」という話になり、 「どうなるかわからないけど、やってみるしかないね」となったのが、ちょうど2020年を迎えようとしていた頃でした。

なぜ t_wada?

簡単に言うと、t_wadaさん本人による「はじめに」にもあるように(ここで全文が読めます)、 t_wadaさんはVOYAGE GROUPの技術コーチをされていて中の技術者を知っているだけでなく事業に対する理解もあったからです。

個人的に言えば、「t_wadaさんと仕事ができる!」ことに望外の喜びもありました。喜びというよりも、「ならば、やらない道はない」という覚悟に近かったかもしれません。 t_wadaさんとはアジャイル開発に関係する本をいろいろ企画編集していたことから何となく知己はあり、 「『テスト駆動開発』の再刊に向けた打ち合わせ」といった形でお仕事上の関係がまったくなかったわけでもないのですが、 同書は自分の担当ではなく(出版されたのも自分が会社を辞めた後)、これまで直接お仕事をする機会には恵まれなかったのです。 小賀さんから打診してもらった結果、「執筆するのは厳しいけれどインタビュワーならぜひ」と言っていただけて、自分にとっては「棚から牡丹餅」とさえ言える座組が完成したというわけです。

にしても、t_wadaさん、本当にすごいインタビュワーだった。 文章にするため毎回のインタビュー(と後半ではshownote作成のためのランチにも)に同席していたんですが、「こんなん、t_wadaさんしか聞き出せないでしょう」という話がぽんぽん出てくるわけです。 毎回毎回、「ああ、自分はこういう話を知りたかったんだよなあ」と思っていました。

ここで「こういう話」っていうのは、具体的にいうと、「インターネットで事業にかかわる開発者たちが日々どんなふうに仕事をしているのか?」です。 自分は、ソフトウェアエンジニアが読むような本を作ったり記事を書いたりしているし、技術的なことは何となくわかりますが、 ソフトウェアエンジニアとして会社勤めをしたことはないので、その辺はふつうの会社(もっというと出版社)での経験からの類推でしかわかりません。 「技術をお金に換えること」に対する実感があまりない、とも言えます。

そんな自分が毎回のインタビューに同席していて特に面白かったのは、そういう泥臭い部分に対峙する現場の姿がインタビュイーからぽつぽつと引き出されてくる瞬間です。 そういう感覚を特に強く持っている人たちへのインタビューだったからかもしれないけど、 そうやって「別に隠されているわけではないけれど実際に最前線で事業を回している人しか体験できない話」が聞けるのは本当に貴重な時間でした。

おかげで、自分自身の「お仕事」に対する意識もだいぶ磨かれた気がします。 表面的な業種は違うけれど、出版もまたソフトウェア産業と同じく情報を扱うお仕事であり、なんならソフトウェア産業そのものという側面もないわけではないので。

とにかく、今回お仕事を一緒にさせていただいて改めて実感したのは、「t_wadaさんはテストを書かないとやってくるライオンというだけではない」ということです。 インタビュイーからはもちろんですが、そんなt_wadaさんの心構えからも「ソフトウェアという仕事に向き合うヒント」をいっぱいもらった気がします。 そして、うまくいっているといいんですが、それが本書の内容にも反映されていればうれしいです。

(ちょっと話はずれるけれど、全6回のインタビューのスケジューリングをはじめVOYAGE GROUP社内の調整を完全にお任せした丹野さんの仕事っぷりからも、自分自身の日々の仕事に対するいい加減な姿勢を大いに反省させていただきました…。本当にお世話になりました。)

なぜ宇宙船?

今回のカバーデザインは、『テスト駆動開発』などのデザインも手掛けた轟木さんです。 「この本はどういう本であるか」を早口でメールでまくし立てたしたところ、頂いた装丁案のひとつがこれでした。 かっこよさにもいろいろありますが、「この本らしいかっこよさ」があふれ出ている最高にロックな装丁になったと思っています。

で、結局のところどういう本なの?

本書を作っていて自分がいちばん強く感じたのは、「恥ずかしながら自分はインターネットで事業をするってことが全然わかってなかったんだな」という点です。 技術的にもビジネス的にも、この10年にインターネットやウェブでどういうトレンドの変化がありどういうふうにお金が生まれているのかについて、だいぶ無自覚だったなと。

逆にいうと、本書を読むとそれがわかるのではないかと思います。 「2010年代に日本のインターネットでいろんな事業をいい感じにやってきた会社から2020年代へのヒントをもらえる本」と言っていいかもしれない。 実際、インターネットで働いている人であれば、この「補足解説一覧」を眺めるだけでも何かしら心に引っかかるトピックがあるでしょう。

  • アドテクノロジーの変遷
  • オンプレミスかクラウド
  • VOYAGE GROUPの「グレード」と「技術力評価会」
  • インプレッションとそのカウント方式
  • SREに対する考え方
  • リファクタリングと作り直しの違い
  • オブザーバビリティ
  • 広告におけるプライバシーの課題
  • アドテクノロジー業界でよく使われる用語
  • MVP(Minimum Viable Product)
  • フルサイクル開発者とは
  • Zucksのシステム構成
  • XPとケント・ベック
  • 2025年の崖
  • リバースエンジニアリングが「お花畑」に
  • 技術的負債とレガシーシステム
  • IaC(Infrastructure as Code)
  • PHP OPcacheによる葬り無双
  • 葬り無双の効果
  • SEO(Search Engine Optimization、検索エンジン最適化)
  • 静的サイトジェネレータによる構成
  • CMSと静的サイトジェネレータ
  • AWS CodeBuild による記事の並列ビルド
  • 静的サイトジェネレータで動的なコンテンツをどう実現するか
  • BtoB であると同時にBtoC なサービスを支えるシステムを作る
  • データベース設計の意図をたどれるようにする
  • 実装から距離をとってテストを書くことで独立性を保つ
  • 統計的機械学習と予測
  • ファーストプライスオークションで入札額を決めるアルゴリズムの概要

絶対おもしろそうでしょ?

気合い入ってます

というわけで、2020年1月からたくさんの方々と協力してコツコツ作ってきた本がついに形になりました。 いろいろな思いがあります。でも要約すると、大芝浜祭で自分のアニメを両親にぶつける水崎ツバメと同じ気持ちかもしれないなと思います。

気合い入ってます! 読んでください!

本書の制作にあたってはVOYAGEさんからの金銭的な支援も多分に受けました。 その分、ふつうの出版社だったら実現が難しかったであろう濃い本が作れたと確信しています。 やはり水崎ツバメの言葉を借りるならば、「インディーズ出版社が生きるってことは、こういう本をつくるってことなんだ!」という気持ちです。