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

Chatwork Devday Keynote

Chatwork Devday Keynote

Chatwork Devday登壇資料です

389f289e10659b2df5281d7a7db93285?s=128

cw-kasuga

May 26, 2021
Tweet

Other Decks in Technology

Transcript

  1. None
  2. SESSION 技術面から振り返る Chatwork の10年

  3. AGENDA 1. 紹介 紹介 2. プロダクトフェーズと技術選定の流れ 3. 挑戦の歴史

  4. 本日の目的 ISSUE DRIVEN! シンプルな本質

  5. 1 紹介

  6. 春日 重俊(カスガ シゲトシ)41歳 部署 プロダクト本部 立場 執行役員CTO兼プロダクト本部長 職歴 Chatwork •

    開発本部の本部長→CTO • コアテクMGR、SRE MGR 兼務 • 会社全体の経営ボード端くれ リクルート • ビッグデータ基盤組織立ち上げ • ポンパレ立ち上げ • じゃらん検索エンジンリプレース etc Sier • seasar2が立ち上がった会計開発Prj 趣味 ホッピー / スニーカー収集 / 水泳  自己紹介
  7. Chatworkは日本最大級のビジネスチャットサービス 31.3万社 突破! 20万社 突破! 導入社数31.3万社を突破! (2021年4月末日時点) 10万社 突破! ※

    Nielsen NetView 及びNielsen Mobile NetView 2020年6月度調べ月次利用者(MAU:Monthly Active User)調査 ※ 調査対象44サービスはChatwork株式会社にて選定 3月 リリース
  8. Chatworkって、どんな規模なの?

  9. Chatwork 現在の構成

  10. 10 プロダクト本部 フロントエンド開発部 モバイルアプリケーション開発部 サーバーサイド開発部(PHP・Scala) SRE部・コアテクノロジー開発部 プロダクトマネジメント部・プロダクトデザイン部 グロースエンジニアリング部 経営企画室 従業員数

    189名 平均年齢 34歳 (2021年3月末日現在) (2021年4月末日現在) ピープル&ブランド 本部 人事部 BX部(コミュニケーションチーム・クリエイティブチーム) ビジネス本部 事業開発部・事業企画部・事業戦略部 マーケティング部 アカウントセールス部・パートナーセールス部 カスタマーサクセス部・カスタマーサポート部 グローバル戦略部 コーポレート本部 法務総務部・CSE部・経理財務部 従業員数・平均年齢・組織図
  11. 2 プロダクトフェーズと技術選定の流れ

  12. *1 当社依頼による第三者機関調べ、n=30,000 *2 実現可能な最大の市場規模(Total Addressable Market)。外部統計資料や公表資料、当社保有のデータを元に当社が想定する市場を推察した市場規模であり、客観的な市場規模を示すものではありません *3 総務省統計局「労働力調査」より。2019年平均の就業者数 *4 エンタープライズプラン単価800円/ユーザーの12ヶ月分

    ビジネスチャットツールの利用状況 6,455 億円 ビジネスチャットの潜在市場規模(TAM)*2 国内労働人口 6,724 万人*3 Chatwork 料金単価*4 • 新型コロナウイルスの影響で、テレワーク需要は大きく拡大しビジネスチャットの普及は急速に進みつつある • ビジネスチャットの国内普及率は12.5%*1とまだまだ低く、非常にポテンシャルの大きなマーケット Chatworkが対峙してるマーケット規模
  13. 企業規模 大 企業規模 小 ITスキル 低 ITスキル 高 B社 A社

    ターゲット層 • 主要な競合は2社あるが、各社の中心となるターゲット層は異なっている • ビジネスチャットの市場浸透率が低いため、各社がそれぞれの領域で新規に市場開拓を進めている状況 業界におけるポジショニング
  14. 複利でユーザー数が伸び続けるサービス構造 • 社内外がシームレスにつながるオープンプラットフォームと、無料からはじめられるフリーミアムの 特性により、お客様・取引先と使いやすいため、紹介によりユーザーが複利の構造で広がり続けている • 競合他社の参入も、ユーザー数の伸びには影響していない サービス開始からの登録ID数推移 1 2 3

    2013年8月 A社 リリース 2017年3月 B社 リリース 2 2017年11月 A社 日本語版リリース 3 競合他社の参入時期 1 2012年1月 2014年1月 2016年1月 2018年1月 2021年3月 ユーザ数の推移 400万 ユーザー 突破!
  15. User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹ 社会的公器の壁

    Intro Growth Matulity Decline ❺ 複雑的優位性の壁 プロダクトフェーズ毎の技術観点での壁 Time
  16. 3 挑戦の歴史

  17. Time User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹

    社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 PMFを検証するフェーズなので、 まずは機能リリースして運用面の課題は少人数でカバー プロダクトフェーズ毎の技術観点での壁
  18. CTO 技術部 デザイン部 ビジネス ❶ 製品内容による優位性の壁 〜 継続的デリバリーの難しさ:体制 〜

  19. ❶ 製品内容による優位性の壁 〜 継続的デリバリーの難しさ:システム構成 〜

  20. Error rate ❶ 製品内容による優位性の壁 〜 継続的デリバリーの難しさ:サービス特徴 〜

  21. 性能監視改善 サイクル 検知 原因分析 打ち手 検討 対策実施 ❶ 製品内容による優位性の壁 〜 継続的デリバリーの難しさ:性能監視改善サイクル

  22. AWS構成概要 AWS Cloud Elastic-Load-Balancing S3 ❶ファイル送信する ❷ UPLOADファイルを  EC2上で保持して負荷増大 ❶

    製品内容による優位性の壁 〜 継続的デリバリーの難しさ:実施施策 〜 EC2 Before
  23. AWS構成概要 AWS Cloud VPC Availability Zone:A Availability Zone:B ELB S3

    ❶ファイルアップロード用の  Pre-Signed URLの発行を依頼 ❸取得したPre-Signed URLを利用して、  S3へファイルを直接アップロード ❷一時Credential情報で  Pre-Signed URLを発行 ❶ 製品内容による優位性の壁 〜 継続的デリバリーの難しさ:実施施策 〜 EC2 After
  24. Amazon EC2 Nginx Apache(mod_php) Ephemeral Disk SSD Elastic Block Storage

    syslog temporary OS application Ephemeral Diskの利用 Amazon EC2の解決策 ❶ 製品内容による優位性の壁 〜 用途に応じた運用設計の工夫 〜
  25. Internet WEB/Application Mroonga Search AWS Cloud Mroonga MySQL RDS Read

    Replica Index Internet CloudSearch WEB/Application Search Proxy CloudSearch Search MySQL RDS Read Replica Update Worker AWS Cloud Queue Queue Index Dynamo DB Message Update History ❶ 製品内容による優位性の壁 〜 突然来る限界値 〜
  26. ❶ 製品内容による優位性の壁 〜 当時の学び〜 • 少人数で運用できるサービスを選択する重要性 • サービス特性に応じた事業に必要なツールを 積極的に投資していく姿勢 • ボトルネックは放置せずに、1つずつ解決していく

    サイクルの構築
  27. 3. 製品内容による優位性の壁 〜エキスパート紹介〜 名前 藤原 吉規 所属 関係性 Chatwork社の元社員 • CTO室メンバー。SREの前身となる役職を歴任

    アマゾン ウェブ サービス ジャパン株式会社 シニアソリューションアーキテクト
  28. Time User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹

    社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 資金調達してるので、グロースしてもプロダクトを 動かなくなるのを防ぐフェーズ プロダクトフェーズ毎の技術観点での壁
  29. Internet ELB S3 Glacier Auto Scaling EC2 (Web Server) ElastiCache(Session)

    DynamoDB(Flags) S3(Logs) SQS (Task Queue) RDS(MySQL) CloudSearch EC2 (Worker) GAE (Comet) BigQuery (API Logs) Tokyo Direct Upload / Download Push Index Get ❷ 展開面積の壁
  30. ❷ 展開面積の壁 〜 DB同時接続数の壁 〜

  31. ❷ 展開面積の壁 〜 データ容量の壁 〜

  32. 3. 展開面積の壁 〜分散システム導入への機運〜

  33. 3. 展開面積の壁 〜当時の学び〜 • プロダクトステージに応じた積極的な技術投資の 必要性を経営レベルで合意する • 新技術を採択する場合にリスクコントロールとの トレードオフ • 難しいPrjはワクワクする目標設定が重要!

  34. 3. 展開面積の壁 〜エキスパート紹介〜 名前 土橋 昌 所属 関係性 基盤刷新Prjの技術支援 • Chatworkのメッセージ基盤刷新Prjを基盤技術面で支

    援頂く。Prj終了後は海外カンファレンスでも一緒に 登壇しております。 NTTデータ エグゼティブITスペシャリスト
  35. Time User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹

    社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 プロダクトが安定して運用できたら、 そのあとは損益分界点の改善が重要テーマ プロダクトフェーズ毎の技術観点での壁
  36. ❸ コストの壁 〜 2016年 - 2019年アーキテクチャ 〜

  37. コストの壁 ピーク時から原価率75%ダウン!

  38. Before ❸ コストの壁 〜 検索エンジンリプレース 〜

  39. After 1/10に削減 サーバー台数 1/6に削減 & Inex反映時間がほぼリアル ランニングコスト ❸ コストの壁 〜 検索エンジンリプレース

  40. 豊富な管理APIによるシステムコストの最適化を実現 EC2のspotインスタンス化によるコスト削減 実際の効果 ❸ コストの壁 〜 EC2 spotインスタンス 〜

  41. コストの壁 〜Auto Scale〜 常時起動 ピーク時のみ起動 EC2常時起動から50%削減 実際の効果

  42. 1/2に削減 レスポンスタイム ❸ コストの壁 〜 php7対応 〜

  43. ❸ コストの壁 〜 当時の学び〜 • コスト意識を現場レベルまで浸透させる • 採択した技術は数年単位で見直して継続するか判断 • 自社の体制を鑑みた上での運用コストを考慮

  44. コストの壁 〜エキスパート紹介〜 名前 新原 雅司 所属 関係性 Chatwork社の技術パートナー • ChatworkのPHPアプリケーションを継続的に支援。 最近ではPHPのk8s化に貢献して頂く

    1×1株式会社
  45. Time User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹

    社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 上場前夜でおきた、 セキュリティイシューからの学び プロダクトフェーズ毎の技術観点での壁
  46. ❹ 社会的公器の壁 〜 セキュリティ対応の考え方 〜 NIST Cyber Security Flamework 特定 防御

    検知 対応 復旧 侵入前 侵入後 ISO 27001 日本で主流のセキュリティ対策基準 NIST SP800-171 米国でDoDとの取引企業が準拠を義務付けられた対策基準 検知 → 復旧(レジリエンス)が両者の違い
  47. ❹ 社会的公器の壁 〜 セキュリティ対応の考え方:継続的な改善サイクル 〜 セキュリティ管理シート

  48. ❹ 社会的公器の壁 〜 セキュリティ実施施策 〜

  49. ❹ 社会的公器の壁 〜 実際にあった攻撃 〜 ❶ ログイン情報GET IDとパスワードの 組み合わせ ❷ 他のサイトも同じ

      IDとパスワードでは? ❸ 他のサイトでも   ログインを試みる! ログイン可 情報漏洩・改竄等の被害 ログイン可 情報漏洩・改竄等の被害 ログイン不可 ログイン不可
  50. ❹ 社会的公器の壁 〜 実際にあった攻撃:実施対応 〜

  51. 社会的公器の壁 ~実際にあった攻撃:実施対応~ postman application/json IAM認証を使用 イベントトリガー イベントトリガー メッセージ登録 一覧取得 削除処理

    削除処理 登録通知 登録処理 削除処理 削除処理 TTL付きで データ登録 期限切れデータを取得
  52. 社会的公器の壁 ~当時の学び~ • セキュリティイシューはシステムだけでなく、 ユーザコミュニケーション設計が重要 • 常日頃から様々パートナーと目線合わせしておく • 緊急事態時では普段の業務STOPしてでも課題解決を優先

  53. 社会的公器の壁 ~エキスパートの紹介~ 名前 清水 崇之 所属 関係性 Chatwork社の初代担当SA • ChatworkのAWS利用シーンに合わせた数々の支援を 担当頂く

    技術統括本部 西日本ソリューション部部長 シニアソリューションアーキテクト
  54. 社会的公器の壁 ~エキスパートの紹介~ 名前 松宮 寿 所属 関係性 Chatwork社の初代担当営業 • Chatworkの無茶な要求を飄々とこなしてくれる、

    スーパー営業。 アマゾン ウェブ サービス ジャパン株式会社 ストラテジックアカウント本部 西日本営業部 大阪支社 担当部長
  55. プロダクトフェーズ毎の技術観点での壁 Time User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁

    ❹ 社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 サーバアプリケーション刷新が 必要なフェーズ
  56. ❺ 複雑的優位性の壁 〜 真の社会インフラ目指して 〜 • 主力のChatwork事業*1において、2021-2024年でCAGR40%以上の売上成長を実現する • 2024年度に全社売上100億円、中小企業向けビジネスチャット市場で40%のシェアを獲得しNo.1となる Chatwork事業 売上計画

    *1 アカウント事業並びに広告事業、プラットフォーム事業を本業であるChatwork事業とし、セキュリティ事業は除外する *2 TAMのうち注力顧客セグメントの需要を示している指標(Serviceable Available Market) *3 当社調査によるビジネスチャット浸透率から推計 *4 総務省「労働力調査」、中小企業庁「中小企業白書」から当社推計 CAGR40% 以上 全社売上 100億円 中小企業向けビジネスチャット市場(SAM*2) 2024年度目標マーケットシェア 2024年度 Chatwork シェア 40% 2,313万人 2,313万人 ビジネスチャット利用中 ビジネスチャット未利用 ビジネスチャット普及率*3 50% 他社利用中 4,626万人 中小企業就業者*4
  57. ❺ 複雑的優位性の壁 〜 真の社会インフラ目指して 〜 スペイン「カンプ・ノウ」

  58. ❺ 複雑的優位性の壁 〜 真の社会インフラ目指して 〜 スペイン「サグラダ・ファミリア」

  59. 学び〜まとめ〜 User ❶ 製品内容による 優位性の壁 ❷ 展開面積の壁 ❸ コストの壁 ❹

    社会的公器の壁 Intro Growth Matulity Decline ❺ 複雑的優位性の壁 Time 1. 少人数でも運用できるサービスを選択する 重要性 2. サービス特性に応じた事業に必要なツール を積極的に投資していく姿勢 3. ボトルネックは放置せずに、 1つずつ解決していくサイクルの構築 1. プロダクトステージに応じた積極的な技術投資の必 要性を経営レベルで合意する 2. 新技術を採択する場合はリスクコントロールとのト レードオフが重要 3. 難しいPrjはワクワクする目標設定が重要! 1. コスト意識を現場レベルまで浸透させる 2. 採択した技術は数年単位で見直して継続か判断 3. 自社の体制を鑑みた上での運用コストを考慮 1. セキュリティイシューはシステムだけでなく ユーザコミュニケーション設計も重要 2. 常日頃から様々な目線合わせしておく 3. 緊急事態時は、普段の業務STOPしてでも 課題解決を優先
  60. 4 ニュース

  61. 新機能リリース

  62. 本日はご静聴ありがとうございました

  63. None