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
Software Development in UZABASE SRE
Search
tkitsunai
January 18, 2018
Technology
0
3.5k
Software Development in UZABASE SRE
Closedな勉強会 SRE Lounge#1で発表した内容です。
tkitsunai
January 18, 2018
Tweet
Share
More Decks by tkitsunai
See All by tkitsunai
TDD実践を経て変わったこと
tkitsunai
6
3.9k
値オブジェクトでアプリケーションコードを改変しよう
tkitsunai
0
120
Go活
tkitsunai
0
140
hbstudy#82 SRE大全 ソフトウェアエンジニアリングによるToil削減
tkitsunai
0
2.6k
Other Decks in Technology
See All in Technology
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
プロセス改善による品質向上事例
tomasagi
2
2.6k
転生CISOサバイバル・ガイド / CISO Career Transition Survival Guide
kanny
3
1k
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
RSNA2024振り返り
nanachi
0
590
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
630
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
150
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.7k
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
130
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Fireside Chat
paigeccino
34
3.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Bash Introduction
62gerente
611
210k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Music & Morning Musume
bryan
46
6.3k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Transcript
SRE Lounge #1 Software Development in UZABASE SRE
• 橘内 孝幸 (Takayuki Kitsunai) • UZABASE SRE Team ソフトウェアエンジニア
◦ Product Development Team -> SRE Team • 主要言語:Java, Golang, JS 自己紹介
Mision 経済情報で、世界をかえる Business Intelligence to Change Your World 私たちは、世界中で愛される経済情報インフラをつくります。 あらゆる経済情報を人とテクノロジーの力で整理・分析・創出し、
ビジネスパーソンの生産性を高め、創造性を解放します。 私たちは経済情報を通じて世界中の意思決定を支え、世界をかえます。
Our Services B2Bマーケティングエンジン ソーシャル経済ニュース 企業・業界情報プラットフォーム 日本最大級のベンチャーデータベース
SPEEDAは、ビジネスパーソンの情報収集・分析に おける課題を解決する最先端のプラットフォームで す。 世界中の企業情報、業界レポート、市場データ、 ニュース、統計、M&Aなどあらゆるビジネス情報を カバーしています。
UZABASE SREの設立 SPEEDA DB Batch Dev Infra 従来の体制 SRE (
Dev + Infra ) SRE設立後の体制 SPEEDA DB Batch
UZABASE SREの設立 従来の体制 - システムの安定稼働をミッションに開発運用メンバーとインフラメンバーで SPEEDAを運用(守りの チーム) - 手運用が爆発し、自動化に中々着手できない -
コードレベルの改善まで手が出せない SRE設立後の体制 - システムの信頼性向上をミッションに SREを設立(攻めのチームへ) - オペレーションの自動化の促進 - インフラと開発の視点での改善活動の促進
• ソフトウェア開発 ◦ 社内ツール、ジョブ運用/構築、本番バグ対応 • 物理インフラ管理 ◦ SaaSサービス「SPEEDA」のオンプレ • ネットワーク管理
◦ 社内ネットワーク、各サービスネットワーク • AWS/GCP管理 ◦ コーポレートサイト、NewsPicks連携 • 社内インフラ管理 ◦ 入社時PCセットアップ、アカウント作成、電子錠 UZABASEでのSREの役割
• ソフトウェア開発 ◦ 社内ツール、ジョブ運用/構築、本番バグ対応 • 物理インフラ管理 ◦ SaaSサービス「SPEEDA」のオンプレ • ネットワーク管理
◦ 社内ネットワーク、各サービスネットワーク • AWS/GCP管理 ◦ コーポレートサイト、NewsPicks連携 • 社内インフラ管理 ◦ 入社時PCセットアップ、アカウント作成、電子錠 今回話す内容
• 1. ソフトウェア開発プロジェクト • 2. チーム開発の取り組み事例 • 3. 今後のSREにおけるソフトウェア開発 ユーザベースSREでのソフトウェア開発
• 年間計画、四半期計画をチームで作る ◦ 自走/自立する組織を目指し、自分たちで考える土壌 • ソフトウェアエンジニア+インフラエンジニアのMIXで作る ◦ キャリアの多様性 ◦ インフラエンジニアからソフトウェアエンジニアへの変化/転向
• スキルではなく本人の意思でアサインする ◦ アプリケーション開発をしたいインフラエンジニアが、開発機会を得る • レガシーシステムの置き換え ◦ 技術的な挑戦要素、マイクロサービス化 • 自動化推進 ◦ レガシーな手動運用の自動化による、トイル排除 1. ソフトウェア開発プロジェクト
• 「SPEEDA」における要「データ」運用 • 自動化課題 ◦ 手順書運用 -> DevフレンドリーのAPI, Client開発 ◦
マニュアル運用 -> Workflow / Scheduler system 開発/導入へ レガシーな手動運用の自動化によるトイル排除 Data Supplier DB SPEEDA DB 手動処理 バッチ処理 ・Mail ・FTP ・ZIP ・DVD ロード バッチ 手動 多様な配信、多様な形式、多様な内容 データ精度担保、加工
• 守破離 ◦ チームのフェーズとして、守破離の「守」を徹底する ◦ アジャイル開発技法 • 個人開発からチーム開発へ ◦ ペアプログラミング、モブプログラミングの導入
◦ 元Productチームのソフトウェアエンジニアによる、サービスのドメイン知識 ◦ 元Infraチームのインフラエンジニアによる、ミドルウェア/ネットワーク知識 • ソフトウェア開発手法 ◦ SREの立場でマイクロサービスを作る ◦ XP、DDD、TDD、クリーンアーキテクチャの技法を学ぶ ◦ SREと親和性の高いGolangの積極採用 2. チーム開発の取り組み
• モニタリングによるデータドリブン開発 ◦ ✕ システムリソースのボトルネックから信頼性を高める ◦ ◯ サービスが顧客に届けたい価値を最大化するために顧客の理想から始める ▪ データアシュアランス
▪ 配信データのリードタイム • キャリア多様性 ◦ 「フルスタック」エンジニアの育成 ◦ キャリアを自分で選択する 3. 今後のSREにおけるソフトウェア開発
Any questions? Thank you for listening!