ツナワタリマイライフ

日常ネタから技術ネタ、音楽ネタまで何でも書きます。

効果検証入門を読んだ

効果検証入門を読んだ

過去、自分は A/B テストなどを使ってプロダクトグロースをさせる仕組みと文化を作る、というのを一部の小さなチームで、データサイエンティストも入れたチームでやったことがある。

blog.studysapuri.jp

このときもそれなりに勉強したことを思い出しつつ、データ分析をしてビジネスを前に進めることの難しさを体感したのだった。

今は事業上の意思決定をVPとして行う立場にある。起案資料には「こういう施策をすると、この指標が x pt 伸びる。なので ROI は成立するので投資しましょう」といったものがある。

この確からしさの確認に苦労していた。もちろん確からしい説明もあっただろう。今この本を読んだあとだと、そこにセレクションバイアスがあるのでは、ということや、一見証明不可能に見えるものも因果推論ができる武器が増えたという感覚を持てた。何よりデータサイエンスの専門性に改めてリスペクトしたし、事業運営する上でかなりコアな要素なのではないか、という感覚を持てた。

なお今回は LLM を徹底的に使って疑問点を解消しながら読んだ学習体験は非常によかった。これもどこかでまとめたい。

続編がでていたのでこちらも読ませてもらう予定。以下、メモ。


  • 因果推論とは
    • ある介入によって Outcome がどれだけ変わったかを知ること
  • 1章:RCT(Randomized Controlled Trial / ランダム化比較試験)
    • これができるならこれが一番よい
    • あらためてだが、t検定の復習もできた
    • 帰無仮説=効果がない(という帰無仮説を置いた)状態を仮定したときに、観測された結果以上に極端な結果が起きる確率(p値)が、慣習的な有意水準である5%以下なら、統計的に有意差があるとみなす
  • 2章ではセレクションバイアス
    • RCTができない状況ではセレクションバイアスがないかを考える
  • 3章では傾向スコア
    • RCTができず、セレクションバイアスがあると想定する場合に、取得できる変数を使い、ロジスティック回帰などによって「その対象が介入を受ける確率=傾向スコア」を推定する
    • ただし、観測できていない交絡要因によるバイアスまでは除去できない
    • ロジスティック回帰で予測モデルを組み立てるところは古典的な機械学習にもつながる
    • 傾向スコアを利用する方法に2種類、PSM(Propensity Score Matching) / IPW(Inverse Probability Weighting)がある
  • 4章では DID(Difference in Differences / 差分の差分法)
    • ある特定の群だけ介入している場合、介入していない群の介入前後の時系列と、介入した群の介入前後の時系列を比較する方法
  • 5章では RDD(Regression Discontinuity Design / 回帰不連続デザイン)
    • 過去のルールなどで、ある連続的な指標の閾値によって介入有無が決まっている場合、セレクションバイアスが明示的に起きている場合、その閾値・カットオフ付近で見ることで、疑似的にRCTに近い比較ができる
  • “因果推論がビジネスに価値をもたらす状態になるためには、より正しい情報がより多くのビジネス上の価値をもたらすという条件が必要です。”
    • つまり、ビジネス上の意思決定に使われなければ意味がない。逆算してビジネス上の意思決定を行う自分がデータサイエンスのことを知る価値は大きいと感じた

入社してから8年

前回 https://blog.chaspy.me/entry/2024/07/27/120000

近況ブログはちょいちょい書いてたものの、入社してからシリーズはしばらくあいていたかもしれない。8年だって。すごーい。

最古参ではないものの、もちろん数えた方が早い感じにはなっている。よくまぁここまでなったものだ。僕の場合、すごく運が良かった。Quipper に"入社してから"、転籍とマネジメントへの挑戦があり、マネジメントも2021年10月からなので、もうすぐ丸5年ということになる。

5年間で、Group Manager / Engineering Manager を2年、部長 / Director を2年半。そして今は Vice President をやっている。

僕は昔同僚が言っていた「長くいるからこそ分かることがある」という言葉を根拠なく信じていた。長けりゃいいってわけでもないし、短いからダメってわけでもないけど。長くいるからこそ分かることは実際にたくさんあった。

