Slide 1

Slide 1 text

SREと私 Hatena Engineer Meetup #1 in Okinawa id:cohalz

Slide 2

Slide 2 text

自己紹介 ・id:cohalz / @cohalz ・株式会社はてな SRE (2018年新卒)

Slide 3

Slide 3 text

話すこと ・今までの人生の話 ・なぜSREになろうと思ったのか

Slide 4

Slide 4 text

SRE (Site Reliability Engineer) ・サービス開発時の構築 ・アラート対応・調査 ・全社基盤開発 ・安定稼働のための冗長化・キャパシティプランニング ・ミドルウェアやサービスの事前検証

Slide 5

Slide 5 text

入社までの経歴

Slide 6

Slide 6 text

2010 ・高校生 ・部活の先輩にJavaScriptを教えてもらった ・webで動く電卓を作って公開していた程度

Slide 7

Slide 7 text

2013 ・大学に入学 ・iOS用の簡単なゲームを作っていた ・並行してプログラミング言語に興味が出た  ・Scalaとの出会い

Slide 8

Slide 8 text

2015 ・Scalaを書くWebエンジニアアルバイトを始める  ・実はRESTの意味すら知らない状態だった ・フレームワークも違う複数のプロジェクトに触れる  ・ Web開発のいろはを学んだ

Slide 9

Slide 9 text

2017 ・はてなインターンの参加  ・Scalaが書けるインターンを探していた  ・はてなインターン出身のエンジニアを多数知っていた

Slide 10

Slide 10 text

はてなインターンの参加 ・Mackerelチームで開発した ・リリースして喜んでもらえる体験

Slide 11

Slide 11 text

その後アルバイトに応募

Slide 12

Slide 12 text

アルバイトに応募 ・Mackerelチームを希望していた ・別チームの配属でも良いですかと聞かれた  ・しかし当時は東京にMackerelチームのエンジニアがいなかった  ・サーバーとミドルウェアのオペレーションを行うチームへ

Slide 13

Slide 13 text

サーバとミドルウェア??? ・経験もないし知ってることを探すほうが難しい ・サーバ: VPS1台借りて遊んでいた ・ミドルウェア: MySQLなら多少は...

Slide 14

Slide 14 text

それでも承諾した

Slide 15

Slide 15 text

それでも承諾した ・Webオペレーションエンジニア座談会を見た  ・https://hatenacorp.jp/recruit/operation_engineer ・アプリケーションエンジニアからの転向が多い ・メンターもフロントからインフラに転向した人だった

Slide 16

Slide 16 text

それでも承諾した ・全く同じ経歴の人もいた

Slide 17

Slide 17 text

それでも承諾した ・はてなインターンでのインフラ講義が良かった

Slide 18

Slide 18 text

思い返すと ・自分でWebアプリケーション作ってない  ・ネタが思いつかない ・新しいことをやってみたかった  ・わからないことへの興味  ・前のアルバイトは同じようなタスクが多かった

Slide 19

Slide 19 text

アルバイト研修がスタート

Slide 20

Slide 20 text

アルバイト研修 ・Go言語を学ぶ ・ISUCON 4のスコアアップ ・ISUCON 4の構成を三層構成+冗長化 はてなでインフラ研修を受けました https://core.cohalz.co/entry/2018/04/20/101536

Slide 21

Slide 21 text

アルバイト ・ミドルウェア・ツールが面白い  ・keepalived  ・Chef 社内で LVS 勉強会を開催しました - Hatena Developer Blog https://developer.hatenastaff.com/entry/201801-lvs-study

Slide 22

Slide 22 text

システムって面白い ・複数のサーバが動くのが面白い ・生き物みたい  ・他と強調して動く  ・不調になることもある

Slide 23

Slide 23 text

システムを対象にしたコードを書く ・楽にしたいからコードを書いてきた ・インフラだってそうしたい  ・=>自動化の仕組みを考える  ・基盤開発

Slide 24

Slide 24 text

基盤開発で喜んでもらえる ・身近な人に喜んでもらえると嬉しい ・基盤を使ってもらうのはすぐ近くの開発者

Slide 25

Slide 25 text

AWSサービスとの出会い ・最初は怖くて手を出せなかった ・一つずつ覚えていく  ・EC2, S3, Lambda, CloudFormation… ・組み合わせて使うと面白い

Slide 26

Slide 26 text

そして入社へ ・大学院を中退 ・入社時に職種を選べたが,そのままSREを希望した

Slide 27

Slide 27 text

そうして今に至る

Slide 28

Slide 28 text

やってきたこと

Slide 29

Slide 29 text

インターン生のメンター ・コンテナ運用周りを検証した ・Fargateのデプロイ方法・時間,オートスケールなど

Slide 30

Slide 30 text

インターン生のメンター ・その結果,大きな反響があった https://developer.hatenastaff.com/entry/2018/09/26/133000

Slide 31

Slide 31 text

Let’s Encrypt証明書の自動更新 ・Lambdaを使って自動でS3に保管されるように https://developer.hatenastaff.com/entry/2018/12/11/133000

Slide 32

Slide 32 text

Let’s Encrypt証明書の自動更新 ・OSSにしたところPRも貰った

Slide 33

Slide 33 text

Mackerelの監視ルール自動管理 ・元々は定期バックアップを作ろうとしていた ・webhookを駆使することで即バックアップが可能に https://developer.hatenastaff.com/entry/2019/04/16/130000

Slide 34

Slide 34 text

Mackerelの監視ルール自動管理 ・社内でかなり便利に使われるようになった ・技術的にもSaaS同士が繋がるという面白さがあった

Slide 35

Slide 35 text

コンテナ化の推進 ・インターンの成果を元に,更に発展させる  ・アプリケーションをコンテナ化  ・デプロイ・ログ・監視なども調査・整備

Slide 36

Slide 36 text

コンテナ化の推進 ・得られた知見をどんどん社内に共有 ・知見だけではなくコードに落とし込む ・=> 新規サービスはコンテナで行こうという流れにできた

Slide 37

Slide 37 text

インフラをコードで記述する

Slide 38

Slide 38 text

AWS CDKとの出会い ・CloudFormationをTypeScriptで書ける ・知見の入ったテンプレートをライブラリとして提供できる ・社内で試している人が何人書いた

Slide 39

Slide 39 text

AWS CDKとの出会い ・ライブラリを書きつつ本家にPR   ・(おそらく)日本人最多のコントリビュート数  ・インフラの知識とコードを書く能力が役に立った

Slide 40

Slide 40 text

AWS CDKとの出会い ・縁がありイベントで登壇することに https://awsclouddevelopmentkitcdkmeetu.splashthat.com/

Slide 41

Slide 41 text

そして今 ・新規サービスの構築に関わっている ・ミドルウェア検証,デプロイ改善,不具合調査 ・アプリケーションのコードから改善することも

Slide 42

Slide 42 text

やってみれば意外とできる

Slide 43

Slide 43 text

「手を動かしたものだけが世界を変える」 ・本部長の言葉 ・挑戦を応援する文化

Slide 44

Slide 44 text

採用強化中です ・挑戦してみたいSREを募集中です ・https://hatenacorp.jp/recruit/career/sre