開発メンバーが語るFindy Conferenceの裏側とこれから
by
sontixyou
×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
© Findy Inc. 2026.01.22 Findy Tech Talk #01 Findy Conferenceを⽀える 技術基盤の裏側 1 ファインディ株式会社 マルチスタックエンジニア ⻄村 憲悟 @sontixyou #Findy_TechTalk
Slide 2
Slide 2 text
© Findy Inc. ⾃⼰紹介 2 ⻄村 憲悟 [にしむら けんご] マルチスタックエンジニア @sontixyou / そんちょ #Findy_TechTalk
Slide 3
Slide 3 text
© Findy Inc. ● Findy Conferenceとは? ● ネットワーク不安定でも受付を⽌めない⽅法は? ● マルチクライアントGraphQL API設計 ● ユーザーの権限管理をどうやる? 今⽇話すこと 3 #Findy_TechTalk
Slide 4
Slide 4 text
© Findy Inc. 今⽇話さないこと 4 ● Findy Conferenceの技術的な伸びしろ ● アイルランドのビールが熱い🍺 #Findy_TechTalk
Slide 5
Slide 5 text
© Findy Inc. Findy Conferenceとは 5 #Findy_TechTalk
Slide 6
Slide 6 text
© Findy Inc. 6 Findy Conference 技術スタック 参加者向け画⾯ 主催者向け画⾯ スポンサー向け画⾯ #Findy_TechTalk
Slide 7
Slide 7 text
© Findy Inc. カンファレンス特有の課題 7 ● ネットワーク不安定でのオフライン受付機能 ● ユーザーの種別に対応するGraphQL API ● ロールによる権限管理 #Findy_TechTalk
Slide 8
Slide 8 text
© Findy Inc. 受付機能とは 8 #Findy_TechTalk
Slide 9
Slide 9 text
© Findy Inc. ネットワーク不調による影響 9 ● カンファレンス運営陣 ○ ⼊場数を正確にカウントできない ● 受付オペレーション ○ 受付が混雑し、参加者を待たせてしまう #Findy_TechTalk
Slide 10
Slide 10 text
© Findy Inc. 10 navigator.onLine ブラウザーのオンライ ン状態を返す ⼀時的にLocalStorage に受付済みデータを貯 める
Slide 11
Slide 11 text
© Findy Inc. カンファレンス特有の課題 11 ● ネットワーク不安定でのオフライン受付機能 ● ユーザーの種別に対応するGraphQL API設計 ● ロールによる権限管理 #Findy_TechTalk
Slide 12
Slide 12 text
© Findy Inc. 課題2 - ユーザーの複数種別への対応 12 #Findy_TechTalk
Slide 13
Slide 13 text
© Findy Inc. ● ユーザーの種別によってログインCookieが異なる ● 主催者画⾯には権限管理が必要 課題2 - ユーザーの複数種別への考慮 13 #Findy_TechTalk
Slide 14
Slide 14 text
© Findy Inc. 課題2 - ユーザーの複数種別への対応 14 観点 単⼀スキーマ 複数スキーマ 保守性 ◯ △ 運⽤⾯ △ ◯ 権限管理 ✘ ◯ #Findy_TechTalk
Slide 15
Slide 15 text
© Findy Inc. 課題2 - ユーザーの複数種別への対応 15 観点 単⼀スキーマ 複数スキーマ 保守性 ◯ △ 運⽤⾯ △ ◯ 権限管理 ✘ ◯ #Findy_TechTalk
Slide 16
Slide 16 text
© Findy Inc. 解決策 - マルチクライアントGraphQL API 16 #Findy_TechTalk
Slide 17
Slide 17 text
© Findy Inc. カンファレンス特有の3つの課題 17 ● ネットワーク不安定でのオフライン受付機能 ● ユーザーの種別に対応するGraphQL API設計 ● ロールによる権限管理 #Findy_TechTalk
Slide 18
Slide 18 text
© Findy Inc. ● 主催者 ● 運営コアメンバー ● 当⽇の会場運営スタッフ ● 外部協⼒会社 主催者側の画⾯を使う様々なユーザー 18 #Findy_TechTalk
Slide 19
Slide 19 text
© Findy Inc. ● 主催者 & 運営コアメンバー ○ 売上情報や参加者情報を知りたい ● 当⽇の会場運営スタッフ & 外部協⼒会社 ○ 登壇者情報だけを知りたい 主催者側の画⾯を使う様々なユーザー 19 #Findy_TechTalk
Slide 20
Slide 20 text
© Findy Inc. 20
Slide 21
Slide 21 text
© Findy Inc. GraphQLディレクティブ 21 https://the-guild.dev/graphql/tools/docs/schema-directives コレ!! #Findy_TechTalk
Slide 22
Slide 22 text
© Findy Inc. GraphQLディレクティブ 22 ⽤途 例 認可 @auth バリデーション @length データ変換 @uppercase #Findy_TechTalk
Slide 23
Slide 23 text
© Findy Inc. 解決策 GraphQLディレクティブを使った権限管理 23
Slide 24
Slide 24 text
© Findy Inc. 解決策 GraphQLディレクティブを使った権限管理 24
Slide 25
Slide 25 text
© Findy Inc. まとめ 25 ● ネットワークなしの受付機能: ネットワーク不安定 でも受付を⽌めない ● マルチクライアントGraphQL API設計 ● GraphQLディレクティブを活⽤した権限管理