それは、わかりやすい話であれば技術選定や意思決定のいく末を2,3年を経て分かる、ということである。今やそれは技術だけではなく、事業、組織、あらゆる意思決定が、そういうことだったのだ、と経験値として積み上がっていく。

権限がないとか、上がなんとか言うとか、そういう言い訳が効かないところまできた。自分が信じた方向にたくさんの人に努力と負担を強いながら、より良い世界を作っていく、そんな環境にやりがいを感じている。

VP になって Q1 の3ヶ月、もちろんミスったこともあるが、それなりに手応えを感じている。

ずっと同じことを言っているし、変わらないことなんだけど、本当に周囲の人たちの優秀さ、ありがたさに本当に助けられていると思う。これは役割関係なく。直近だと1番いま近いのが管掌範囲の部長さんであり、自分がタテもヨコも兼務なくVPに集中でき、お任せできていることそれ自体が有難い。

この組織ならまだまだなんでもできると僕は信じている。みんながそう信じられるようにできることをやっていきたい。

近況 2026/05

5月は営業日も3週しかないし、調子もあまりよくなく、進捗もそんなに出なかった。うーん、どうかな。出た部分もあるか。

恒例期初のアレコレは終わったので、リズムとしても落ち着きつつある。スケジュールがみっちりとかではない。だからこそやるべきことにフォーカスすべき。

Q1ラスト。ちょっと大きめな技術イシューの下準備を進めていて、これをなんとかクロージングに持ち込みたい。他、事業課題を技術で解く、というイシューをいくらか持っているので、それを関係者と合意取って進められるようにしたい。

6月は祝日もないので、休みをとって自分のリズムやペースを整えることも大事にしたい。焚き火もしたい。

そして6月は(もう!?という感じだが)10月の組織のことを考え始める必要がある。

いのちだいじに、調子を整えつつ、個人事業から法人立ち上げをやるとGWに意気込んだが結局進んでいないので、これも休みの日に少しずつ進めたい。やっぱまとまった休み必要だな…

この前トレファクに不用品を適当に持って行ったらそれなりに引き取ってもらえた。戻されたやつもあったが。値段がつくかというよりは、まとめて物理的に減らしてもらえるのはありがたい。捨てるのも忍びないし、なんならお金がかかるものもあるし。

身の回りの整理整頓、苦手すぎるんだけど、やっぱりそういうのが心の平穏につながるのはわかるんだよね。ずっと床に置かれっぱなしのアレとか、そのたびに認知コストじわじわ取られてるわけで…

最近嬉しかった話、といいつつ、退職されること自体は悲しいんだが、わざわざ挨拶のメッセージをくれて。直近半年で、あるビジネスイシューをなんとかしないといけないが、プロダクト組織との紐付きがなく困っていて、周囲の方が紹介してくださって僕に辿り着いて、じゃあ一緒にやりましょう、と行って新規ビジネスの検証を一緒にやってました。そのことに感謝を伝えていただいて。自分も新しい価値の創造プロセスを試せたし、何より顧客に会いに行って、話を聞いて、フィードバックをもらって、また仲間とそれを磨き込むそのサイクルが楽しかった。

なんというか、立場的にずっと現場に出るわけにもいかないし(合理的かはわからない)今後もこんな機会があるかはわからないけれど、すきあらばこういう機会は今後も持ちたいな。

一緒に働きたいと、そう思える仲間と働けるのは幸せ。

また別の話で、先週末、かつて一緒に仕事をしていて、異動した仲間を誘って近況報告がてら飲みに行った。共通の話題と、お互い新しい場所で感じたこと、やってることを話せて、とても楽しかった。あんまり自分から誘うの得意じゃなかったんだが、もっと誘えるようになりたい。

そういうつながりを糧に今日を頑張るしかないね

そういえばこの記事を見てカメラを買った。まだ開封してない。

https://levtech.jp/media/detail_863/

楽器も弾きたいと思いつつ、ね。楽器だけ弾く日を作りたいよ

ではまた。バイバイ👋

近況 2026/04

本業

https://blog.chaspy.me/entry/2026/03/09/140000 で書いた通り、VP に役割を変えて1か月経った。毎年のことだが目まぐるしい。3月から今日にいたるまであんまり覚えてない。

