🙌

設計を議論する会を作ったらプロダクトの設計品質は上がりチーム全体の設計力が上がりました

2023/06/05に公開

こんにちは。Magic Moment髙橋です。

現在Magic Momentではチーム全体でプロダクト品質の向上と設計力の向上に積極的に取り組んでいます。

もちろんMagic Momentのエンジニアは技術力向上に貪欲で、自分たちで勉強会をしたり新しい技術の使い所について議論をすることが本当に大好きだと思います。しかし個人の日々の勉強ではなかなか得られない経験というのが「顧客向けに作るサービスの設計」だと思います。

いくら自社サービスを作っているMagic Momentであっても、すべてのエンジニアが等しくすべての設計の経験ができるとは限りません。そこで少しでも設計の経験を積んでもらい、それがプロダクトの品質向上にも貢献するような取組をはじめました。

それが「Product Development会」という設計を議論する会議体を作ったことです!

ここからは「Product Development会(以下、PD会)」はどういうものか?なぜ作ったのか?作ってどうだったのか?ということをご紹介したいと思います。

PD会は、よりよい設計を追求するために議論する場である

会議体というと堅苦しく設計レビューする場のように考えることが多いと思いますが、PD会は決してレビューするという場ではありません。よりよい設計を追求するために建設的な議論をする場として定義しています。

理由は、顧客に本当に必要な価値を届ける、ということに尽きます。

レビューするだけではレビュアーの知見に偏ることが多いですが、多くの視点で議論することによって、考慮の抜け漏れを減らし、より顧客にとって価値のある設計ができるはずだからです。

そのため、必須の議論参加者は議題を持ってきたエンジニアとTech Lead全員としています。

サービス開発を技術で引っ張っているTech Lead全員が議論するため毎回非常に濃い議論ができていると思いますし、これこそが顧客に本当に必要な価値を届けるために我々Techチームがやるべきことなのだと思います。

PD会は、設計品質と設計力の向上がもともとの目的だった

ここまでPD会の立て付けについて説明しました。では、もともとの狙いは何だったのか?という事があると思います。

PD会の主な狙いは、設計品質を上げることと、設計力を上げることです。

設計品質を上げるというのは、プロダクトそのものの品質を上げることであり、これは先程説明したように設計を建設的に議論することでほとんど達成することができます。特にMagic Moment Playbookはマイクロサービスであったり大きく拡張をしていっているところであるため、設計の全体整合性が非常に重要です。だからこそ、Magic Moment Playbookについて多くの知見を持っているTech Leadの目線での議論が必須であり、これにより設計品質を上げることができるのです。

対して、設計力を上げるという意味では、議題を持ってきたエンジニアが自分が必死に考えた設計を議論されるのですから、本人の設計力は非常に高まります。Tech Leadもいろいろなテーマについて様々な視点で議論できるので設計力は上がるでしょう。

しかし、これでは参加していない人は設計力が上がらないことになっていしまいます。なので、PD会はオープンな場として傍聴も出入りも自由ということにしています。これによって、聞くだけにはなりますが、当事者意識を持っているサービスについての議論ということで興味を引きやすく、学びになる多くの考えを聞ける貴重な機会として提供できているのではないかと思っています。

ただ、こういった学びの多い場を開発テーマの設計だけに使うのは非常にもったいないものです。

サービス開発をしていると必要な議論のテーマは他にも、「障害是正」や「将来の理想の設計」などがあります。このように設計という技術的なポイントだけを議論するのではなく、サービス開発をする組織としてあるべきオペレーションや我々が提供する価値をどのように将来増幅させるのか?という未来を議論する場としても活用することも重要なことと考えています。

PD会は、設計文化を醸成しつつある

PD会を作ったことによって、設計品質は上がりチームの設計力は向上してきていると確信しています。ただ、私が一番作ってよかったと思っているのは、設計を大切にする文化が醸成されつつあることです。

これまでは設計は担当のエンジニアが決めたら、それで実装からリリースまで進んでしまうということがありました。その結果が障害だったり、部分最適によるコードの複雑化だったりしたのではないかと思います。

今は、そういった教訓を活かして、よりよい設計をチーム全員で作っていく、部分最適ではなく全体最適で考える、という文化が根付きつつあるのではないかと思います。こうして私が「PD会で議論してねー」といちいち声をかけていかなくても、それぞれのスクラムチームでしっかり設計を議論して、PD会で議論して、という流れが自然にできていこうとしています。

今後は組織全体として設計品質がどんどん上がるポジティブなサイクルに入ったのではないかと思っています。

PD会は、エントリー制である

最後にPD会を具体的にどのように運営しているのかご紹介します。

PD会は、エントリー制をということにし、議題がある場合にのみ開催する形にしました。こうすることによって、毎日でも開催することはできますし、不要なときにはいちいち会議室に行くことを気にすることすらいらなくなります。

エントリー可能な時間は、毎日開催時間枠として1時間確保しています。これにより忙しいTech Lead全員の時間を調整するという仕事をなくしています。開催枠を毎日にすることによって、議論したい人がいつでも議論をできるようにしています。

また、議論を有効なものとするために、エントリーする人にはアジェンダや議論のゴールを明確にしてもらうことをお願いしています。よりよい設計を追求すると言っても、達成したい性能目標や実現したい機能や特性があるはずなので、そういった指針を示すことは非常に重要なことだからです。

まとめ

今回はMagic MomentのTechチームが取り組んでいる「Product Development会」について紹介しました。

設計という非常に重要だけども本などで学びにくく実践が求められるスキルを、いかにチームの力とし文化としていくかということを考えることが重要なのだと思います。

今のPD会は多いときでは週に3回ほど開催されることもあるくらい、エントリーが積極的になっていて運用は非常に好調です!今後もチーム全体で設計文化の醸成して、もっと顧客に価値を届けられるプロダクトづくりを強化していきます!

最後に

弊社 Magic Moment では、フロントエンド・バックエンドにかかわらず全方位的にエンジニアを募集中です!Magic Momentに少しでも興味を持っていただけたら是非エントリーください!

8/30にはFindy様主催のイベントにMagic Momentから石田さんが登壇されます!
よろしければぜひご視聴ください!

さらに、こちらのイベントも8/29開催予定です!こちらはオンラインイベントです。Magic Momentの開発がどんなものか興味を持っていただいた方は是非ご参加ください!

Discussion