Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LADRのすすめ&先行技術検証PRJの紹介 / Introducing-LADR-and-Te...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
moomoo-ya
August 25, 2020
Programming
5
2.8k
LADRのすすめ&先行技術検証PRJの紹介 / Introducing-LADR-and-Technology-verification
2020.08.25
RAKUS Meetup 8月
LADRのすすめ&先行技術検証PRJの紹介
moomoo-ya
August 25, 2020
Tweet
Share
More Decks by moomoo-ya
See All by moomoo-ya
サービスを陳腐化させない組織だった技術刷新 / Technology Renewal Initiatives
moomooya
0
1.5k
はじめてのオンラインイベント配信 with COVID-19 バグ修正版 / Online-Event-bugfixed
moomooya
0
140
一番安い子だーれだ?~黒字化のための無慈悲なタスク配分~ / Distribute tasks
moomooya
1
3.3k
はじめてのオンラインイベント配信 with COVID-19 バグあり版 / Online-Event-includes-bug
moomooya
0
870
やはり俺のLT登壇はまちがっている。 / my-lightning-talk-is-wrong-as-i-expected
moomooya
4
2.5k
Gatsby.jsで.md/.adocが混在できるテンプレートを作ったときの苦しみ / Pain-to-create-gatsby-template-that-supports-markdown-and-asciidoc
moomooya
0
670
技術書へのアクセスを劇的に向上させた話 / oreilly-safari-and-acm-membership
moomooya
2
7.7k
モノリスにおけるビジネスロジックの設計 ~アグリゲートパターン~ / aggregate-pattern-for-domain-modeling-on-monolithic
moomooya
2
1.7k
オブジェクト指向を学んでから20年間でモヤったこと / Object-Oriented-groomy-in-20-years
moomooya
0
560
Other Decks in Programming
See All in Programming
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
20
10k
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.4k
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
300
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
350
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
140
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
160
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.6k
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
2
180
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
190
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
680
Head of Engineeringが現場で回した生産性向上施策 2025→2026
gessy0129
0
210
CSC307 Lecture 14
javiergs
PRO
0
450
Featured
See All Featured
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
110
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
300
YesSQL, Process and Tooling at Scale
rocio
174
15k
Discover your Explorer Soul
emna__ayadi
2
1.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
59
50k
Accessibility Awareness
sabderemane
0
72
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.1k
The browser strikes back
jonoalderson
0
760
Un-Boring Meetings
codingconduct
0
220
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Navigating Weather and Climate Data
rabernat
0
130
Transcript
#RAKUSMeetup 新サービス立ち上げ時の技術 選定と、サービス立ち上げに 向けたラクスの取り組み(仮) 2020.8.25 RAKUS Meetup Aug. Isamu Suzuki
#RAKUSMeetup 新サービス立ち上げ時の技術 選定と、サービス立ち上げに 向けたラクスの取り組み(仮) 2020.8.25 RAKUS Meetup Aug. Isamu Suzuki
長い
#RAKUSMeetup LADRのすすめ& 先行技術検証PRJの紹介 2020.8.25 RAKUS Meetup Aug. Isamu Suzuki
#RAKUSMeetup 鈴木 勇 / Isamu Suzuki • 2013年にラクスへ中途入社 • ガンプラ部
部長 • 先行技術検証とかアーキテクチャ選 定とか技術イベント司会とか • 上流から下流まで経験済み PjM含むフルスタック系 • C/Java → JavaScript → Python/TypeScrpt • 自宅にNuro光開通した • 約10年ぶりに自転車買った • Fat Project作者
#RAKUSMeetup 今日話すこと • アーキテクチャ選定時にやると少し幸せになれること • 新規サービス立ち上げに向けてどんな活動をしているか
#RAKUSMeetup 新サービスの アーキテクチャ選定
#RAKUSMeetup 2018年 楽楽労務立ち上げ
#RAKUSMeetup
#RAKUSMeetup このときの社内の様子 • 東京拠点の開発言語は主にJava ※ • FWはSeasar2 ◦ 新しめのサービスでも 2012年以前に開発開始
• モノリシックアーキテクチャ • インフラはオンプレミス ↑こうしている理由は長くいる人が 経験で何となく把握している感じ ※大阪では主にPHPを使っています
#RAKUSMeetup なんにせよ
#RAKUSMeetup 新しい技術を 導入したりしなかったりすることになる 新しい技術を 導入したりしなかったりすることになる
#RAKUSMeetup 「導入しなかった」記録を残したい • 「導入したもの」は後に残るので記録しなくても残りがち • 「導入しなかったもの」は後から見るとわからないことが多い ◦ 検討はしたのか? ◦ 検討の上でなぜ導入しなかったのか?
◦ 今後も導入すべきではないと判断したのか、その時点の事情なのか
#RAKUSMeetup LADR Lightweight Architecture Decision Records
#RAKUSMeetup • ADRは米Sabreの Michael Nygard氏発案 • ThoughtWorks社の Technology Radarで紹介 •
技術要素を4段階評価 ◦ Hold:慎重に ◦ Assess:よく調査して ◦ Trial:挑戦の価値あり ◦ Adopt:採用を推奨 https://www.thoughtworks.com/radar/techniques/lightweight-architecture-decision-records
#RAKUSMeetup • 2017年11月にAdoptに昇格 • 要約すると ◦ 重要なアーキテクチャーの意思決定を、 その文脈や結果とともに記録するための テクニック ◦
WikiやWebサイトではなくコード管理に 含むことを推奨 ◦ ほとんどのプロジェクトで採用しない理由 がない https://www.thoughtworks.com/radar/techniques/lightweight-architecture-decision-records
#RAKUSMeetup Lightweightなのでやることはかんたん • ADRのフォーマットを決める • アーキテクチャ選定の意思決定 • フォーマットに従って記録 • ソース管理(gitなど)に格納
#RAKUSMeetup . . .
#RAKUSMeetup 要領わかんないし、フォーマット決めるのが面倒
#RAKUSMeetup 公開されているテンプレート • joelparkerhenderson / architecture_decision_record • deshpandetanmay / lightweight-architecture-decision-records
• peter-evans / lightweight-architecture-decision-records • jgreeners / LADR ※英語のものしか(たぶん)ないので 頑張って読みましょう https://github.com/peter-evans/lightweight-architecture-decision-records
#RAKUSMeetup . . .
#RAKUSMeetup 何を記録すればよいのか ニュアンスがわかりにくい
#RAKUSMeetup ご用意いたしました
#RAKUSMeetup moomoo-ya / LADR-template • 完全日本語版 • 何を書くべきなのかを記載 • もちろん各自カスタムしていくと
なお良きかと • 使いやすいMITライセンス • https://github.com/moomoo-y a/LADR-template
#RAKUSMeetup
#RAKUSMeetup で、役に立つの?
#RAKUSMeetup 2018年から 1年半ほど経った 2020年1月
#RAKUSMeetup グループ企業のアーキテクチャ選定 • サービスのソフトウェアリプレイス的な計画 • 「マイクロサービスにするべきかどうか」 「コンテナの利用はどうか」 ◦ 聞き覚えのある検討項目
#RAKUSMeetup やってました
#RAKUSMeetup ※注意※ 今回のケース) 1年半経過 → 判断をそのまま流用していけない 「議論のスタート地点を前にずらす」イメージ この手の議論は想像以上に時間がかかるので 少しでもショートカットできるのは嬉しい
#RAKUSMeetup LADR の Pros / Cons Pros • 選定理由が記録に残る ◦
通常1年後には忘れている • 相談されたときに楽 ◦ 「あそこにあるよ」で済む • 新規メンバーの疑問解消 • 軽量だから更新が続く • 経緯を知った上で判断が出来る Cons • 記録するのがちょっと手間 ◦ しかし大した手間ではない • “LADR”が発音しにくい ◦ 今日も何度も噛んでます
#RAKUSMeetup 新サービス立ち上げに 向けた日々の取り組み
#RAKUSMeetup そもそも 新サービスの立ち上げは忙しい
#RAKUSMeetup 理想と現実 流行りのフレームワーク 話題の言語 最新のツール イケてる設計手法 改善された開発プロセス いつから マネタイズ できますか?
#RAKUSMeetup 新サービスの立ち上げは忙しい • リリースするまではコストにしかならない • 最低限の機能(MVP)でいち早いリリースが求められる • 「ノウハウのある技術で」となりがち • そもそも技術面より業務要件まとめる方が困難&優先
#RAKUSMeetup 開発の未来に先手をうつプロジェクト 2017年2月ごろから かいはつのみらいにせんてをうつ 「開発の未来に先手をうつ」かみせんプロジェクト としてプロジェクトが始動(命名は後日つけました)
#RAKUSMeetup 何やるの? • 今後使う見込みの技術を先行検証するプロジェクト • サービス横断的に選抜した4名でスタート ◦ 途中で1名追加参加 • 半期ごとに1テーマ、毎週5時間
• サービスへの導入を想定して検証 • ラクスは複数サービスあるので個別にやるとコスパが悪かった
#RAKUSMeetup 発足の経緯 技術の更新 やらんとあかんよな やりましょう 利益も あがってるしね 現場は漠然とした 不安感は持っていた 経営層からの
オーダー
#RAKUSMeetup 3年経って……順調に拡大中 • 「かみせんプロジェクト」→「技術推進プロジェクト」に改名 • プロジェクトを推進する担当部署が設立 • 参加メンバーも10名を超えました • テーマも複数テーマを並行して検証を進めています
#RAKUSMeetup 最近の成果は テックブログで公 開中 https://tech-blog.rakus.co.jp/archive/category/かみせん 『マイクロサービスアーキテクチャにおける サービス分割の難しさ』 『失敗しない機械学習プロジェクトの進め 方入門』
#RAKUSMeetup 宣伝
#RAKUSMeetup 明日はフロントエンドLT会 司会します Gatsby.jsテーマに ついて話します
#RAKUSMeetup Thank ☺ you • アーキテクチャ選定時は記録を残そう ◦ LADRはいいぞ ◦ 割とすぐに活用される
• 新サービス立ち上げに向けて備えをしよう ◦ 見えてからでは間に合わない(ことが多い)