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
Mackerelのプロダクト開発 - エンジニア中心の開発プロセスで大切にしていること
Search
tatsuru
PRO
February 17, 2022
Technology
0
4.3k
Mackerelのプロダクト開発 - エンジニア中心の開発プロセスで大切にしていること
tatsuru
PRO
February 17, 2022
Tweet
Share
More Decks by tatsuru
See All by tatsuru
プロダクトオーナーとしてSLOに向き合う 〜Mackerelチームの事例〜 / SRE NEXT 2023
tatsuru
PRO
0
1.9k
Mackerel の EventBridge 対応開発秘話
tatsuru
PRO
1
140
技術が実現するイノベーションとWebサービス運用の未来 / Innovation from&for Web Operations
tatsuru
PRO
0
1.4k
成長するためのエンジニア組織 / Hatena Engineering Group 2018
tatsuru
PRO
1
95
はてなのログ運用 これまでとこれから / Hatena Engineer Seminar #6
tatsuru
PRO
7
12k
Mesosを使ったImmutable Infra 管理システムを作ってみた
tatsuru
PRO
8
7.8k
Other Decks in Technology
See All in Technology
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
Platform Engineering for Software Developers and Architects
syntasso
1
510
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
980
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
610
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
3
200
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
169
14k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Six Lessons from altMBA
skipperchong
27
3.5k
Building Applications with DynamoDB
mza
90
6.1k
Unsuck your backbone
ammeep
668
57k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Statistics for Hackers
jakevdp
796
220k
BBQ
matthewcrist
85
9.3k
KATA
mclloyd
29
14k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
How GitHub (no longer) Works
holman
310
140k
Transcript
mackerel.io Mackerelのプロダクト開発 エンジニア中心の開発プロセスで大切にしていること 2022/2/17 Developers Summit 2022 winter 株式会社はてな 渡辺 起
(id:wtatsuru)
自己紹介 • 渡辺 起 ◦ id:wtatsuru @tatsuru ◦ 株式会社はてな •
略歴 ◦ 2011年 インフラエンジニアとして入社 ◦ インフラ基盤チーム責任者を経て ◦ Mackerel プロダクトマネージャー ▪ 兼 チーフエンジニア 2
本日の内容 • Mackerelの紹介 • エンジニアによるエンジニアのためのプロダクト開発 ◦ エンジニアが企画の主役 ◦ ドッグフーディングを大切にする ◦
ユーザーに向き合うために大切にしていること 3
Mackerelの紹介 4
5
6 システムの運用・監視を簡単にはじめられます • 導入はガイドにしたがってコマンドを実行するだけ • エージェントが死活監視とメトリック取得を自動で開始 • 直感的なUIでサービスの状況を可視化 • 監視をはじめる敷居が下がり、チームで取り組めます
7 Mackerelのアーキテクチャ
Mackerelの誕生背景 8
はてなについて • 株式会社はてな • 2001年7月設立 • 従業員数 167人(2021年7月現在) 9
はてなの事業::テクノロジーソリューションサービス 10 個人向けサービスで培った技術・ノウハウを活かし、 サーバー監視、マンガビューワ、共同開発などの企業向けのソリューションやサービスを提供しています Mackerel マンガビューワ 共同開発・協業サービス
はてなのインフラ史とMackerelの誕生背景 • 個人向けのWebサービスを開発してきたはてな • システムも拡大。オンプレミスからクラウドへ 11 はてなブログの下側 より
はてなのインフラ史とMackerelの誕生背景 • インフラ管理のための社内向けサービスとして誕生 ◦ 2000台規模の管理を自動化 ◦ ホスト情報集約、監視・デプロイとAPI連携 12 はてなのインフラ いまむかし はてなのサーバ管理ツールの話
2014年頃の時代背景 • AWSの本格普及期 • DockerとImmutable Infrastracture ◦ サーバーを使い捨てる ◦ 様々なツールの登場
▪ Serf, Docker, Kubernetes, ... ◦ 開発・運用プロセスも変革期 13 2014年のウェブシステムアーキテクチャ
はてなのインフラ史とMackerelの誕生背景 • 社内の運用で培ったノウハウをサービス化 ◦ サービス・ロールにより集合としての管理 ◦ APIによる開発プロセスへの組み込み ◦ 同時にUIのブラッシュアップ 14
Mackerelの誕生背景 • はてながWebサービスを開発し、拡大してきた • インフラの効率的管理のためにシステム化 • ノウハウをサービスとして提供するのがMackerel 15
大事にしていること • 育てる監視 ◦ 簡単に導入、わかりやすいUI。敷居を下げ、チームで取り組む • クラウド時代のプラクティスを提供 ◦ 運用モデル、ノウハウを詰め込む。PDCAのスタート地点。 16
エンジニアによる エンジニアのための プロダクト開発 17
エンジニア向けプロダクトの開発ということは • ユーザー属性が自分達と近い ◦ どういうものが欲しいか、自分に当てはめて考えやすい • ドッグフーディングを重視する ◦ 自分達で使う。はてなの全サービスの運用に利用 18
ドッグフーディングからのフィードバックの一例 • Infrastracture as Code したい ◦ → Mackerel も
Terraform 管理したい! ◦ 独自に作られていたモジュールを移管いただき公式サポート • Mackerel SRE が開発も主導 19
エンジニア中心に企画を育てる • エンジニア自身がドメインエキスパート ◦ 裏方に回りがちなインフラエンジニア、SREが、 Mackerel 開発において企画の主役にもなる • 「これいいね」「こうしたい」を重視する ◦
チーム内での意見交換を活発に ◦ 開発合宿でアイデアを爆発させる 20
企画アンチパターンも...... • 失敗例 ◦ 「これが欲しい」一言だけの GitHub Issue ▪ 盛り上がりが反映されているが... ◦
How に縛られてしまう ▪ Why 7割、How 3割の issue • 完了条件がない ▪ エンジニア出身PdMとしての失敗 • なぜ?何が必要? 21 Why How Definition of Done
アイデアを育てる、道を整備する • 基本に立ち返る ◦ 会話を増やす ◦ バックログのリファインメント ◦ Product Backlog
Item の完了条件を確認 ◦ フローの整備 22 書籍「正しいものを正しくつくる」
技術の進化に従って進化する必要性 • インフラ技術環境は劇的に進化。対応の必要性が高い ◦ 200週連続リリース ▪ 初期段階ではまず機能を揃える。 ◦ クラウド利用の拡大 ▪
Mackerel自体もオンプレミスからクラウドへ。 ◦ コンテナなど新しい技術への対応 23
ユーザー環境 ドッグフーディングの限界 • 社内環境 << ユーザー環境 24 社内環境
ドッグフーディングの限界 • 社内環境 << ユーザー環境 • 必要とされる技術を見極めるには別の理解が必要 ◦ Ansible/Chef, Terraform/Cloudformation,
Kubernetes/ECS, etc. • 幅広い環境をサポートすることになる ◦ OSS製品、パッケージに同梱するプラグイン ◦ エンジニアには幅広くキャッチアップすることになる 25
ユーザーの声を取り入れやすくするために • ユーザーと距離を近づける ◦ 「開発者に会いに行けるサービス」 ◦ 直接のヒアリング以外にも距離を縮める試み ▪ Mackerel Meetup、ユーザーグループ、アンバサダー
26
技術に対して誠実に、オープンに • エンジニア向けサービスだからこそ技術に誠実に • 情報はなるべくオープンにしていく ◦ 内部の構成は公開していく ◦ 障害報告、メンテナンスの背景 27
CRE (Customer Reliability Engineer) • CRE = 顧客信頼性エンジニア ◦ ユーザーの課題解決をミッションとするエンジニア
• ユーザーの自走を助ける、必要な支援を提供 28
課題を蓄積し、フィードバックする • 以前の悩み:課題がIssueとして大量に上がる ◦ 全ては対応できないのでどんどん閉じる • CREが要望フィードバックの場を設計、提供 29 ユーザー課題を解決しプロダクトを成功に導く方法とCREの役割
課題について議論する • CREと開発チームで課題について議論の場を持つ • 運用・監視について本気で考える機会になる ◦ アラート設計と管理方法、こんなシステムの監視はどうあ るべきか... ◦ PdMではなく、いちエンジニアとしても貴重な体験
30
大事にしたいことに立ち返る なんでも対応したい、にならないように • 育てる監視 ◦ 簡単に導入、わかりやすいUI。敷居を下げ、チームで取り組む • クラウド時代のプラクティスを提供 ◦ 運用モデル、ノウハウを詰め込む。PDCAのスタート地点。
31
最近の取り組み事例:SLI/SLO • SRE (Site Reliability Engineering) の取り組み ◦ SLO (Service
Level Objective) の運用 ◦ 計測だけでなく組織での運用まで必要になる 32 Developers Summit 2021 Summer での発表 ダッシュボードサンプル(数字は仮のもの)
最近の取り組み事例:SLI/SLO • ユーザーの技術ブログでの公開を機に • Mackerelでの構成例紹介、利用ツールも提供 33 MackerelでSLI/SLO運用をする際に役立つ機能やツールの紹介
まとめ 34
本日の内容 • Mackerelとその誕生背景の紹介 • エンジニアによるエンジニアのためのプロダクト開発 ◦ エンジニアが企画の主役 ◦ ドッグフーディングを大切にする文化 ◦
技術に対して誠実に ◦ 顧客中心文化を作るCREの取り組み 35
以下、宣伝コーナー 36
Mackerel を実際に使ってみたいという方は Mackerelエバンジェリスト Soudai さんによる入門セミナー https://ja.mackerel.io/info/event/mackerel-seminar20220224 37
以上です エンジニア職(特にCRE)積極採用中! https://hatenacorp.jp/recruit/engineer もっと話を聞きたい方は Meety もどうぞ → 38