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
U30エンジニアだからこそ実現できた劇的ビフォーアフター #bcu30
Search
Hiroki Tanaka
April 21, 2018
1
4.2k
U30エンジニアだからこそ実現できた劇的ビフォーアフター #bcu30
Hiroki Tanaka
April 21, 2018
Tweet
Share
More Decks by Hiroki Tanaka
See All by Hiroki Tanaka
ISUCONボツ技かるた / ISUCON Reject Karuta
dabits
0
68
DockerCIビルドを一歩先へ Buildkitを運用前提で試食してみた / Docker ci with buildkit
dabits
0
130
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Visualization
eitanlees
146
15k
Designing Experiences People Love
moore
138
23k
Statistics for Hackers
jakevdp
796
220k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Bash Introduction
62gerente
608
210k
Scaling GitHub
holman
458
140k
The Language of Interfaces
destraynor
154
24k
Six Lessons from altMBA
skipperchong
27
3.5k
The Cost Of JavaScript in 2023
addyosmani
45
7k
Transcript
©2018 Ateam Lifestyle Inc. U30エンジニアだからこそ実現できた 劇的ビフォーアフター 株式会社エイチーム ライフスタイルサポート事業本部 エイチームライフスタイル 技術開発部
リードエンジニア 田中宏紀
©2018 Ateam Lifestyle Inc. 自己紹介/経歴紹介 所属 : エイチームライフスタイル 技術開発部 リードエンジニア
名前 : 田中宏紀 a.k.a だびっつ Id : @dabits 経歴 : ・misocaの前身, 受託の開発 ・サン電子 BLのソシャゲ開発/運営 ・金融事業->ヘルスケア事業->技術開発部 趣味 : アニソンDJ
©2018 Ateam Lifestyle Inc. 会社紹介/事業紹介 ・株式会社エイチーム ・本社: 名古屋/ 東京・大阪・福岡オフィス ・エンターテインメント事業 EC事業
・ライフスタイルサポート事業
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. テーマ : U30・技術浸透・ビフォーアフター ・学生・新卒と話す機会が多かった ・エンジニア≒新しい技術が好き ・好きな技術を浸透させきれずもったいない人も
©2018 Ateam Lifestyle Inc. どういった手順を踏んで 浸透させたのかを事実ベースで
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 2017年7月〜2018年2月にやってきたこと
©2018 Ateam Lifestyle Inc. やってきたこと
©2018 Ateam Lifestyle Inc. やってきたこと ・Excel手動集計,エンジニア都度集計 →Redash+Prestoで自動化 ・Redmineのチケット運用&コマンドでリリース →Gitlab+Gitlab-CIで自動化 ・デザイン確認待ち中別環境作って開発
→デザイン確認用環境をDocker+ECS+Gitlab-CI自動作成へ ・障害検出報告がメールのみで行われる文化 →Kibana+ElastAlert+Newrelic+Sentry+Chatworkへ
©2018 Ateam Lifestyle Inc. スライド枚数150枚超え
©2018 Ateam Lifestyle Inc. スライド枚数150枚超え
©2018 Ateam Lifestyle Inc. やってきたこと ・Excel手動集計,エンジニア都度集計 →Redash+Prestoで自動化 ・Redmineのチケット運用&コマンドでリリース →Gitlab+Gitlab-CIで自動化 ・デザイン確認待ち中別環境作って開発
→デザイン確認用環境をDocker+ECS+Gitlab-CI自動作成へ ・障害検出報告がメールのみで行われる文化 →Kibana+ElastAlert+Newrelic+Sentry+Chatworkへ
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. ここからビフォーアフター フォーマットで お送りします
©2018 Ateam Lifestyle Inc. ビフォー : 障害検出報告メール文化 ・太古の昔、障害検出フローがメールベースで整えられた ・時が数年経ち、事業・人数が増えると... デーモンログ
アプリケーションログ収集 サーバメトリクス収集 内製ログ→メールスクリプト
©2018 Ateam Lifestyle Inc. ビフォー : 障害検出報告メール文化 ・サービス数分だけログが増えて鳴り止まないメール ・担当者が定まらず一丸で対応にあたるので疲弊 ・メンテされずスルーしてくださいが増えオオカミ少年化
©2018 Ateam Lifestyle Inc. やっとれん
©2018 Ateam Lifestyle Inc. でも
©2018 Ateam Lifestyle Inc. 長い期間フローが定着してしまっているので 急には変えづらい
©2018 Ateam Lifestyle Inc. どう乗り越えたか
©2018 Ateam Lifestyle Inc. リフォームの全貌を お見せしましょう
©2018 Ateam Lifestyle Inc. 匠の技1 : Mail2Chatworkを準備 ・内製のLambdaスクリプト ・メール送るとLambda経由でChatworkAPIに投げてくれる ・個別にチャットのToが送れるように拡張
保存 APIで投稿 AWS Lambda イベントフック AWS S3 AWS SES
©2018 Ateam Lifestyle Inc. 匠の技1 : Mail2Chatworkを導入 ・アプリエラーログ通知をメールからチャット通知に変更 ・緊急対応=メール、気づいたら対応=チャットのフローへ
©2018 Ateam Lifestyle Inc. とりあえず 緊急対応件数は減りました
©2018 Ateam Lifestyle Inc. 匠の技2 : ElastAlertを準備 ・Yelp社製OSS ・Elasticsearchに定期的にクエリを投げて監視 ・しきい値に達したらAlertアクションを実施
ログ集約 保存 定期的に監視 検出したら発報 Fluentd Elasticsearch ElastAlert
©2018 Ateam Lifestyle Inc. 匠の技2 : ElastAlertを導入 ・優先度高いエラーをメールで発報 ・優先高=ユーザに直ちに影響がある ・5xx系エラー
・レスポンス遅延
©2018 Ateam Lifestyle Inc. 本当に対応すべき障害が 判るようになりました !重要! 軽め
©2018 Ateam Lifestyle Inc. 匠の技3 : Sentryを準備 ・アプリに組み込むとエラーを収集してIssueにしてくれる ・新規・件数跳ねたエラーを通知してくれる 検出したら発報
SDKがログを送信
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 匠の技3 : Sentryを導入 ・チャットに流していたアプリエラーを止めSentryへ移管 ・新規エラーと件数スパイクはメールで通知されるように
©2018 Ateam Lifestyle Inc. 本当に修正すべきバグが 判るようになりました !重要! 軽め
©2018 Ateam Lifestyle Inc. 匠の技4 : 通知先をチャットへ ・緊急対応の対象をメール→チャットへ変更するとアナウンス ・ElastAlert・Sentryからの通知を全てMail2Chatwork経由に
©2018 Ateam Lifestyle Inc. その結果...
©2018 Ateam Lifestyle Inc. アフター : 担当者が率先して気付き対応 ・影響がある事業の担当者にToが付くようになった ・自身の担当している事業の障害に気付きやすくなった
©2018 Ateam Lifestyle Inc. アフター : 返信やディスカッションが迅速に ・メールはレスポンス遅い、チャットは早い ・対応者への打ち返しが速くなった
©2018 Ateam Lifestyle Inc. アフター : 勤務時間外対応の判断が迅速に ・ElastAlertからの通知を基本的に対応要とする ・必要な情報は本文にほぼ記載
©2018 Ateam Lifestyle Inc. 無事にリフォーム完了
©2018 Ateam Lifestyle Inc.
©2018 Ateam Lifestyle Inc. 進めてみて 大切だと感じたところ
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 1. 入れたい技術とニーズを結びつける ・組織にはまらない技術はエゴになりがち =浸透しにくい
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 2. 定着できるペースを考えて進める ・急に変えたり強行すると定着しない ・期限は決めるけど長い目でみる
©2018 Ateam Lifestyle Inc. 大切だと感じたところ 3. 「新しいかどうか」より 「気持ちいいかどうか」で決める ・新しくてもしんどい技術は長く続かない
©2018 Ateam Lifestyle Inc. 気持ちいい最新の技術を追えるのはU30だけ
©2018 Ateam Lifestyle Inc. 若いからこそのセンスを活かして 社内に技術の革命を起こそう!
©2018 Ateam Lifestyle Inc. ご清聴ありがとうございました
©2018 Ateam Lifestyle Inc.