はじめに
こんにちは。
セーフィー株式会社でサーバーサイドの開発をしている金成です。
今回は、サーバーチームで「マイクロサービスアーキテクチャ第2版 」 を題材に、輪読会を開催したので、紹介させてください
背景
セーフィーは、サービスの拡大と開発者の増加に伴い、工数の増加やリリースリスクの増大など、開発生産性の問題を抱えています。この問題の解決のために、組織の再編やコードベースの分割によるマイクロサービス化が進行しています。
私を含め開発チームのメンバーには、マイクロサービスとはなんなのか?何を目指してるのか?どういったメリット・デメリットをもたらすのか?などイメージがついていない部分がありました。
そこで、今回の「マイクロサービスアーキテクチャ第2版」を参考に輪読会を開催し、このトピックに対する理解度を深めようとしました。
実装/実行
開催の形式は、下記の通りです
- 週1回 30-45分で開催
- 1つの章を取り上げ、参加者は事前に読む
- 議論したい話題を取り上げ、自由に議論する
- 議論した内容を簡単に残し、後で見れるようにする
全16章、4ヶ月ほどかけて全ての章で実施しました。
議題は
- マイクロサービスにおける一番の目的は何か、どんな指標を持つべきか
- REST/RPC/GraphQL/メッセージキューの使い分け
- サーガパターンとその適用するケース
- コンウェイの法則と逆コンウェイ戦略について
などがあり、技術的な側面から組織面まで様々な議論をしました。
弊社ではドキュメント管理にnotionを利用してるので、下記のようなテーブルを作成して、議題を管理しています。
下記のように笑顔の絶えない議論が展開され、4ヶ月間笑いが絶えることはありませんでした。
— アットホームな職場の写真サンプル(タノシイヨ, コワクナイヨ)
やってみて
輪読会後にアンケートをとったところ、下記のような結果が得られました。
よかったところ
- マイクロサービスへの理解が深まった
- 参加者の実務経験から周辺知識を補うことができた
- 対話の機会が増えた
問題点・改善点
- 事前の準備の時間が足りなかった
- 発言の機会が足りなかった
- 時間が足りなかった
事前準備や議論のファシリテーションには問題が残りますが、マイクロサービス化への理解を深めるという当初の目的を達成できたこと、リモートが多い弊社で対話の機会を増やせたことは一定プラスになったかと感じてます。
終わりに
自分の思い付きから企画した輪読会でしたが、参加してくれたメンバーの満足度は概ね高く、やってよかったと感じました。 実は、私もこの秋からマイクロサービス化を進めるチームに参画しています。マイクロサービスについて知らないままだと、仕事がうまく進められません。だから「マイクロサービスアーキテクチャ」を読む必要があったんですね。
セーフィーではエンジニアを積極的に募集しています。気になる方はこちらをご覧ください!
この記事を読んでもし興味を持っていただけた方は、ぜひ採用サイトもご覧ください。
カジュアル面談のみでも大歓迎ですので、お気軽にご連絡ください。
最後までお読みいただき、ありがとうございました。