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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tkitsunai
January 18, 2018
Technology
3.9k
0
Share
Software Development in UZABASE SRE
Closedな勉強会 SRE Lounge#1で発表した内容です。
tkitsunai
January 18, 2018
More Decks by tkitsunai
See All by tkitsunai
TDD実践を経て変わったこと
tkitsunai
6
4.1k
値オブジェクトでアプリケーションコードを改変しよう
tkitsunai
0
170
Go活
tkitsunai
0
160
hbstudy#82 SRE大全 ソフトウェアエンジニアリングによるToil削減
tkitsunai
0
2.8k
Other Decks in Technology
See All in Technology
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
270
oracle-to-databricks-migration-with-llm-and-dbt
casek
1
380
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
640
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
770
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
160
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.7k
テストコードのないプロジェクトにテストを根付かせる
tttol
0
230
探して_入れて_作って_使う_Agent_Skills___LT.pdf
peintangos
2
110
Cloud Run のアップデート 触ってみる&紹介
gre212
0
270
APIテストとは?
nagix
0
160
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
130
基礎から解説!Icebergで紐解くSnowflake×Databricks連携の現在地
cm_yasuhara
0
410
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
190
Documentation Writing (for coders)
carmenintech
77
5.4k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
340
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
160
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
370
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Why Our Code Smells
bkeepers
PRO
340
58k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Exploring anti-patterns in Rails
aemeredith
3
380
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!