Successfully reported this slideshow.
Your SlideShare is downloading. ×

「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜

Ad

「やんちゃ、足りてる?」
〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
Glossom株式会社 ソフトウェアエンジニア 小松秀生

Ad

「やんちゃ」足りてますか?
2

Ad

3
https://40th.yanmaga.jp/

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Check these out next

1 of 33 Ad
1 of 33 Ad
Advertisement

More Related Content

Slideshows for you (19)

More from gree_tech (20)

Advertisement

「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜

  1. 1. 「やんちゃ、足りてる?」 〜ヤンマガWebで挑戦を続ける新入りエンジニア〜 Glossom株式会社 ソフトウェアエンジニア 小松秀生
  2. 2. 「やんちゃ」足りてますか? 2
  3. 3. 3 https://40th.yanmaga.jp/
  4. 4. 4 https://dictionary.goo.ne.jp/word/やんちゃ/
  5. 5. 5 「やんちゃ」 だねぇ…
  6. 6. 6 新人でも責任ある仕事を任せられ 成長できる環境が、ここにある
  7. 7. • 2020年新卒入社 (2年目) • 学生時代の研究 • 作曲教育Webサービス • 論理学 • AI音楽自動生成 • Glossom株式会社へ出向 7 小松 秀生 https://melon-530f5.firebaseapp.com/
  8. 8. • マーケティング・広告事業 • 事業会社支援 8 インフルエンサー・マーケティング支援 動画広告ネットワーク メディアの広告収益最適化
  9. 9. 9 https://yanmaga.jp by
  10. 10. • バックエンドの テストカバレッジ(分岐網羅)は 常に100%! • 互いの業務・操作方法を教えあい 可能な限り属人化を排除! • 新しいメンバーでも コードレビューに参加! 10 開発チームの取り組み
  11. 11. 初めてコードレビューを行ったのは、IT エンジニアとして会社に勤め始めてから どれくらい経ってからでしたか? ⓘ Start presenting to display the poll results on this slide.
  12. 12. やりがいがあったタスク • 統合認証基盤「GIGYA」の導入 • 倍プッシュチャレンジゲーム企画
  13. 13. やりがいがあったタスク • 統合認証基盤「GIGYA」の導入 • 倍プッシュチャレンジゲーム企画
  14. 14. 14 • メルマガ購読管理 • 顧客データ分析 • ソーシャルログイン • GDPR(個人情報保護法)対応 https://www.sap.com/japan/acquired-brands/what-is-gigya.html https://withonline.jp/ https://web.gekisaka.jp/store/ 統合認証基盤
  15. 15. 「GIGYA」を利用しているWebサイトは どれでしょうか? ⓘ Start presenting to display the poll results on this slide.
  16. 16. https://id.tokyo2020.org/oidc/login.html
  17. 17. Rails用認証ライブラリ 参考になる情報が少ないため deviseのソースコード理解が必要
  18. 18. Warden 〜 〜 ログイン用Controller GIGYAでのログイン時、Rails・deviseへ渡されるもの ● UID: GIGYAのユーザを一意に特定するID ● UID署名: UIDの検証に使う文字列 ● タイムスタンプ: ログインした時刻 warden.authenticate! strategy.valid? strategy.run! ログイン成功! GigyaAuthenticatable Strategy deviseのAuthenticatable Strategyを継承した独自Strategy with_authentication_hash → 認証情報としてemail, passwordの代わりにUIDを使う authenticate! → UID署名とタイムスタンプでUIDを検証 〜 〜
  19. 19. Warden GigyaAuthenticatable Strategy 普通に ログイン 自動で 新規登録して ログイン 漏洩 他サイトで 不正利用の 可能性 DB UID UID 漏洩 他サイトで 不正利用は 困難(※) DB 暗号化 (※) 暗号鍵まで漏洩しなかった場合
  20. 20. 統合認証基盤「GIGYA」の導入を ふり返って • 今までにない貴重な経験を積めた • サードパーティ製SaaSの統合 • オープンソースのコードの 読み込み • 暗号化の知識 • 自動テスト • 外部組織とのやり取り
  21. 21. 統合認証基盤「GIGYA」の導入を ふり返って • 認証周りでの失敗は高リスク • サービス停止・課金不可 • なりすまし • ログイン・新規登録が できないときのユーザ離脱 • 周囲の手厚いサポートのおかげで 現在も問題なく稼働中
  22. 22. やりがいがあったタスク • 統合認証基盤「GIGYA」の導入 • 倍プッシュチャレンジゲーム企画
  23. 23. ... イベント期間終了後 最大30,000ペリカ 獲得!! 当たれば2倍! ハズレると半分...
  24. 24. ゲーム データ ページ埋め込み API DB 非同期通信 ● ステータス確認 ● 抽選処理 書き出し 1ヶ月で作れるか? 前例見つからず、要調査
  25. 25. ゲーム データ /publics 表示 アセット取得 ✕ アセット取得スクリプトからの相対パスであるため ✕
  26. 26. ゲーム データ /publics 表示 アセット取得 アセット取得 スクリプトを改造 HTMLタグで アセットパスのル ートを渡す ○ + root/to/asset
  27. 27. MySQL 5.7において、正しい結果はどれ でしょう? ⓘ Start presenting to display the poll results on this slide.
  28. 28. ① ② ③ このとき、正しい結果は ①〜③のどれでしょう? (MySQL 5.7) 結果なし (0件) 正解!
  29. 29. ① ② ③ このとき、正しい結果は ①〜③のどれでしょう? (MySQL 5.7) 結果なし (0件) 正解! 倍プッシュチャレンジゲームでは 代わりに精度を固定したdecimal型データを使用
  30. 30. 倍プッシュチャレンジゲーム企画を ふり返って • 良かったこと • 2週間で約4000人が参加 • BtoCらしい企画で楽しかった • 怖かったこと • 確率を扱うゲームのリスク • ペリカ配布失敗時のリスク • 成長できたこと • 様々な組織とのすり合わせ • 本セクションで話したような 細かい技術的要素
  31. 31. • ヤンマガWebで得たノウハウを Glossomの新しいビジネスへ • 技術の幅を広げ、状況に応じて 最適な技術を選択できるよう 引き出しを増やしていく • エンジニアだけでなく 様々な立場の人の 考えを吸収していく 32 入社してからのふり返り これから • メモは大事 • レビューするのが成長に繋がる • グリーグループの文化が 自分の成長に繋がった • 周囲からの手厚いサポート • 大企業ならではの責任あるタスク • ベンチャー企業の 新人でも活躍させてもらえる環境
  32. 32. 33

×