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.7k
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
4k
値オブジェクトでアプリケーションコードを改変しよう
tkitsunai
0
140
Go活
tkitsunai
0
150
hbstudy#82 SRE大全 ソフトウェアエンジニアリングによるToil削減
tkitsunai
0
2.7k
Other Decks in Technology
See All in Technology
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
9
3.4k
Progressive Deliveryで支える!スケールする衛星コンステレーションの地上システム運用 / Ground Station Operation for Scalable Satellite Constellation by Progressive Delivery
iselegant
1
120
What's the recommended Flutter architecture
aakira
3
1.7k
手を動かしながら学ぶデータモデリング - 論理設計から物理設計まで / Data modeling
soudai
PRO
24
5.6k
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
0
170
内部品質・フロー効率・コミュニケーションコストを悪化させ現場を苦しめかねない16の組織設計アンチパターン[超簡易版] / 16 Organization Design Anti-Patterns for Software Development
mtx2s
2
1.5k
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
720
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
8
1.3k
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
900
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
110
AIでテストプロセスを自動化しよう251113.pdf
sakatakazunori
0
140
X-Ray SDKとDaemonのサポート終了と移⾏ガイド
o11yfes2023
0
110
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Speed Design
sergeychernyshev
32
1.2k
How to train your dragon (web standard)
notwaldorf
97
6.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
The Cult of Friendly URLs
andyhume
79
6.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
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!