Slide 1

Slide 1 text

アンチパターンのアーキテクチャと組織 株式会社アンチパターン 小笹佑京 (@yukiozasa) 03 #アーキテクチャと組織_findy

Slide 2

Slide 2 text

© 2025 Anti-Pattern Inc. All rights reserved. 自己紹介 小笹 佑京(Ozasa Yuki) 株式会社アンチパターン 代表取締役 SaaS Engineering Meetup主催者 日本CTO協会 Contributor 大学では心理学を専攻 (主にユング心理学) 立教大学卒業後、2014年に株式会社イノベーションに入社。 マーケティングオートメーション SaaS開発業務に従事。 2018年より開発本部長を歴任。 2019年7月株式会社アンチパターンを創業。 ■主な登壇暦 ・Postman API Night Tokyo 2024 Spring ・JP_Stripes 東京 Vol.20 ・日本CTO協会主催 Developer eXperience Day 2024 ・アーキテクチャConference 2024 ソフトウェアエンジニア 兼 CEO 兼 VPoE #アーキテクチャと組織_findy

Slide 3

Slide 3 text

© 2025 Anti-Pattern Inc. All rights reserved. 活動歴 以前から組織とソフトウェアの話をしてまいりました AWS DevDay Online Japan 2022 AWS DevDay Online Japan 2021 #アーキテクチャと組織_findy

Slide 4

Slide 4 text

© 2025 Anti-Pattern Inc. All rights reserved. アジェンダ おおよそ3つのフェーズで分けてお話しいたします。 ● 新規事業開発 ● 新しい在り方の 模索 ● 山積する課題 起業直後 複数プロダクト 展開 これから #アーキテクチャと組織_findy

Slide 5

Slide 5 text

© 2025 Anti-Pattern Inc. All rights reserved. 前提知識 “システムを設計する組織は、
 自らのコミュニケーション構造を
 真似た設計を生み出す”
 Melvin E. Conway “How do committees invent?” (April 1968). #アーキテクチャと組織_findy

Slide 6

Slide 6 text

© 2025 Anti-Pattern Inc. All rights reserved. 前提知識 ■コンウェイの法則とは 組織のコミュニケーション構造と、 設計し得るシステムのアーキテクチャには同形⼒が働き、 制約が⽣まれてしまうことを⽰唆したもの ■逆コンウェイの法則 コンウェイの法則を念頭におき、 望ましいアーキテクチャを実現するために、 それに合った組織構造やチーム構造にした⽅が良いという考え⽅ #アーキテクチャと組織_findy

Slide 7

Slide 7 text

© 2025 Anti-Pattern Inc. All rights reserved. 前提知識 ■コンウェイの法則とは 組織のコミュニケーション構造と、 設計し得るシステムのアーキテクチャには同形⼒が働き、 制約が⽣まれてしまうことを⽰唆したもの ■逆コンウェイの法則 コンウェイの法則を念頭におき、 望ましいアーキテクチャを実現するために、 それに合った組織構造やチーム構造にした⽅が良いという考え⽅ とはいえ、 実際はとっても泥臭い!ので活きた知識を得たい! #アーキテクチャと組織_findy

Slide 8

Slide 8 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ1 2019年7月の起業直後にコロナ・・・ 地理的制約 スタートアップの制約 • 新型感染症の流行により オフィスに集まれない。 • 熾烈なエンジニア採用競争。 • 資金調達していないこともあり、知 名度が低い。 • SES事業もしながら新規事業開発 時間的にも地理的にも同期的コミュニケーションをすることに対して 強い制約がある状況にあった #アーキテクチャと組織_findy

Slide 9

Slide 9 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ1 あくまでシンプルに、素早く作ることを意識して技術選定し、設計。 環境:Docker フロント:TypeScript / Vue.js / Nuxt.js / Vuetify API:Go / chi (Web Framework) API定義:OpenAPI DB:PostgreSQL ソース/課題管理:GitHub インフラ:AWS デザインツール: Figma #アーキテクチャと組織_findy

Slide 10

Slide 10 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ1 • SPA+APIのシンプルな構成。 • 認証には Amazon Cognitoを利用。 • JWTを用いてAPIにアクセス。 #アーキテクチャと組織_findy

Slide 11

Slide 11 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ1 OpenAPIを活用した型安全な開発 1. 要件をもとにAPIを定義。 2. OpenAPI generatorを使用し、型の定義がされたコードを自動生成。 3. StoplightのPrismを使用し、 型定義に合ったランダムな値を出力するmockコンテナを生成。 フロント側の実装 API側の実装 型安全かつパラレルに開発を実施 ■開発のフロー #アーキテクチャと組織_findy

Slide 12

Slide 12 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ1 OpenAPIを活用した型安全な開発が中心なチーム設計 フロントエンドチーム バックエンドチーム インフラチーム A P I 定 義 #アーキテクチャと組織_findy

Slide 13

Slide 13 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 二つ目のソフトウェア事業(SaaSus Platform)を開始 基盤とも呼べる SaaSなため、 学習容易性やテスト容易性などよりも 可用性・信頼性・セキュリティなどの技術特性を重視 #アーキテクチャと組織_findy

Slide 14

Slide 14 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 設計のポイント 1. グローバルシェア(エコシステム)を意識した技術選定 2. モジュラモノリスの採用 3. ドッグフーディング 4. テナントごとの動的なインフラ構築 #アーキテクチャと組織_findy

Slide 15

Slide 15 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 テナントデータ はAWSアカウ ントレベルでサ イロ型 顧客は主に APIを利⽤ API層は プール型

Slide 16

Slide 16 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 ソフトウェアアーキテクチャ(アプリケーション視点) クライアント
 Backends For Frontends Auth Module User Module Tenant Module Billing Module ・・・
 APIs Internal API Public API

Slide 17

Slide 17 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 PublicなAPIに関してはドキュメントも公開して円滑な利用が可能な状態に 「開発者に受け入れられる SaaSとは?」 をチームで考えた時に、 ドキュメントが充実していること が重要となった ので、投資をし ています。 https://docs.saasus.io/ja/docs/saasus-platform-document/ #アーキテクチャと組織_findy

Slide 18

Slide 18 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ2 技術特性に合わせてチームを統合/分割 アプリケーション開発チーム SREチーム ソリューションアーキテクトチーム #アーキテクチャと組織_findy

Slide 19

Slide 19 text

© 2025 Anti-Pattern Inc. All rights reserved. フェーズ3 これから来たる諸問題たち・・・ ビジネス上の課題 ● マルチリージョン対応 ● AIなどの「より専門的なもの」に どう向き合うべきかどうか 組織上の課題 ● ギリギリ2ピッツァチームくらいの 人数だけど、これ以上増やすと 分割せざるを得ない 技術も組織も常に変化を求められますね、、、 #アーキテクチャと組織_findy

Slide 20

Slide 20 text

Thank you!!