Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Garoon 開発チーム / Garoon development team

Cybozu
PRO
October 12, 2022

Garoon 開発チーム / Garoon development team

Cybozu
PRO

October 12, 2022
Tweet

More Decks by Cybozu

Other Decks in Technology

Transcript

  1. Garoon開発チーム の紹介 -2022-

  2. Garoon、ご存知ですか︖

  3. Garoonとは 3 中堅・⼤規模組織向けのグループウェア • 社内の様々な情報を整理・統合表⽰するためのポータル機能 • きめ細やかなアクセス権限設定や管理機能 • 多⾔語対応やAPIによる他システムと連携する拡張性など スケジュール

    掲示板 メッセージ スペース ファイル管理 ワークフロー ポータル 組織ロール 多言語 タイムゾーン 他システム 連携 情報共有・コミュニケーションに 必要なアプリケーション 中堅・⼤規模組織の運営に 必要な管理機能
  4. 国内の多くのお客様にご利⽤いただいています︕ 導⼊社数 Garoon 1 つながる・ひろがる おてがる Garoon 2 管理者の 運⽤負担を軽減

    Garoon 3 国際化対応 コラボレーション 機能の強化 クラウド版 Garoon サービス提供開始 Garoon 4 スマートフォン ⼤規模対応 Garoon 5 API・連携強化 (2021.8⽉末時点) 年
  5. 使⽤している技術(2022年10⽉現在) 5 PHP 8.0 独⾃フレームワーク利⽤ TSとReactに移行中 MySQL 5.7〜8.0 React

  6. 開発チーム 6 Product Manager セキュリティ チーム バックサポート UI/UX Technical Communication

    テスト⾃動化 QA 🇻🇳 ベトナム 🇯🇵 ⽇本 … 合計︓約100⼈ 開発 開発 開発 リリース チーム インフラ チーム
  7. 開発チーム 7 🇻🇳 ベトナム 🇯🇵 ⽇本 … 合計︓約100⼈ 開発 開発

    開発 課題解決専任 チーム スクラム チーム セキュリティ チーム リリース チーム インフラ チーム
  8. 8 なんで⽇本チームは”課題解決専任チーム”︖ 約20年間の開発に理由が…

  9. 9 製品が20年続くと… • スケールさせるために新しいクラウド基盤へ乗せ換える必要がある • 多くのライブラリを扱っていて、脆弱性対応のためにアップデートが必要 • クラウドのリリースサイクルがパッケージ時代のリリースサイクルに 引きづられている •

    20年前の設計が受け継がれていて、メンテナンス性が悪い • 性能問題に対する検知/対応に時間がかかる 機能開発以外にも考えることが多い
  10. 10 以前は… 🇯🇵 ⽇本 PGチーム ⼀つのチームがすべての課題に向き合っていたため 認知負荷が⾼く課題解決への取り組みの効率が悪い

  11. 重要度の⾼い課題に専念できるようにチームを分割 11 • セキュリティ⾯を担保する 利⽤ライブラリの更新、 脆弱性調査、など • 技術的により良い環境にす る セキュリティ

    チーム • リリースに必要な作業をお こなう • リリースに関する改善をお こなう リリース頻度/バージョニ ング改善、 リリースコスト削減、 テストコスト削減、など リリース チーム • 次世代インフラ基盤 (Neco)への移⾏ • cybozu.comのインフラに 関係する作業 インフラ チーム
  12. |もっとモダンな技術を取り⼊れたい |世界最先端なDevOpsチームにしたい Four Keys の指標で最上位を⽬指すイメージ |もっと課題解決専任チームを増やしたい 例︓パフォーマンスに責任を持つチーム 12 でも、やりたいことは他にもたくさん…︕

  13. 13 ⽇本チームは改善活動を通して Garoonをより良くしていき、 チームワークあふれる社会をめざします︕ 💪😤

  14. |技術スタック詳細 |ベトナムチームとのやりとり |Garoonの機能説明 14 付録:参考資料

  15. 技術スタック

  16. ⾔語︓PHP(Ver 8.0~), TypeScript ※独⾃フレームワーク(Azalea) データベース︓MySQL 主なライブラリ︓jQuery, React, Smarty リポジトリ管理︓GitHub テスト︓PHPUnit,

    Jest, Selenium CI︓CircleCI, GitHub Actions IDE︓PhpStorm その他ツール︓ESLint, Phan, Babel, Docker, Composer 付録︓技術スタック 16
  17. ベトナムとのやりとり

  18. |メッセージ・ドキュメント系は英語 18 ベトナム拠点とのやりとりって、どうしてるの︖ |ミーティングは日本語 • 通訳が同席

  19. 19 英語って⼤変でしょ︖ |いえいえ。抵抗感がなければ大丈夫! • DeepL(Pro) など充実の支援ツール • 専門チームが英語コミュニケーションを支援してくれます

  20. Garoonの機能説明

  21. 21 Garoonの機能説明 ポータル ⽤途に応じた多 彩な社内ポータ ルを作成できま す スペース 部⾨横断で使える 電⼦会議室です

    スケジュール 個⼈やチームの の予定を登録・ 共有できます 施設予約 会議室や備品の 予約管理ができ ます メッセージ メールアドレス なしで使える社 内メッセージで す 掲⽰板 全社通達に便利 な掲⽰板、予約 投稿も可能です ファイル管理 社内のファイル の共有、バー ジョン管理がで きます メモ 備忘録や下書き⽤ などに便利な⾃分 ⽤のメモ帳です 電話メモ 他のユーザー宛に 伝⾔メモを残すこ とができます ToDoリスト タスクの締め切 りと重要度を設 定できます アドレス帳 ⾃分⽤と組織⽤ のアドレス帳を 作成できます メール サーバーを登録 して利⽤する WEBメーラーで す 通知⼀覧 新着/更新通知 をアプリケー ション横断し て確認できま す ワークフロー 申請フォームを ⾃由に作成。申請 業務が電⼦化でき ます マルチレポート 議事録や報告書 の作成と共有が 簡単にできます お気に⼊り よくアクセスする ファイルやスレッ ドを登録できます 全⽂検索 Garoon 内の情 報をファイルの 中⾝も含めて横 断的に検索でき ます リンク集 よく使うWeb サイトのURL登 録できます RSS リーダー よく⾒るWebサ イトのRSSを登 録できます 在席確認 ログイン状 態から在席 状況を表⽰ します タイムカード Garoon へのロ グイン/ログオフ 時間を記録しま す スマートフォン モバイルビュー とアプリを利⽤ できます リマインダー 予定や通知を デスクトップ 上にポップ アップでお知 らせします APIの利⽤ 他システムとの連 携などのカスタマ イズが可能です ケータイ フィーチャ・フォ ン⽤のビューを利 ⽤できます ※ 2
  22. |サイボウズの製品や開発体制について(エンジニア採用ピッチ資料) https://speakerdeck.com/cybozuinsideout/cybozu-engineer-recruit |Garoonの改善活動に関して PHPConference での発表資料 • 「改善失敗から学ぶ、レガシープロダクトに立ち向かうチーム作り。」 https://speakerdeck.com/oogfranz/gai-shan-shi-bai-sitexue-bu-regasipurodakutonili-tixiang-kautimuzuo-ri • 「続)改善失敗から学ぶ、レガシープロダクトに立ち向かうチーム作り。」

    https://speakerdeck.com/ynkt/sok-gai-shan-shi-bai-karaxue-bu-regasipurodakutonili-tixiang-kautimuzuo-ri 22 参考資料