明確にやってることがスイッチされたかでいうと、なんとも手応えがあるかは分からんなという感じ。というのも、今の管掌範囲のうち、3つの部があり、そのうち2つをもともと部長をしていたので、単純に見るとそれがもう1つ増えただけとも言えるし、それぞれに担当部長さんがありがたいことにいるので、ステップとしては滑らかな方なんだとは思う。

ただ、新しく増えるほうはシステムも開発スタイルも、ビジネスもいろいろとこれまでとは違うところ。そこのキャッチアップは概ね終わり、実現に向かうという感じ。部長さんGMさんと連携してやっていく。

それをやりつつ、注力テーマである顧客接点を含めたデータ基盤の整備のプロジェクトを全体と開発内部のほうで動きつつ、同じく注力テーマの上流工程の高速化に向けて組織的にも、技術/Platform的にも手を打って、自分が手を動かすところ、委譲するところを走りながら(時々迷いながら)(時々AIに叱られながら)見極めている。

かかげた注力テーマはどれも進んでいる。

期末期初の考課/グレード設定会議は過去最大の時間/人数になった。期末評価、みんなの偉業が聞けるという役得な面もある、と思った。

もう1つの注力テーマにも関連するし、VP の仕事の本丸だろうと思うが、事業企画/戦略の担当マネージャー、VPと密に連携して、事業数値の中身を全部開いて介入可能なところはないか、をショット/仕組みの両面で手を入れようとしている。複数事業を抱えた大きな事業会社なので厳密には違うものの、自分はこの事業のCTOで経営メンバーのつもりでいる。これをやらないならいる意味がない。

あとは毎回恒例キックオフイベント。これまでも壇上に立つことはあった。今回はプロダクト組織だけでなく、営業組織のキックオフ(人数の都合でわけて開催している)でも話させてくれと言って5分だけ話、まさにライトニングトークであるが、微ウケしたし存在はアピールはできたと思う。

余談ながら営業の方のどなたかがchaspyは前職で営業してたんですか?と言ってたようで、いやいや電話すらかけられんわと思いつつ、まぁでもやってることは社内営業ではあるよな、と思う。SREのときはそれぞれの開発チームに。開発マネージャーになったらプロダクトマネージャに。部長やVPになったら他部門の責任者に対して、技術が、開発組織がどう貢献できるかを話して、価値を売り込む(?)という意味ではそうと言えなくもないか…?いやよくわからんな。

キックオフが終わったと思えばその後海外出張もあり、ようやく待ちに待った GW という感じ。とはいえ 5/7,8は出るが。

この一か月はパーソナルAI秘書が仕上がり、かなり生産性は上がったのと、振り返り/メンタリング/コーチングもしてくれて助かっている。反省すべき点はたくさんあった。

「手を動かすときは、現場を前に進めるときではない。構造を作るための不確実性削減のために動かす」を肝に銘じた。構造を作る。

立場上ついつい便利だから呼ばれて、まぁええかとその場にいると自分が思う以上に影響力があったり、副作用があるのを実感した。

新しい上長ともうまくやれていると感じる。とてもありがたい。また、隣の事業のVPとも挨拶させていただき、定期でマンスリーで壁打ちに付き合ってくださる方もいて本当に助かっている。

一か月で成果が出るようなもんでもないが、高速にキャッチアップをし、大きな流れは作れているとは思う。各組織ともいろいろバタバタだった4月があり、GW明けから一気に成果にフォーカスできると良いな。

良かったのが「カルチャーの言語化」について。唐澤さんのカルチャーモデルを全部読んで、もともとエンジニア組織の採用とかエンゲージメントとかキャリア支援をやってる内部組織があったんだけど、そのメンバーで自分が大事にしたい価値観とか、それを共有してカルチャーを作っていくみたいなことをしたいという話ができたのも良かった。ありがたい。

そんな感じ。GW は地元でゆっくりしつつ、明けはまたしゃかりき働き、6月7月とかでちょっと1週間休んだりとできれば、と思う。

プライベート

GW 最後にキャンプに誘ってもらったので楽しみ。コテージキャンプは妻とも行って、火おこししたりした。車があると良いですね…火を見ながら何もしないで時間を作りたい。

おしまい

Block の "From Hierarchy to Intelligence" 読んだ

