こんにちは。「ビズリーチ」で iOS 開発を行っている溝口です。
株式会社ビズリーチでは、「ビズリーチ」の iOS アプリの他、「HRMOS(ハーモス)」シリーズ、「 ビズリーチ・キャンパス」など、複数の iOS プロダクトをリリースしており、各プロダクトごとに iOS チームが存在しています。加えて、プロダクト開発チーム以外にも、技術基盤を管轄するチームなど、社内には iOS 開発に関わるチームが複数存在していました。
コミュニティを立ち上げる前の 2024 年の前半頃までは、各事業ごとのコミュニケーションが多く、事業を跨いだ iOS チーム間には交流があまりなく、Apple の最近の動向や開発知見の共有などのコミュニケーションが活発とはいえない状態でした。そこで組織横断的に iOS エンジニアがコミュニケーションを取れる場を作りたいと考え、「林檎の会」を立ち上げました。
今回の記事では、チーム横断組織を作る中で感じたことやビズリーチだからできたことを段階を追いながらご紹介したいと思います。
ニーズの把握
社内コミュニティの立ち上げを検討されている方の多くは、なんとなくそうした横断的なものがあった方が良いけれど、具体的なニーズや温度感を測りかねているのではないかと思います。無理に組織を作っても、メンバーの賛同がなければ軌道には乗りません。だからこそ、参加者一人ひとりが「参加する価値がある」と感じられるような場を設計する必要がありました。
このような参加者のニーズを検証する方法はさまざまですが、今回は社内の文化を最大限活用しました。ビズリーチには部署や役職の違いを越えて、1 対 1 で業務やキャリアなどについて話す 1on1 文化が浸透しています。誰とでも気軽に 1on1 をする環境が整っていたため、想定される参加者全員に直接ヒアリングをし、ニーズを把握することにしました。
実際に 1on1 をする中でさまざまな意見をいただきました。そこから見えてきたニーズは大きく以下の 2 つに整理することができました。
- プラットフォーム対応の共有
- e.g.) プライバシーポリシー対応、Swift 6 へのマイグレーションといった、Apple プラットフォームで発生した変更への対応が必要な場合に問題を検知、共有する場
- iOS エンジニアが気軽に交流できる場
- e.g.) 最近こんな実装をやったよ、ここで苦戦した、他のエンジニアに聞いてみたいことがある、など気軽に発言できる場
開発時に、プラットフォーム対応が抜けているとストアからのリジェクトに繋がったりするため「対応漏れがないかと確認しなければならない」という iOS エンジニア共通の概念と、「そもそも直接会ったことがないため気軽に話しかけづらい」という課題があることがわかったため、これらを解消できるような組織横断のコミュニティを設計することにしました。
設計
参加者のニーズを把握した後、実際にこれらを機能させるようなコミュニティの設計を目指しました。ヒアリングによって明らかになった「プラットフォーム対応の共有」と「iOS エンジニアが気軽に交流できる場」という 2 つの要件を満たすため、複数の接点を持つコミュニティ構造を設計しました。
コミュニティの全体設計
林檎の会は、3 つの要素で構成されるコミュニティとして設計しました。
1. 月次定例会(メインの活動)
- 全員が集まる定期的な顔合わせの場
- Apple の最新動向やプラットフォーム対応の情報共有
- 各プロダクトの取り組みや課題の共有
2. Slack チャンネル(日常的な交流)
- 既存の iOS 関連チャンネルを活用した常設の相談窓口
- 定例会のフォローアップや議事録の共有
- 緊急性の高い技術的な質問や相談の場
3. アドホックな勉強会(深い技術議論)
- 特定のトピックを深掘りする少人数の技術セッション
- SwiftUI 移行やアーキテクチャ変更など、実装に特化した内容
- 必要に応じて開催する柔軟な運用
これらが相互に補完し合うことで、月 1 回の定例会だけでは解決できない日常的なコミュニケーション課題も解決できる設計としました。
ここからは、1.2 の詳細設計についてご紹介します。
月次定例会の詳細設計
コミュニティの中核となる月次定例会については、以下の目的を前提として、4 つの要素を検討しました。
目的
月次定例会は前述の 2 つの要件を満たす中核的な活動として位置づけました。全メンバーが定期的に顔を合わせることで、Apple の最新動向やプラットフォーム変更への対応状況を共有し、各プロダクトが抱える技術的課題について組織横断的に議論できる場を目指しました。
1. 日時
初回は特に定めず、参加者を多く募るため参加希望者が全員参加可能な日を調整して設定しました。その後の運用は月初開催とし、定例化することでメンバーのスケジュール確保を容易にしました。
2. インターバル
隔週、毎月、隔月の 3 つから検討しました。会のコンテンツ的に隔週でやるほど大きなものではなく、隔月にすると期間が空きすぎてしまうため、毎月開催を選択しました。
3. コンテンツ
初回は互いに初めて会う人が多いため、各プロダクト紹介を組み込み、お互いを知る機会を設けました。2 回目以降からは Apple の動向を追うことを中心とした構成に据えました。 3 回目以降は企画ネタをシートに記載して募集をかけるようにし、メンバー主体でコンテンツを作成する体制を整えました。
4. オンライン / オフライン
今回の主な目的はコミュニケーションの円滑化だったため、オフライン開催を選択しました。月 1 回であれば参加者の負担も重くなく、無理なく継続できると考えて設計しました。
Slack チャンネルの活用設計
定例会だけでは解決できない日常的な課題に対応するため、既存の iOS 関連 Slack チャンネルを林檎の会のチャンネルとしても活用することにしました。これにより、以下が可能になる設計をしました。
- 定例会で話題に上がった内容の継続的な議論
- 緊急のプラットフォーム対応に関する即時共有
- 気軽な技術相談や実装の質問
これらの要素をざっと決めた後、社歴が長いエンジニアの方にレビューしてもらい、ビズリーチの文化に適した継続可能な形になっているかを確認しました。
ローンチ
開催告知
設計が大体固まった段階で、一定数の参加者を募るため、事前の開催告知を社内 Slack で行いました。この告知によって、エンジニアだけでなく関連チームで iOS の動向が気になっている社員を含め、幅広く参加者を募ることができました。また、告知とは別に個別に声をかけて参加してもらえる人を増やす努力も行いました。
初回開催・運用
結果として初回の運用は次のような構成で 30 分程度の会議体として設定しました。
初回のアジェンダ
- 各プロダクトの概要説明
- Apple/iOS の最近の動向(以下サイトを定期的に確認)
- Apple News
- ニュースとアップデート(ソフトウェアリリース)
- Swift-Evolution
- SwiftUI Weekly
- SwiftLee
- 技術的な知見共有・質疑応答
事前準備もあって問題なく初回開催を迎えることができました。初回開催を終えた後は通常運用に切り替え、継続的な価値提供ができる体制を整えました。
運用開始後に生まれた価値
コミュニティを運用する中で、当初期待していた以上の価値が生まれました。
まず、Apple 動向の継続的なキャッチアップという点では、Apple Developer News や iOS Release Notes をチェックし、重要な変更点を定期的に共有する仕組みが確立されました。iOS 26 や Xcode 16 の新機能、Swift 6 への段階的移行などについて、各プロダクトでの対応状況を共有しながら進められるようになったことで、プラットフォーム対応に対する方針策定や、対応にあたっての効率化が見込めるようになりました。
コミュニティの活性化については、設立当初に把握した 2 つの課題が無事解消されました。「対応漏れがないかと確認しなければならない」という不安は情報共有体制の確立により大幅に軽減され、「そもそも直接会ったことがないため気軽に話しかけづらい」という課題も顔の見える関係性の構築により解消されました。
特に印象的だったのは Slack の発言の活発化です。iOS 関連チャンネルでの投稿数(bot を除く)が年間 78 件からコミュニティ発足後は 414 件と約 5.3 倍に増加し、日常的な技術相談が自然発生するようになりました。月 1 回の会議だけでなく、Slack での継続的な議論や知見共有が活発化し、組織横断的な技術コミュニティとして機能し始める体制ができました。
まとめ
スモールな横断組織ですが、構想開始から初回開催まで概ね 1 ヶ月半程度と比較的迅速に構築することができました。まだまだキャッチアップもおぼつかない中、さまざまな人にご協力いただきながら無事に開催することができました。また前述の通り、1on1 文化が浸透している、自由に発言しやすい風土などにも非常に助けられました。
この記事を書いている段階で 10 回目の開催を控え、運用開始からまもなく 1 年を迎えようとしています。当初の目的である「プラットフォーム対応の共有」と「iOS エンジニアが気軽に交流できる場」の構築は達成できましたが、運用を続ける中で、さらなる発展の余地があることも見えてきました。
今後取り組みたい課題
1. メンバーの拡大
現在の参加者は平均 10 名程度で安定していますが、社内にはまだ参加していない iOS 関連のエンジニアやデザイナーがいます。開催後の 1on1 を積極的に行ったり、定期的なメンバー募集を通してコミュニティをさらに拡大していきたいと考えています。
2. 発信体制の強化
こうした取り組みの価値を社内外により広く伝える活動をさらに強化していきたいと考えています。社内向けには他の技術領域(Android、Web 等)への横展開のきっかけとなる発信や、社外向けには iOSDC などの技術カンファレンスでの事例発表に繋げるなど、コミュニティ活動の知見を共有する機会を積極的に作っていく予定です。
3. 技術的課題の横断的解決
iOS 26 対応や、「ビズリーチ」iOS チームで移行を進めている SwiftUI + Composable Architecture における横断的な課題解決により積極的に取り組んでいきたいと考えています。「ビズリーチ・キャンパス」チームはこれらのアーキテクチャを既に取り入れており、他プロダクトでも移行の知見やベストプラクティスを密にコミュニケーションを取りながら進めていく予定です。特に新しいアーキテクチャパターンの導入や、既存コードベースからの段階的な移行戦略について、より体系的な情報共有と協力体制を構築していきます。
チーム横断組織の運営は一度構築して終わりではなく、継続的な改善と発展が重要だと改めて実感しています。今後も参加メンバーと協力しながら、コミュニティをさらに価値あるものへと育てていきたいです。