こんにちは、エンジニアリングマネージャーの id:onkです。
Hatena Developer Blogの連載企画「卒業生訪問インタビュー」では、創業からはてなの開発に関わってきた取締役の id:onishi、CTOの id:motemen、エンジニアリングマネージャーの id:onkが、いま会いたい元はてなスタッフを訪問してお話を伺っていきます。
id:onkが担当する第6回のゲストは、ビジネスチャット「Chatwork」などを提供するChatwork株式会社でエンジニアリングマネージャーとして活躍されている id:daiksyさんこと、粕谷大輔さんです。
SIer、フリュー株式会社を経て、2014年はてな入社。2021年の卒業までサーバー監視サービス「Mackerel」の開発チームで、エンジニア、サブディレクター、最後はディレクターを務めるとともに、はてなにおけるスクラム開発の浸透に大きく貢献していただきました。
23年8月には初の単著となる「スクラムの拡張による組織づくり」が刊行されたばかりのid:daiksyさんに、Chatworkさんでのスクラムコーチングやエンジニアリングマネージャーとしての仕事などについてお話を伺いました。
粕谷大輔さん(id:daiksy)
Chatwork株式会社 エンジニアリングマネージャー
2014年-2021年 はてな在籍
- X: @daiksy
- ブログ:だいくしー(@daiksy)のはてなブログ
エンジニアとして入社し、ディレクターへ
id:onk(以下「」) 今日はよろしくおねがいします。
id:daiksy(以下「」) よろしくおねがいします!楽しみにしていました。
単著もおめでとうございます。8月に出たばかりですので、その裏話も伺いたいなと思っています。
daiksyさんがMackerelチームで実践していたスクラムや、組織横断的に活動した開発プロセス改善やふりかえりの支援の取り組みは、はてなの開発文化に強く影響を与えています。今日は、そんなはてな時代の話から振り返るとともに、エンジニアリングマネージャーとしての転職や、いまのChatworkさんでの取り組みについてお聞きしたいと思っています。
daiksyさんは、はてな入社時はスクラムマスターやマネージャーではなく、エンジニアとしての転職だったんですよね?
そうです。たまたまコミュニティで繋がりがあったid:chris4403さん(はてな代表取締役社長 栗栖義臣) とお酒を飲む機会があったのですが、そのときにサーバー監視サービスの「Mackerel」をScalaで書いているという話を聞いて興味を持って。ちょうど転職を考えていた時期だったのと、はてなはもともと憧れの会社だったので、Scalaをきっかけに選考にチャレンジして、採用していただきました。
はてなではずっとMackerelチームに所属していましたが、最初の3年間はアプリケーションエンジニアとして、Scalaを中心にコードを書いていました。Mackerelの「Chatwork連携」の機能を作ったのはぼくです(笑)
まさか転職先になるとは(笑)
エンジニアとしての3年の後、サブディレクターを経てディレクターですよね。
はい。当時、ピープルマネジメントの要素もディレクターの役目にあったので、メンバーの評価を初めて経験することになりました。Chatworkではピープルマネジメントを主にやっていますが、その入口はMackerelのディレクター時代だったと思います。
はてなで立ち上げた「すくすく開発会」
はてな時代のスクラムとの関わりについて振り返っていきたいんですが、はてなに入社したときには既にスクラムの実践経験があったんですか?
はい。はてなの前のフリューという会社で実践を経験しました。もともとフリューに入ったのは、当時勤めていたSIerがウォーターフォール開発でカチッとした世界だったので、Web系でアジャイルな開発をしたいという理由からでした。SIerにいた頃からアジャイルに憧れがあって勉強をしていたので、アジャイル開発の現場に入りたいと思って転職したんです。
フリューではスクラムではなくXP(Extreme Programming)を採用していたのですが、そのチームで2年間開発者として仕事をしました。。当時身の回りでスクラムを採用しているチームは多くなかったですが、、今はたくさんの事例を見かけるようになりましたね。
では京アジャ(京都アジャイル勉強会)というコミュニティとの関わりは、フリューの頃からですか。
フリューの頃からですが、はてなに入ってからの方が関わりが強くなりました。はてなはイベントの会場提供をすることができたので、それをきっかけに繋がりが強まりましたね。はてなに入社する前までは単に一参加者として参加する感じでしたけど、会場を提供するようになってからはスタッフとして一緒にお手伝いするようになりました。
そして、はてな Slack の #scrum チャンネルのリブートが2017年でしたね。その頃は「スクラムで開発しています」と明言していたチームは社内でもMackerelだけだったんでしょうか。
そうだったと思います。はてなブログの開発チームもプロセスはしっかりしていた印象でしたが「スクラムでやってます!」ということではなかったはず。
2013年のYAPC ASIA TOYOで id:onishi がご紹介した「はてなブログ」の開発フロー
Hatena blogdevelopmentflow | PPT
2017年当時、僕はMackerelのディレクターをしつつスクラムマスター的な動きをやっていたので、認定スクラムマスター研修の資格を取りたかったんです。ただ、そのころのはてなにはまだ資格取得制度がなかったので、自腹で取ったんですけど、今後スクラムをやっていくのであれば、会社の支援を受けつつ取り組めるように、研修費用が出るようになってほしいなと思っていました。
それがきっかけで、スクラムの価値を社内にもっと発信するようになりました。スクラムマスターが複数いて、彼らが仕事をすることによって、会社がもっと良くなるということを伝えていく活動ですね。
そのために、ギルドのようなものをつくって、そこにスクラムマスターが集まって活動をするといったことに切磋琢磨していました。会社も理解してくれて、その後、資格取得制度が整って、会社に費用負担をしてもらい、認定スクラムマスター研修を受けられるようになりました。
開発プロセスに関するサブ会である「すくすく開発会」を立ち上げながら会社を変えていった流れは、id:shimobayashiさんの発表が良かったですね。
今では半期ごとに2~3人くらい認定スクラムマスター研修や認定スクラムプロダクトオーナー研修を受けるようになっています。daiksyさんがはてなに居た時代から撒き続けてきた種がやっと芽吹いたかな。今、デフォルトの選択肢がスクラムになっているのは、デフォルトがカウボーイだった時から考えると、本当にすごい変化だと思っています。
マネージャーとしての成長と挑戦を求めた転職
そんなはてな時代を経てからのChatworkさんでのお話を聞かせてください。Chatworkに入るにあたっては、初めてマネージャーという肩書きで入ったそうですね。エンジニアリングマネージャーとしての転職の記事、拝見しました。
ありがとうございます。ここでも話している通り、Mackerelチームでずっとマネージャーをやっていましたが、この能力に本当に再現性があるんだろうか、ずっと悩んでいたんです。
たまたまMackerelチームの人たちがみんな優秀で、はてなという会社の制度や構造が、自分にたまたまマッチしていただけじゃないかと。自分の能力というよりは、たまたまいいチームに自分がいるだけじゃないのかな、そういうことを思い始めたんですね。
もっと自分の腕試しをしたい、マネージャーとして再現する能力を持っているのであれば試したい、もう少し幅広く複数のチームをまたがるように仕事の影響範囲を広げていきたいという思いもあり、Chatworkに転職しました。ありがたいことに、はてなからははてな内でできる別のチャレンジの提案をもらったりもしたのですが…
Chatworkは当時エンジニアリングマネージャーを求めていて、全社横断的に組織を整える役割であったり、一部のチームでScrum@Scaleを導入しようとしているという、僕にとって面白そうなキーワードもあったので、ここは腕試しとしてチャレンジしてみようかと。
入社から2年たちますが、今のところ評価していただいてるようなので、どうやら自分のマネジメント能力には再現性があったようだ、と感じられるようになってきました(笑)
Mackerel のディレクターの頃からマネージャーとして最高の行動を取っていましたよ。僕がよく覚えているのは、daiksyさんがメンバーに対しての期待を毎期初に社内のグループウェアに書いていたことです。期待マネジメントや動機付けをしっかりやっていた。「観察と干渉のバランス」もそうですよね。この記事も大好きです。
Chatworkで全社アジャイル推進を担当
はてなに続き、Chatworkさんでもスクラムマスターギルドや社内コーチズクリニックといった支援制度を立ち上げたとか。
僕が配属された部署では、「Chatwork」のアーキテクチャを新しくしていくプロジェクトを担っています。Chatworkの負荷の高い部分を独立したコンポーネントとして切り出し、それを運用するチームを複数連携するという作り方をして、Scrum@Scaleで運用する体制を整えようと考えています。
僕が入社したときは、Scrum@Scaleを導入するということは決まっていたものの、まだやり始めの時期だったので、そこを支援してほしいといわれていました。スクラムマスターもそんなに多くなかったし、社員ではまだいなかったのかな。業務委託の方にスクラムマスターをやっていただいていたような時期でした。
僕らの活動を見て、他のチームでも興味を持つ人が出てきたので、社内のスクラムマスターを育てる意味でもスクラムマスターギルドという集まりを作りました。これは今でも続いていて、先日も2日間かけてアジャイルを勉強する「Agile Tea Party」という全社的なアジャイルのイベントを開催しています。
開発の人たちだけじゃなくて、社内からセールスやマーケティングなど、いろいろな職種の人たちからプロポーザルを集めて、セッションのタイムテーブルを作りました。全社的なイベントになってワイワイできて面白かったですね。
【イベントレポート】全社でアジャイル!?!? Agile Tea Party 2023 - Day1 -|Chatwork株式会社
エンジニアリングマネージャーの仕事とマネージャー足りない問題
daiksyさんの部署では、「Chatwork」のアーキテクチャを新しくしていくプロジェクトを担っているというお話がありました。所属されているチームでのミッションなどについてお伺いしたいです。
プロダクト開発を担当するプロダクト開発ユニットという枠組みが組織上にあるのですが、その中で一部の領域を担当するマネージャーをしています。
ここではピープルマネジメント体制を設けていて、あるマネージャーが特定の領域を専任で持つのではなく、そのプロダクト開発ユニット全体を4人のピープルマネージャーで持ち合うということをやっています。
例えば自分が体調を崩して休んでも、別のマネージャーがフォローできる。マネージャー全員が部署全体を把握している体制を作ろうとしてるんですよね。逆に何が起きるかというと、その組織全体のあらゆる問題が自分の耳にも入ってくるといったことも…(笑)
ピープルマネジメントも直接の担当領域は4人で分割してマネジメントしています。とはいえ、他の人の担当者の分もふんわりと把握しているので、何かのときはフォローができるという、そういう体制ですね。
なるほど。はてなの技術グループのチーフエンジニアがそんな感じですね。あらゆる問題がやってくるというのもわかります(笑)
そうそう、たしかにそうでしたね。毎日結構大変なんですけど、すごい経験値を積むチャンスなので、面白いなと思ってやっています。
大変で面白い仕事なんですが、チーフエンジニアにだけあらゆる問題に対応する経験値が溜まっているのはもったいないので、どんどん委譲したいなと考えています。
ちょうどdaiksyさんが転職された頃に77人だったはてなのエンジニアは、今はほぼ100人になりました。この過程でエンジニアリングマネージャーの職種が増え、5人誕生したのも大きな変化です
チーフエンジニアとエンジニアリングマネージャーの役割ってどう切り分けてるんですか?
チーフエンジニアは職能組織である技術グループのマネージャーなんですよね。エンジニアリングマネージャーはプロダクト開発側でプロデューサーの横にいる体制です。職能横断的な開発チームをエンジニアリングで育てていくのがエンジニアリングマネージャーの役目ですね。エンジニア職種のピープルマネジメントも役割の一部としていて、プロダクト開発チーム内のシニアエンジニアと協力してピープルマネジメントを実施しています。
コロナ禍の影響もあり、サイロ化は不可避なので、自チーム内で完結するように変更しました。隣チームのメンバー育成を考えるメンターの役割を全うするのが難しい状況だったことが大きいですね。仕事のアサインに関わる方が業務を通じて育成しやすいですし。
実は僕、今週から新卒入社者のエンジニアリングマネージャーも担当することになったんです。僕がすごく頭を悩ませているのは、チーム内での徒弟制度をどのようにして作っていくか。やはり軸となるようなリードエンジニアの人たちがいて、そこに弟子入りできるような制度や徒弟制度を組まないと、エンジニアが成長しないと思っているんです。
会社のテックリードのような立場の人が、チームを横断して見るのは絶対無理なので、チームの中でどうやって徒弟制度をつくるかについては、今まさに悩んでいたところでした。
各チームにエンジニアリングマネージャーを置きたいけど、マネージャーが足りないですよね。
はてなの場合はエンジニアのほとんどがS(スペシャリスト)コースに進みます。M(マネージメント)コースは7名しかいない状態です。エンジニアが約100人なので、せめてあと3人。9対1にできないかと考えています。
僕らはエキスパートコース、マネージメントコースという呼び方をしているのですが、大体皆さんエキスパートコースにいきます。もうちょっとマネージャーに興味ある人が増えてほしいなと思いますね。
こういうときにエンジニアとマネージャーの振り子の話を思い出します。
ちょうどid:Songmuさんがこの前、Findyさんのメディアで記事を書かれてましたよね。まさに行ったり来たりしてもいいと思います。
OSSなどから学んだヒューマンスキルと経験を武器に。人生最大の挫折を越えてなおも歩む螺旋のキャリア - Findy Engineer Lab - ファインディエンジニアラボ
Chatworkでもマネージャーからエンジニアに戻った例はあるので、これからも増えていけばいいのかなと。
僕自身はマネージャー歴が長くなってきたのでエンジニアに戻れるという不帰投点は超えてしまった気がしていて、、そうならないようにもっと短いスパンでやれると面白いかもしれないですね。そうするとマネージャーの気持ちがわかる現場のエンジニアが誕生するので、もうちょっと動きやすくなると思うんです。
はてなとChatworkの違い
daiksyさんが感じるはてなとChatworkの違いについても聞いてみたいです。
個人的には、はてなはボトムアップがすごく強い会社で、Chatworkはボトムアップも上手なんですけども、トップダウンがしっかりしていると感じます。僕はトップダウン型の企業を体験してみたくて、Chatworkにそれを感じて面白そうだなと思っていました。これも転職した理由の一つです。
経営層からのメッセージが明確です。目標設定をするにあたっても、会社全体の戦略が最初に決められて、それをブレークダウンした各部署の戦略をマネージャーが策定し、そこからさらに個人目標という言葉に落ちてくる。大変でもあるのですが、マネージャーとして面白がってやっています。
はてなも会社の3カ年計画があって、チームの目標は降りてはいるけど、伝え方による印象の違いですかね。
単に、僕がはてなのマネージャー時代に比べて解像度が高くなっただけという話かもしれません。
あとは、そもそも規模が違うので当然という気もするんですが、はてなよりはガバナンスが強めかなというところも感じます。これも個人的には別に全然ネガティブに思っていないんですけど。
あと、Chatworkでは外部の力を入れることに抵抗がないというか、自分たちがわからないことは外の専門家に聞こうという考え方をしています。
先日は和田卓人さんに来てもらって、開発生産性の話をしてもらいましたし、外部の講師を呼んで話してもらうことは多いですね。僕の入社前ですが、Scrum Inc. Japan社の方に来てもらって、Chatwork向けにScrum@Scaleの説明をしてもらって、それで採用するかどうかを決めたみたいです。
はてなは自分たちで何とかやっちゃいますよね。
やりたがる人が多いですね。ただはてなも、もう少し外の力に頼ってもいいんじゃないかとも思っています。オンプレからクラウドに移って、責任領域を任せるスタイルに変わっていっている面もありますね。
例えば、MySQLのチューニングなどを自分たちで頑張るようになるよりもSaaSに任せていった方が、より本質的なところに力を割けるようになるんじゃないかという期待があるんですよ。
うちもそういう意味ではSaaS利用も進みつつあって、たとえば認証基盤はAuth0に置き換えてますね。どんどん本質じゃないところは外に出そうぜみたいな感じですね。
ただ、それに伴って組織から何から激変してる時期でもあるので、マネージメントとしてはすごく大変です。やりがいもあるんですけど、ありとあらゆるマネジメントの課題が日々押し寄せてきます。
5年後10年後、もしかしたらChatworkで仕事をしていないかもしれません。けれど、別の現場でマネジメントの仕事をしたとしてもさまざまな課題に直面するでしょう。そのときに、これはChatworkで経験したことがあると言えるような経験を今はしていると思っているんです。今はマネージメント経験のボーナスステージにいることが、めちゃくちゃ面白いですね。すごく恵まれたタイミングで仕事していると思っています。
はてなを外から見ていいこと・悪いことは?
最後に、定番の質問を。今のはてなを見て何かいいこと・悪いことがあれば、ぜひ聞かせてください。
Mackerelチームの人が、仮説検証型アジャイルでやってますみたいなブログエントリーを書いていて。すごくいい取り組みをされてるのに、アジャイルコミュニティで全然見ないなと思っています。僕が退職してからはスクラムフェスなどのイベントスポンサーを出してないしみたいですし、もっとコミュニティで一緒にやりたいです。
仮説検証型アジャイル開発に携わり始めたエンジニアの思考(と Mackerel Drink Up の宣伝) - Diary of a Perpetual Student
たしかにアジャイルコミュニティのイベントに関してはスポンサーは出していない。聴講する人は 送り込んでいるんですけど、話す側にはなってないですね。
はてなでは他に積極的に出られているイベントもあるので、アジャイルコミュニティでも出会いたいなと思っています。僕がはてなに持っている唯一の不満はそれです。
ある調査データを見たんですが、はてなは技術力と比べて、チーム開発に対するイメージが全然ないみたいなんで、アピールはしていかないといけない(笑)
全然チーム開発が上手じゃないなんてことはないですからね。ぜひアピールしてください!
Mackerelチームはすごく良くなったと思っています。最近のリリースノートを見てもいい機能はたくさん出ているし、OpenTelemetry 対応など、モダンな世界に向かうこともできてるし、すごいなと思っていました。
しばらく技術的負債の返済に力を注いでいたんですが、その結果として機能開発の貯金が無くなったので、ここで大型の開発を進めるぞと判断できました。負債を返し切らないと次に行けないではなくて、返しながら進もうと今は考えていますが、プロダクトオーナーとしての優先順位付けは本当に難しいですね。
でも今は、その辺の優先順位付けるのが上手にできてるんだろうなという見方をしていました。
まだまだですが、頑張ります。
そして、本当に最後ですが 、単著の話も聞かないと!
ありがとうございます。『スクラムの拡張による組織づくり──複数のスクラムチームをScrum@Scaleで運用する』という書籍を書きました。Chatworkで今まさにやってるScrum@Scale実践の紹介をしています。
Scrum@Scaleの公式ガイドは日本語化されているんですけど、日本語の解説書が存在しなくてですね。第1号を書くぞという意気込みで書いたので、今のところ日本に存在する日本語の唯一のScrum@Scaleの解説書になっております。2年ぐらいかかって頑張って書いたので、ぜひ!
2年掛けて書いていく上でのプロジェクト管理の話がめちゃめちゃ面白かったです。
僕はアジャイラーなので、編集者さんと進捗を共有するために、バーンアップチャートを作って毎週進捗を見える化していました。ただバッファを用意したら、人間ってバッファを全部食いつぶすんだなと。結局バッファはすべて食いつぶしましたが、スケジュールをちゃんと守ろうというのは、かなり意識してやってました。
はてなでもみんなで拝読します。本日はありがとうございました!
id:daiksyさんこと粕谷さん、ご協力ありがとうございました。次回の「はてな卒業生訪問企画」は2023年12月更新予定、担当はid:onishiです。
id:onk
2018年4月 中途入社(3社目)。アプリケーションエンジニアとしてマンガビューワ「GigaViewer」や、Web小説サイト「カクヨム」「魔法のiらんど」の開発を担当。2019年4月よりチーフエンジニアとして技術組織全体のマネジメントにも携わる。
Twitter: @onk
GitHub: onk
blog: id:onk のはてなブログ