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
140
hbstudy#82 SRE大全 ソフトウェアエンジニアリングによるToil削減
tkitsunai
0
2.6k
Other Decks in Technology
See All in Technology
Gaze-LLE: Gaze Target Estimation via Large-Scale Learned Encoders
kzykmyzw
0
320
トヨタ生産方式(TPS)入門
recruitengineers
PRO
3
240
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
3
220
開発と脆弱性と脆弱性診断についての話
su3158
1
1.1k
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual Localization
takmin
0
430
広島銀行におけるAWS活用の取り組みについて
masakimori
0
140
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
140
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
530
KiroでGameDay開催してみよう(準備編)
yuuuuuuu168
1
130
AIドリブンのソフトウェア開発 - うまいやり方とまずいやり方
okdt
PRO
9
630
アジャイルテストで高品質のスプリントレビューを
takesection
0
120
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
290
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Statistics for Hackers
jakevdp
799
220k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Facilitating Awesome Meetings
lara
55
6.5k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
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!