$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
trocco® にチーム機能を作った話
Search
yosoka
June 06, 2023
Programming
2
1.4k
trocco® にチーム機能を作った話
yosoka
June 06, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
マスタデータ問題、マイクロサービスでどう解くか
kts
0
110
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
0
120
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
520
JETLS.jl ─ A New Language Server for Julia
abap34
2
430
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
3.2k
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
390
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
270
dotfiles 式年遷宮 令和最新版
masawada
1
810
Cell-Based Architecture
larchanjo
0
140
AIコーディングエージェント(skywork)
kondai24
0
190
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
130
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
0
280
Featured
See All Featured
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
240
Highjacked: Video Game Concept Design
rkendrick25
PRO
0
240
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.4k
The agentic SEO stack - context over prompts
schlessera
0
550
KATA
mclloyd
PRO
33
15k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
130
Amusing Abliteration
ianozsvald
0
64
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
WCS-LA-2024
lcolladotor
0
380
Skip the Path - Find Your Career Trail
mkilby
0
23
RailsConf 2023
tenderlove
30
1.3k
Transcript
trocco®にチーム機能を作った話 2023.6 primeNumber Inc.
©primeNumber Inc. 2 yosoka WHO AM I? 株式会社primeNumber リードエンジニア 2022/03
入社 1 2
©primeNumber Inc. 3 • チーム単位でのロールベースアクセス制御を可能とする機能(有償オプション ◦ アカウント内でETL設定などのリソースをユーザー間で共有する機能 • チーム機能を利用していない場合、各設定は作成者のみ閲覧可能 •
契約オプション No.1 チーム機能とは?
©primeNumber Inc. 4 チーム機能ができる前 「グループ機能」という名でユーザー間共有のための機能は存在していた 1. ユーザーをグループに所属させる 2. 設定をグループに共有する 3.
設定をみんなで使える!
©primeNumber Inc. 5 チーム機能ができる前 ユーザーに2種類の権限を設定できる • admin:共有されたリソースに何でもできる • member:閲覧・実行のみ(編集不可)
©primeNumber Inc. 6 シンプルなのは良いことだが… 権限がざっくりしすぎていて細やかな制御ができない お客様の要望 • 参照はできるが実行・編集ができないように共有したい • 接続情報などセキュアなものは別グループで管理したい
• 複数グループで共有できるようにしたい グループ機能の問題
©primeNumber Inc. 7 2022年4月某日 ???「岡さんも入社1ヶ月経ったし、そろそろ大きめのタスクやりますか?」 岡「よくわからんけどやります」 そこで… グループ機能 リニューアルPRJ
©primeNumber Inc. 8 • AWSのようなポリシーJSONを作れるようにするか…? → 流石にユーザーも開発もたいへんだからボツ • グループのロールを増やすか…? →
複数グループへの共有などができず要望を満たせないのでボツ 考えたこと
©primeNumber Inc. 9 ロールベースの制御が必要かつ、複数グループで共有したい Google Drive の共有設定が似てるかも? → いい感じにいけそう! 考えたこと
©primeNumber Inc. 10 グループ機能では人とリソースが1つの箱に入っているイメージ 人だけの箱とリソースだけの箱に分けて、間をロールで繋げばよさそう 人とリソースをそれぞれまとめる チーム = 人だけの箱 リソースグループ
= リソースだけの箱
©primeNumber Inc. 11 チーム
©primeNumber Inc. 12 リソースグループ
©primeNumber Inc. 13 4種類の権限をサポート • 管理者:なんでもできる • 編集者:リソースの編集・実行ができる (リソースグループ自体に対する変更は不可) •
運用者:リソースの使用・実行のみできる • 閲覧者:リソースの閲覧のみできる ロール
©primeNumber Inc. 14 グループ機能からチーム機能への変換 お客様の使用状況をそのまま再現する必要がある 変換するためのスクリプトを作り、個社別にメンテナンス時間を頂いた
©primeNumber Inc. 15 • 正社員はなんでもできる、業務委託の方は実行権限のみにしたい • 他事業部は参考のため閲覧だけしたい ユースケース1 正社員チーム Aさん
業務委託チーム Bさん Cさん リソースグループ ETL設定1 ETL設定2 閲覧者 他事業部 Dさん 運用者 管理者
©primeNumber Inc. 16 • セキュア情報は使用のみで編集してほしくない • 転送設定などは編集してほしい ユースケース2 管理者チーム Aさん
メンバーチーム Aさん Bさん Cさん 機密リソースグループ セキュア情報1 セキュア情報2 リソースグループ ETL設定1 ETL設定2 管理者 管理者 運用者 編集者
©primeNumber Inc. 17 利用状況 管理者 運用者 編集者 閲覧者 とりあえず管理者にする人は多そう? 予想以上に運用者が利用されている
©primeNumber Inc. 18 • 影響範囲が広すぎる ◦ 入社1ヶ月で受けるタスクじゃない • お客様のマイグレーション ◦
全社同時に対応はできず、切り替えフラグを使いながら実施 ◦ ミスが許されないのでしっかり検算しながらやった ◦ 営業さん・CSさんありがとう🥰 大変だったこと
©primeNumber Inc. 19 • ワークフローの権限問題 ◦ ワークフロー中のタスクの権限が変わったら保存できなくなる ◦ 現状「リソースの作成者に問い合わせください」と表示するしかない イケてないところ1
©primeNumber Inc. 20 • 計算量が増大 ◦ グループ機能では計算量は線形だった (ユーザーがリソースと同じグループかどうか) ◦ ロール
* チームの計算量になった (各ロールのチームにユーザーが含まれるか) ▪ これにチェックしたいリソース数が掛けられる イケてないところ2
©primeNumber Inc. 21 • カスタムロールの対応 ◦ お客様が自由なロールを作れる • スーパー管理者の要望 ◦
すべてのリソースを管理したい ◦ 権限を付け替えたい • Google Driveのようなフォルダ管理 やれなかったこと(のびしろ)
©primeNumber Inc. 22 まとめ • グループ機能をグレードアップしてチーム機能としてリニューアルした • ある程度の要望を満たせたのでここからブラッシュアップしたい 💪 •
天才になった
ご清聴ありがとうございました