Block の "From Hierarchy to Intelligence" がおもしろかった

deeeet さんが紹介してくれたやつ

From Hierarchy to Intelligence - Block

Block(Square / Cash App の親会社)と Sequoia Capital の共同論文で、AI 時代に組織構造そのものを再設計するという話。

ざっくり内容

2000年間、組織が階層型だったのは「それがベストだから」ではなく、人間の情報処理能力に限界があったから。1人の指揮官が管理できるのは3〜8人。この制約がローマ軍から現代企業までずっと生きている。

AI でその制約がなくなるなら、組織構造も変わるよね、という話。

Block は4層構造を提案している。

役割
Primitive Layer 決済・融資・カード発行など金融の原子的要素
World Model 社内情報+顧客データから構築される因果・予測モデル
Intelligence Layer 顧客の状況を認識し、複数機能を組み合わせてソリューション生成
Interface Layer Cash App / Square 等の配信面

ポイントは、中間管理職が担っていた情報流通・調整の役割を World Model と Intelligence Layer が代替するということ。マネージャーの仕事を分解すると、大半は情報の中継と調整であり、それは AI でできる。人間に残るのは育成・実装・課題推進。

その結果、人の役割は3つに再編される。

人の役割は3つに再編される。

  • IC: 手を動かす人。World Model から直接コンテキストを取れるので上司の指示待ち不要
  • DRI (Direct Responsible Individual): 特定課題の責任者。チーム固定ではなく課題固定。横断的にリソースを引く
  • Player-Coach: 手も動かすし人も育てる。調整は AI に任せて職人技と育成に集中

before / after をまとめるとこんな感じ

従来の機能 before after 区分
全社の状況を把握・統合 VP / 部長 World Model 🤖
経営方針を現場に伝える マネージャー World Model 🤖
現場の状況を経営に上げる マネージャー World Model 🤖
IC に判断の文脈を与える マネージャー World Model 🤖
ステータス会議・進捗管理 マネージャー World Model 🤖
顧客状況に応じた提案設計 PM + 営業 Intelligence Layer 🤖
基盤サービスの運用 インフラチーム Primitive Layer 🤖
チーム間の優先順位調整 マネージャー同士 Intelligence Layer + DRI 🤖+👤
ユーザーへの価値配信 プロダクトチーム Interface Layer 🤖+👤
リソース配分・アサイン マネージャー DRI 👤
特定課題の推進・完遂 PjM DRI 👤
技術指導・人材育成 マネージャー / TL Player-Coach 👤
専門領域の実装・構築 IC IC 👤

思ったこと

自分はこれまで IC → GM → 部長 → VP とやってきた。「情報流通と調整」の比重はGM より部長のほうが増える。VP だと重要な意思決定とか大方針の割合が増えるが、それも自ら World model を構築して実現している感覚はある。色んな人と会話したりレポーティングを受けて、World Model を構築し、Inteligence Layer である打ち手案を検討したり試したり振り返ったりしている、と言える。

今は VP で「意思決定に集中する」ことをやろうとしているが、実際は意思決定に必要な情報を集めるコストがかなり大きい。World Model がそれを代替するなら、意思決定の純度が上がる。そして、その状態を VP だけの特権にせず現場の DRI や IC まで広げるという話だと思う。

この言語化はありがたい。あと、そこまで外れていないだろうなという感覚もある。自分は実際に個人開発では Claude Code で Director/Worker 構成を組んでいて、AI Agent が全セッションの状況を統合して報告してくれるので、自分は判断だけすればいい状態に近づいている。小さいスケールだが、World Model 的な体験をしている実感がある。

情報が階層を経由しないと届かない時代は、意思決定できるのは上位層だけだった。AI が情報をフラットにするなら、委譲のコストが劇的に下がる。マネジメントをやってきて、AI も触ってきたからこそ、この記事の言っていることが肌感覚でわかるので面白かったし、今後の時代がどうなるかも読んでいく必要があるなーと感じた。

AI Agent Manager と仕事をする

AI Agent Manager と仕事をする

昔いろいろおもしろ動画でみた気がするが、Coding Agent 同士を通信させるとか、AI Agent を束ねる AI Manager がいて数十人の部下を動かしているとかとか。。。そういうのはやったよね。今それをやっている。

