©2018 Ateam Lifestyle Inc.U30エンジニアだからこそ実現できた劇的ビフォーアフター株式会社エイチーム ライフスタイルサポート事業本部エイチームライフスタイル 技術開発部リードエンジニア 田中宏紀
View Slide
©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.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.ここからビフォーアフターフォーマットでお送りします
©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 S3AWS 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.匠の技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.大切だと感じたところ1. 入れたい技術とニーズを結びつける ・組織にはまらない技術はエゴになりがち =浸透しにくい
©2018 Ateam Lifestyle Inc.大切だと感じたところ2. 定着できるペースを考えて進める ・急に変えたり強行すると定着しない ・期限は決めるけど長い目でみる
©2018 Ateam Lifestyle Inc.大切だと感じたところ3. 「新しいかどうか」より 「気持ちいいかどうか」で決める ・新しくてもしんどい技術は長く続かない
©2018 Ateam Lifestyle Inc.気持ちいい最新の技術を追えるのはU30だけ
©2018 Ateam Lifestyle Inc.若いからこそのセンスを活かして社内に技術の革命を起こそう!
©2018 Ateam Lifestyle Inc.ご清聴ありがとうございました