技術とより向き合うために、マネジメントの役割を分けてみて。 ー テックリード インタビュー前編
ココネエンジニアの組織改革として昨夏より始まった、エンジニアリングマネージャー(EM)/テックリード(TL)体制。
グローバル展開の発展と強化を見据えたこの体制によって、エンジニア組織がさらに成長していることを社内でも実感しています。
前回はその主役の一端を担う3人のEMから、新体制の手ごたえとともにEMの重要性や葛藤などについて語ってもらいました。
そして今回は、もう片方の主役となるTLの3人にインタビューを実施。
EMとマネジメント業務を分担したことで得た日々の変化、そこから目指すこと、そしてTLが新たに取り組むエンタメ企業としてのSREについて、前編後編に分けてご紹介します。
<TLメンバープロフィール>
わかめ
2020年入社以来、既存サービスの開発に携わり、2023年7月よりテックリードに就任。システムの歴史に潜む課題に日々挑戦しながら、チームと協力して品質維持と改善に努めている。
maruc
2022年1月入社。主に新規サービスの立ち上げ開発に携わる。2023年7月よりテックリードに就任し、サーバーTL組織の方向性の策定や汎用モジュール開発にも力を入れている。
とんさん
2023年2月入社。2023年7月より既存サービスのテックリードに就任。以後、安定した運用のためにCI/CDの整備や負荷分散に力を入れる。2024年よりSRE導入のための試行錯誤中。
マネジメントやリーダーを担う人でも
開発をバリバリやることが当たり前だった文化
ー EM/TL体制前の課題について
とんさん
ココネに入社したのは昨年2月ですが、当時思ったのは、開発リーダーにすべてのタスクが集約されているなと。
ちなみにこれまでの職場でもやはりリーダーがすべてを担っていることが多く、開発クオリティのコントロールはもちろんのこと、評価や採用なども任されてしまって、コードを書く時間は力技で捻出するしかないようなことを多々見かけてきました。
わかめ
EM/TL体制前のココネのエンジニア文化が、「マネジメントやリーダーを担う人でも開発をバリバリやることが当たり前」という感じでした。それによって確実にスキルアップにつながることもありましたし、会社からのサポートもあったので悪いことばかりではありませんでしたが、とんさんが話しているとおり、とにかく時間がなかったですね。夕方になってからやっと自分の開発に取り掛かれるような日もあったので、組織課題のひとつだと思っていました。
maruc
フェーズの話だと思っていて、ココネの組織が大きくなったことや、より技術的なチャレンジや成長が必要になり、すべてやれて当たり前、が厳しくなりつつあったのかなと。
もうひとつの課題としては、開発リーダーによる会議の場で「技術」と「人」の話が両方とも出てしまい、どうしても「(人事やマネジメント的な)人の話」が中心となってしまっていたことです。
これ自体は重要なことですし、悪いことではないのですが、技術について議論する余裕が少なく、どうしても緊急度の高い「人」の話がメインになってしまう。毎月行っているサーバー全体の定例会議では、各サービスの施策情報を「共有」するだけで終わってしまうこともありました。掘り下げや議論まで発展させられないことは非常に勿体ないですし、体制前の大きな課題のひとつとして捉えていました。
ー そうした課題がEM/TL体制によって解決方向に進んだということですが、体制後のTLについて改めてその役割について教えてください
maruc
TLの主な役割は、サービスの品質向上や、施策を含む新しいチャレンジをする際に、高い技術力を持ってそれらを実現・サポートしていくこと。そしてそれらを行い易い状況を、技術をベースとして生み出していくことです。そのためにもTL個人の技術力を高めつつ、チームメンバーがより開発を好きになって成長してもらえるような雰囲気や環境を作ることが大事だと思っています。
それを踏まえてEM/TL体制後の新しいTLでは、「お客様に良いサービスを届けることに集中できる環境を作りましょう」を最初のテーマとしました。
まずは足元の課題を「全体の課題」として認識するため、各サービスでメンバーと話し合いながら、「今どのような技術的課題があるのか」をリストアップし、課題として議論の場にあげ、TL定例の中で話し合うようにしました。実際これですぐに解決しました!と言う訳ではなく、実施自体に多くのコストはかかってしまいますが、少なくとも現状を把握し、認識することで初めて改善に向かっていけると思うので、今後も定期的に実施したいと考えています。
一方で「育成」についても並行して動いてきました。勉強会のようなことも考えましたが、まずは業務に直接関わることで何かできないかなと。その中のひとつとして、コードレビューで見るべき観点をTL内で議論し、共通のガイドラインとして展開しました。また主観的に判断できる部分はセルフレビューを導入することで、チェック時のコスト削減や、自分のコードを確認する際の目安として、また何に気をつけるべきなのか気が付きやすい状況になるように進めてきました。
ー EMとTLの役割分担
わかめ
まず採用やメンバーの1on1といったマネジメントは、EMが担うことになりました。ほかにも、事業部や開発チーム内の共有会が月に数回ありますが、そこでの発表や資料作りもEMが担当しています。その分TLは開発に集中する、という分担です。
※EMの役割についてはコチラの記事をご覧ください
先週の会議は3〜4個だけで、
それ以外の時間はすべて開発に専念
ー 体制後に変化したことは?
とんさん
自分の作業カレンダーをみてみると、先週は会議が3〜4個だけでそれ以外の時間はすべて空いている、つまり開発作業に没頭する時間を多く取れるようになりました。毎週ここまでのことができる訳ではありませんが、TLという役職でありながらほぼ会議がない日を設けられるのは、けっこうすごいことだと思います。
シンプルに集中できる環境と時間があるというのは、ありがたいですね。実際、自分のパフォーマンスがあがった感覚もあります。
ココネに入社する前の経験を含めて、これまでは何かあったらとりあえず呼ばれることも多く、会議に参加して話の内容を整理するだけでも相当のパワーを使っちゃってましたから。
maruc
これは本当にすごいことなんですよ(笑)。あるあるだと思うんですけど、マネジメントも担う開発リーダーって朝から夕方までずっと何らかの会議がある。実はその中の会議のいくつかは、5分くらいしか自分の役割がなかったりする。そうしたことがEMと分担したことで一気に解消された感があります。
会議が減り、エンジニアとしての本分を発揮しやすくなったことも嬉しいのですが、自分の役割に応じた会議に集中できるようになってきているのがとても良いなと。
ーTL同士の横断的な共有会も行われるようになったとのことですが、どのようなことが話し合われていますか?
maruc
各自が担当するプロジェクトで採用した技術や、発生した課題・その解決手段など、技術に特化した情報を主に共有しています。それらの共有内容に対してTLの立場から質問しあったり、より良い解決策の提案を行うなど、ただ共有されて聞いて終わるのではなく、掘り下げるようなことを行っています。
中には答えが出ないような議題もありますが、議論の中で出た情報には有用なものも多く、とても有意義な時間になっていると感じています。
ー開発に専念することによって、TLとしてさらに生産性や結果などを求められるようになったと思います。その点で工夫されている・心がけている点はありますか?
とんさん
すでに見えている問題は当たり前に対処しなければいけませんが、先々に発生しそうな問題も予め見つけて対処できるように心がけていますね。
これもそうですが、役割が分担されたことによって先を考える余裕ができたというのもあるのかなと。
わかめ
ココネのEM/TL体制では、マネジメントを含む「人」を見る役割をEMが担うことになっています。
ただ、すべてをEMに任せるのではなく、例えばメンバーの仕事の進め方やマインドの部分で気になることがあったときには、自分からも本人に伝えるようにしています。そもそも「TLだから/EMだから話す」と決めるものでもなく、気づいたらそのまま話し合うことが一番ですし、そういう雰囲気を作っていけたらと思っています。
自分の作業タスクが終わったらそれでおしまいなわけではなく、すべて動く状態になってリリースできる状態にするまでみんなで責任を持つし、そこにやりがいも持とう、という考えがココネの根底にあるからだと思います。
とはいえTLだからこそ、
メンバーのマネジメントで気づけることもある
ー体制の今後の課題
とんさん
プロジェクトで発生した、少々大きめの問題などはプロジェクトを横断してすぐ共有されるようになりましたが、例えば「細かいけど良い改善」のようなものは、TLレイヤーでもまだ共有の流れなどができておりません。最終的にはTLを通しても通さなくても、エンジニア同士全員が上手く共有し合えるレベルまで行けたら良いなと思っています。
わかめ
先ほどの心がけていることと重なりますが、例えばTLがメンバーのマネジメントについてまったく関わらない、という状態になってしまうのはダメだと思っています。TLも責任を持ってどこまで担うのか、EMとどう連携していくのか、もっと議論を深めていく必要がありそうです。メンバーの開発作業を間近で見ているTLだからこそ気づけることもありますし、若手が成長できるような環境をEM/TL体制で構築していきたいです。
ーココネのTLとして目指すこと
maruc
エンジニアのメンバーが「もっと技術を楽しめる、その手助けができたら」という想いがあります。集中して開発できる環境づくりをしていく一方で、自由に議論ができる余裕や空気づくりも今後どんどん進めていきたいなと思ってます。
とんさん
個人として何かを目指すというよりは、任されているチーム全体のスキルアップや知見をメンバーとともに高めていきたいですね。
わかめ
開発面ですと、今年13周年を迎える『ポケコロ』のような歴史の長いサービスに対して、中身のシステムを今の時代に合わせて維持していけるよう、エンジニアや事業メンバーと連携しながら今後解決できたらと思っています。
必要なことだとは思いつつも、他社さんをみてもそこに時間と人を割いてやってらっしゃるところをあまり見かけないないのでハードルの高い挑戦とは思いますが・・・、目指したいですね。
後編「エンタメ企業としてのSRE」は近日中に公開します。
ココネエンジニアのテックブログはこちらからどうぞ!