多分技術的には当時と同じだと思う。あんまり新しいことはない。ただ、Claude Code の remote-control と、SKILL、そして Agent そのものの賢さがあがったこともあり格段にやりやすくなったので今やってみたらそこそこワークしている。

環境

自宅の Mac Studio 上ですべてが動いている。

Mac Studio 上で Zellij のセッションが複数立ち上がっていて、それぞれに Claude Code が動いている。AI Manager もその中の 1 セッションで、他のセッションに指示を出す。外出先からはスマホアプリ(remote control)から AI Manager に話しかけるだけでいい。「状況どう?」って聞くと全セッションの進捗をまとめて報告してくれる。便利。

技術的にやっていること

正直、技術的にはそんなに大したことはやっていない。

  • Zellij: ターミナルマルチプレクサ。tmux でもいいけど Zellij を使っている。各セッションが独立したターミナルで、それぞれ Claude Code が動いている。Zellij のほうがやりたいことがすぐやれるので普通に使う場合も馴染みやすかった。
  • agents-manager: Go で書いた薄いラッパー CLI。Zellij のセッションに対してキーストロークを送ったり、Claude Code のセッションログ(JSONL)を読んで最新の応答を取得したりする
  • Claude Code の SKILL: AI Manager の振る舞いを定義するプロンプト群。「定期的にセッション一覧を確認して報告しろ」「タスクが完了したセッションには次の仕事を提案しろ」みたいなルールを書いている
  • git worktree: 同じリポジトリで複数ブランチの作業を並列に走らせるために使っている

つまり構成要素は全部既存のもので、新しいものは何もない。Claude Code の write-chars アクション(Zellij にキーストロークを送る)でセッション間通信をしているだけ。

agents-manager(Go CLI)

agents-manager はセッション管理の道具箱みたいなもので、以下のコマンドがある。

やることはシンプルで、

  • list で「今どのセッションが生きてるか」を見る
  • read で「あのセッション何してる?」を確認する
  • send で「これやっといて」と指示を送る
  • spawn で新しいセッションを立ち上げる
  • kill で終わったセッションを片付ける

これだけ。CLI は意図的に薄く・単純にしている。

仕組み

send の仕組みを例にすると、やっていることは本当にシンプルで:

  1. Zellij の write-chars アクションでテキストを打ち込む(人間がキーボードで打つのと同じ)
  2. Claude Code のセッションログ(~/.claude/projects/ 以下の JSONL ファイル)を poll する
  3. ファイルサイズが増えて、最終ロールが assistant になったら「返事が来た」と判断
  4. 応答を出力して終了

書いてみても特に普通の話である。

SKILL との棲み分け

最初悩みながら走り出したのが、CLI と SKILL の役割分担。今の AI は十分に賢いので、ツール(スクリプト。決定的な操作)と指示に分ける感じ。

CLI(agents-manager)がやること: - セッションの一覧取得 - セッションへのキーストローク送信 - セッションログの読み取り - セッションの起動・終了 - Rate limit の確認

SKILL がやること: - 「15分おきに全セッションの状態を確認して報告しろ」 - 「作業が完了したセッションには次のタスクを提案しろ」 - 「破壊的な操作は必ず承認を取れ」 - 「放置されているセッションがあったら原因を聞き出せ」

SKILL というかたまりで AI への指示を再現性高くできるようになって便利になった。

SKILL の例:status

こっちからつっつかなくても勝手に動いてほしい。AI Manager の session 自体にも外部から指示を送ることで、15分ごとにポーリングさせることができる。

新規のタスクを指示するか、状況をみて承認するか、追加の指示をするかって感じ。「承認します。」って言ってる。これが Senior Approve Engineer である(社内で流行った)

おしまい

便利

Vice President (of Engineering) をやる

今日人事で公開された。

所属組織の組織階層は GM (Group Manager), 部長, VP, 統括VP, 役員となっていて、これまでは部長をやっていた。Manager of Manager であり、規模的には1つの領域の VPoE とも言えるだろう。そういうつもりでやっていた。

教育領域の開発統括責任者であり、開発領域はもちろん、事業/組織/プロダクト、主語を大きくして全てをなんとかしていきます。

というわけで元気です。飲みに行きましょう!