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
困難を「一般解」で解く
Search
FUJIWARA Shunichiro
March 05, 2025
Technology
10
3.4k
困難を「一般解」で解く
https://findy.connpass.com/event/345202/
Findy 技術参謀たちの戦略図 発表資料です
FUJIWARA Shunichiro
March 05, 2025
Tweet
Share
More Decks by FUJIWARA Shunichiro
See All by FUJIWARA Shunichiro
k6による負荷試験 入門から日常的な実践まで/Re:TechTalk #01
fujiwara3
1
23
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
11k
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
870
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
10
1.3k
「最高のチューニング」をしないために / hack@delta 24.10
fujiwara3
21
4.3k
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
10
5.9k
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
2
1.7k
awslim - Goで実装された高速なAWS CLIの代替品を作った/layerx.go#1
fujiwara3
6
830
AWS CLIの起動が重くてつらいので aws-sdk-client-go を書いた / kamakura.go#6
fujiwara3
7
12k
Other Decks in Technology
See All in Technology
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
960
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
20k
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
450
チームビルディング「脅威モデリング」ワークショップ
koheiyoshikawa
0
150
20250328_RubyKaigiで出会い鯛_____RubyKaigiから始まったはじめてのOSSコントリビュート.pdf
mterada1228
0
180
モンテカルロ木探索のパフォーマンスを予測する Kaggleコンペ解説 〜生成AIによる未知のゲーム生成〜
rist
4
1.1k
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
110
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
210
Explainable Software Engineering in the Public Sector
avandeursen
0
370
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
300
React Server Componentは 何を解決し何を解決しないのか / What do React Server Components solve, and what do they not solve?
kaminashi
6
1.3k
Medmain FACTBOOK
akinaootani
0
120
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
KATA
mclloyd
29
14k
Facilitating Awesome Meetings
lara
53
6.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
28
1.6k
RailsConf 2023
tenderlove
29
1k
Building a Modern Day E-commerce SEO Strategy
aleyda
39
7.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
500
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Transcript
困難を「一般解」で解く 2025-03-05 技術参謀たちの戦略図 〜リーダーシップという選択肢と彼らが選んだ企業の魅力〜 藤原俊一郎 @fujiwara
自己紹介 @fujiwara (X, GitHub, Bluesky) さくらインターネット クラウド事業本部(2025/02〜) 面白法人カヤック(〜2025/01) ISUCON 優勝4回
/ 運営(出題)4回 github.com/kayac/ecspresso github.com/fujiwara/lambroll
Staff Engineerの4類型 Tech Lead チームを導く Architect 設計で方向性を示す Solver 困難な問題を解決する Right
hand 経営陣と技術陣をつなぐ
Staff Engineerの4類型 Tech Lead Architect Solver Right hand 自分はどれか強いていえば、Solver (もちろん全員被る領域はある)
Solver = 困難な問題を解決する、火消し 困難な問題とは例えば… パフォーマンスチューニング 障害対応 セキュリティインシデント対応 コンポーネントの適切な使い方をする これが実は意外と難しい 運用における諸問題
(ログ、監視、アラート、デプロイ、etc) エンジニアリングや運用における困難 = 要因が単純ではない、複合的
やってきたこと 現場で出会った困難な問題を解決する 単にその場で解決するだけではなく、レバレッジの効く形で解決するのがベター レバレッジの効く形とは… そのプロジェクト/プロダクトに閉じていない解決法を見つける それを実装 / 導入 / 啓蒙する
→ 他のプロジェクト/プロダクトにも効く(みんなうれしい)
実例1: ログをAmazon Redshiftに取り込む 2015年ごろ fluent-plugin-redshift を使っていて運用が辛かった (最初に入れた Lobi というプロダクトで自分が…) fujiwara/Rin
( 26) で置き換え → 他のタイトルやログ基盤にも導入
実例2: オートスケール環境でのスケーラブルなデプロイ 2014年ごろ (Lobiで) EC2でオートスケールがしたかったが、rsyncベースのデプロイでは困難 fujiwara/stretcher ( 249)を開発 → 他タイトルにも適用できた。コスト削減効果大
実例3: ECS / Lambda のデプロイ そろそろコンテナ/FaaSを本格導入したかった2017年ごろ Amazon ECS: そもそもデファクトなデプロイツールがなかった kayac/ecspresso
( 892)を開発 大変世間の皆様のお役に立っているようです AWS Lambda: apex/apex を使っていたが… 2019年にEoL → fujiwara/lambroll ( 385)を開発 ecspresso 同様の使い勝手になるように便利にしていった
ECS → Lambda でスケール速度改善+コスト削減 2024年 アクセスのスパイクが鋭い+予測困難なマイクロサービス ECS ではオートスケールが追いつかない fujiwara/ridge (
63) を使って Lambda に置き換え アプリのコードは変更なし スパイク耐性が大幅にアップ(突然10倍きても平気) コストも大幅に削減 デプロイフローの変更は最小限 ecspresso / lambroll が同じ思想で作られているので 同じように使える
Staff Engineer の役割 広い範囲に技術で影響力を及ぼせるのが Staff Engineer Solver = 困難な問題がある現場でその問題を解く 可能であれば
「一般解で解く」 ある現場で解いた問題は、他でも簡単に解けるようになる 解法が OSS なら社内だけではなく、世間でも解けるようになる ジュニアエンジニア = 自分の困難を解決できる シニアエンジニア = チームの困難を解決できる Staff Engineer = 会社/業界の困難を解決できる
「最強のSREイネイブラー」by Songmu https://junkyard.song.mu/slides/fujiwara-tech-conference/#27