$30 off During Our Annual Pro Sale. View Details »

技術を使わない問題解決(@2019/02/07 表参道.rb 登壇資料)

技術を使わない問題解決(@2019/02/07 表参道.rb 登壇資料)

2019/02/07(Thr) に開催された表参道.rbの登壇資料です。
チームが最近入れた面白いgem周りの話を共有し、”技術を使わない問題解決”という考え方について説明しました!
イベントページ:https://omotesandorb.connpass.com/event/118318/

Teruhisa Fukumoto

February 07, 2019
Tweet

More Decks by Teruhisa Fukumoto

Other Decks in Technology

Transcript

  1. ZEALS Co.,Ltd チームが10人を越えたら考えたいgem周り ZEALS テクノロジー開発部 福本 晃之 技術を使わない問題解決

  2. • 自己紹介 • 起きた問題と使った技術 ◦ danger ◦ debride2okuribito & okuribito_rails

    ◦ Circle CI bundle update PR • エンジニアにとっての問題解決 Agenda
  3. ZEALS Engineer 福本 晃之 [ Teruhisa Fukumoto ] 前職:富士通G 法人セールス

    4月 ~ ZEALS Ruby Python SQL Product Manager Developer Relations :f-teruhisa :@terry_i_ :@teruhisafukumoto :Terry
  4. 起きた問題と 使った技術

  5. プルリクの秩序の乱れ ラベルつけて!! テストは? 差分多くね? ずっとWIPやん...

  6. Danger(https://github.com/danger/danger) • コードの差分を検知、閾値を超えるとキレる • labelが選択されていないとキレる • spec配下に差分がないとキレる • titleの “WIP”

    文字列を検知しキレる
  7. 技術的負債の増加

  8. debride2okuribito(https://github.com/shakemurasan/debride2okuribito) • コードを静的解析するgem • 未使用の可能性が高いメソッドを列挙してくれる • 静的解析なので、列挙に時間がかからない

  9. okuribito_rails(https://github.com/shakemurasan/okuribito_rails) • コードを動的解析するgem • APIによる外部呼び出しも含めて分析可能 • ymlファイルにメソッドを記述するだけで使用可能

  10. Image

  11. debride2okuribito & okuribito_rails 合わせ技で効率よくコードを看取る 引用(http://www.cine.co.jp/okuribito/)

  12. gem updateの責任なすりつけ

  13. CircleCI bundle updatePR(https://github.com/masutaka/circleci-bundle-update-pr) • Circle CIのymlに変更を加えるだけで実行可能 • Gemfile.lockとbundle updateの差分を検知 •

    差分をgit commitし、リモートリポジトリにpushする
  14. レビューフローにgem updateを乗せる

  15. エンジニアに とっての問題解決

  16. Copyright© ZEALS Co ., Ltd All Right Reserved gem自体は負債化 しないのか?

  17. Copyright© ZEALS Co ., Ltd All Right Reserved します

  18. 問題解決の方法を切り分けよう • 人がやるべきことなのか? • 実装すべきことなのか? • 車輪を再開発すべきか?

  19. 問題解決のLevel(by ところてん氏) 技術を使わないで問題を解決する 簡単な技術を使って問題を解決する 難しい技術を使って問題を解決する 難しい技術を使ってるだけ 上 下

  20. なぜ技術を使わない方が良いのか? • 技術は必ず陳腐化する • 技術は必ず属人化する • 技術は必ず負債になる

  21. 技術を安売りせず、 快適な Engineer Life を

  22. None
  23. Thank you!!