Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
⽣活発表 @sinamon129
Slide 2
Slide 2 text
⾃⼰紹介 RiLi, inc. Chief Engineer RailsGirls Tokyo 5-9th coach 7th organizer ͠ͳΜ @sinamon129
Slide 3
Slide 3 text
バス因⼦、転職する
Slide 4
Slide 4 text
Rubyコミュニティ との出会い
Slide 5
Slide 5 text
私とRubyコミュニティとの出会い • Rails Girlsのコーチに応募 • 知り合いとくにいない • 社会⼈2年⽬、Ruby/Railsな会社に戻ってきた時 • 「⼥性エンジニアが少ないことに対する違和感」 • プログラミング初めての⼈になら教えられる? • 勉強にもなりそうだし
Slide 6
Slide 6 text
豪華すぎるコーチ陣 • 顔合わせに⾏ったらなんか強そうな⼈がいっぱいいる • コミッタ・コントリビューター • 本書いてる • RubyはN年前から使ってます • 結構Asakusa.rbの界隈の⼈多い • 初回参加時のオーガナイザーは@youchanさん
Slide 7
Slide 7 text
飲みに⾏ってるのに混じった • RailsGirlsは2⽇開催 • 1⽇⽬終了後に、@amatsudaさんが飲みに⾏く⼈ を募っていた • @emorimaさん・@yuki24さん・@yotii23さん • Rubyコミュニティについて知る • 後⽇、kaminariのリポジトリをみてびびった
Slide 8
Slide 8 text
ところで Asakusa.rbはつよそう
Slide 9
Slide 9 text
なんで強そうか • Asakusa.rbに対するイメージ • Rubyつくってたりgemつくってたり、何かに コントリビュートしてたり、その辺りの深く て濃い話をしている • ⾃分とは次元が違う(理想的) • 今⽇発表するのもめっちゃびびってる
Slide 10
Slide 10 text
尊敬・かっこいい
Slide 11
Slide 11 text
今⽇はそういうかっこいい ⼈たちがたくさんいるので
Slide 12
Slide 12 text
強くないRubyistによる ⽣活発表
Slide 13
Slide 13 text
⽣活発表 3本⽴て♬ エンジニアやるぞ のきっかけ 好きなことで、⽣きていく そうだ、Aasakusa.rbに⾏こう!
Slide 14
Slide 14 text
エンジニアやるぞ の きっかけ
Slide 15
Slide 15 text
⼤学⽣のころのはなし • 3年⽣ つくばに住んでいました • プログラミングはちょっと(授業・サークル) • インターンでチーム開発ちょっとかじった • 知⼈が⼿伝ってたサービスを⼿伝うことに • 暇だし、おもしろそうだった • メディア+ログインなしのユーザー投稿
Slide 16
Slide 16 text
初期リリース(夏) • 企画(1⼈)開発3⼈(みんな学⽣) • 最初の分担 • Aさん:サーバサイド • Bさん(知り合い):フロント • Bさんの担当部分をお⼿伝い • サーバ直編集(悲劇の上書き合戦)
Slide 17
Slide 17 text
少しメディアに取り上げられたり • 需要期が数ヶ⽉先にある • サーバ直編集(git未使⽤)・⽣PHP • 書き直すことが決まる • サーバサイド:私とBさん • フロントエンド:Aさん • CakePHPのドキュメントを舐めるように⾒てなんとか書く • 初めての分厚めフレームワーク
Slide 18
Slide 18 text
LoadAverageがこんなに⾼いわけが… • 12⽉、リリース • さくらVPSの2Gサーバ(たしか) • ⾒れない・レスポンスが遅い • 習いたてほやほやのtopコマンド • 「やばい、攻撃されてる!!!!!」 • ただの⾼負荷 • DB同梱・DBにindexなし
Slide 19
Slide 19 text
砲撃予告 • 某W●Sに出るらしい • うち、テレビないんだけど… • サーバを8G(当時の最⼤スペック)のに「⽴て直し」 • DB同梱() • 放映⽇【前⽇】に徹夜で設定 • 当⽇は朝から東京に出て、就活の⾯接x2
Slide 20
Slide 20 text
徹夜で⼤事な設定は危険 • 「お名前.comのページが⾒える」っていわれる • そういえば… • お名前.comでネームサーバの設定を「初期設定に戻す」を 押した記憶がなくもない • 当時の予想できる状況 • 設定中に何を思ったのか初期設定に戻すをおす->設定で きたと思う(古いサーバにつながったまま) • ⾯接と⾯接の間にもう⼀回ファミレスで設定
Slide 21
Slide 21 text
いざ、テレビに出るぞ • GoogleAnalyticsとサーバにsshして待つ • GAのリアルタイムがいきなり1万とかになる • !!!サーバが⼀瞬で死ぬ!!!
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
サーバってどうやったら落とさないで済むの • AWSにすればいいと聞いて • 2回⽬の需要期は、フルスクラッチで書き直して AWS • 普通に落とした • 結局⼤学卒業までサーバを落とさずに済んだことは なかった • 経験を積んでなんとでも落とさずに守り切りたい
Slide 24
Slide 24 text
いいこともたくさん • SNSからの流⼊が多く、ユーザーからのいい反応がみれた • サーバ落ちてるとサーバ担当しっかりしろって⾔われる • テレビ・まとめサイトなど流⼊経路ごとのアクセス傾向 • (コンテンツが良かったので)プログラム⾃体は複雑では なかったが、多くの⼈に使ってもらえた • ⾯接にこの話したら⼤体どうにかなって楽だった←
Slide 25
Slide 25 text
この⼀連の流れから
Slide 26
Slide 26 text
エンジニアとしてもっとやりたい • 安定運⽤できるアプリケーションを作りたい • インフラ・設計・アプリケーション • とりあえず落とさない(機会損失悲しい) • 使ってもらってフィードバックが返ってくるのとてもう れしい • 難しくなくても⼈に便利に使ってもらえる • みんなで作るの楽しい
Slide 27
Slide 27 text
余談 • 社会⼈になって安定稼働できるようになった • Railsでフルスクラッチで書き直し • インフラも設定しなおし • 当時⾜りなかったもの • メトリクスを⾒て考えて改善すること • (その他沢⼭あるけど)
Slide 28
Slide 28 text
何気なしにやったことが ⼈⽣に⼤きな影響になることが たまにあるから⾯⽩い
Slide 29
Slide 29 text
好きなことで、 ⽣きていく
Slide 30
Slide 30 text
最近Twitterで • 勉強とか育つとか • エンジニアはこうすべきみたいなのが乱⽴ • すきにやればいいやん
Slide 31
Slide 31 text
⾃分はこういう考えで こういうことやってきた
Slide 32
Slide 32 text
前提(私のことを知らない⼈への⽂脈提供) • 得意なこと • コミットメント(当事者意識) • 苦⼿なこと • 緊急じゃないことをやること • 抽象度が⾼いこと • 別ドメインのコンテキスト切り替え
Slide 33
Slide 33 text
好きなことで ⽣きてる
Slide 34
Slide 34 text
弊社(RiLi)について
Slide 35
Slide 35 text
学⽣時代から • 洋服や⼥性向けメディアが好き • 「⽬指すはプリ機」 • ユーザーはギークじゃない • 技術より体験を推している • 技術が詰まっている
Slide 36
Slide 36 text
職歴? • 事業会社 • エンジニアとして⼒をつける • エンジニアが事業企画できる • フリマアプリ(⼥性向け->ファッション->オールジャンル) • エンジニアとして⼒をつける • ファッション・⼥性向け • メディア&EC(now) • ファッション・⼥性向け&⽬指すところ
Slide 37
Slide 37 text
好きな事業領域 だから 夢中にできた
Slide 38
Slide 38 text
検索改善 • 検索ログデータの集計レポートを勝⼿に上げてた • 検索改善チームが⽴ち上がった • KPIが⾒えるダッシュボードをRailsで作る • 独⾃辞書作成・ロジック変更 • Elasticsearch ・ searchkick • このネタで2つぐらい登壇 -> 現職社⻑との遭遇
Slide 39
Slide 39 text
検索改善からの • Elasticsearchサーバの⾼負荷で荒ぶるのと戦う • 専任のインフラエンジニア不在の世界線 • 突然の死によるサーバ⽴て直し多発 • Elasticsearchについて情報を収集するように
Slide 40
Slide 40 text
深夜メンテ・負荷対策・バグ退治 • サービス愛 • 安定して使ってもらいたい気持ち • 深夜メンテへの憧れからのメンテスタメン化 • 問題の切り分け⽅を学ぶ • とりあえず数問題(負荷・バグ)と当たる • 1番にバグ原因を特定する競争(脳内)
Slide 41
Slide 41 text
⼤変なことを乗り越えることは⾎と⾁に • イレギュラーを知ることで実装時に考慮できる • 実装範囲外のコードリーディング • サーバ・ライブラリ等の挙動の把握
Slide 42
Slide 42 text
勉強しようってやるのは苦⼿なので • 興味があることを掘り下げる・やりたいと宣⾔する • 需要と供給のマッチする部分 • 緊急度が⾼いしやらないとサービスに損害が出るの で逃げられない状況を必死にやる • バージョンアップ・⼤型改修等の⾃分の⼤変に⾒え ることをやる • メンバーになる->慣れたら主導で進める
Slide 43
Slide 43 text
今楽しいのは… • 趣味でみてるものを誰がどのように作ってるのか⾒れる • メディアに出てこない部分 • 好きなもののデータが⾝の回りに落ちてる • どうやって調理しようかな • 会社の⼈が作るものが好き!! • ⾃分には作れないものを作れる⼈に囲まれてる • 私はみんなが得意じゃないところで⼒になる
Slide 44
Slide 44 text
好きなことを仕事に するのはいいぞ!
Slide 45
Slide 45 text
No content
Slide 46
Slide 46 text
そうだ、Aasakusa.rb に⾏こう!
Slide 47
Slide 47 text
近況
Slide 48
Slide 48 text
社内で1⼈のバックエンドエンジニア まあ⾊々経験したし 昔よりはどうにかなるんちゃう?
Slide 49
Slide 49 text
転職前直近⼀年ぐらい • 仕様を⼝から吐くマン • 仕様をまとめ • 既存のロジックに何かを付け⾜す • コードレビュー • バグ直す • パフォーマンス周り
Slide 50
Slide 50 text
転職後 • システム設計 • Rails newからサーバデプロイまで • 久々のインフラ(初めてのDocker・k8s) • フロントエンドがスムーズに開発できる環境を 整える(初めてのwebpack・vue.js)
Slide 51
Slide 51 text
だいぶん変わった
Slide 52
Slide 52 text
今必要なこと • どこを守り・どこを攻め(投資)するか • しがらみはあまりない • スピードを出したい • できるだけ後で後悔する設計にはしたくない • やったことないことにチャレンジしたい • 事業拡⼤時に遭遇しそうなことを考えながら
Slide 53
Slide 53 text
緊急度の低いことへの投資の重要性 • 技術わかってないと選択できない • 事業のジャンル的にエンジニア採⽤苦労しそう • 戦略的技術広報 • エンジニアにとって魅⼒的な状態を意識する • 実装もドライブしたい • 最初ちょっと⼤変だけどあとで空気にしたい
Slide 54
Slide 54 text
絶賛 • Wordpressで作られているメディアをサービス 拡⼤のためにRailsでフルリニューアル中 • Ruby on Rails 5.2.1 • ActiveStorage • Vue.js (webpack without webpacker) • GKE(k8s)
Slide 55
Slide 55 text
⽕曜⽇にAsakusa.rbに⾏ったら… • RailsGirlsの話したり、スライドの相談したり • みんな相談したりもくもくしたりしてた • 緊急度低いけど解決したいネタが結構あるので もくもくしに⾏きたい • ブログにしたり、ネタもありそうなのでgem とかコミットに挑戦したい
Slide 56
Slide 56 text
Asakusa.rbに ⾏こう!