2021年1月ふりかえり
2021年1月のふりかえりです。
- B 社で開発業務(週4〜5日)
- (Keep In Touch) D 社で採用支援業務(適宜)
- (終了の方向) K 社で技術顧問業務(適宜)
- (終了の方向) E 社で開発業務(20時間/月程度)
引き続きで B 社は Rails 製の EC サイトの開発業務と Engineering Manager / Scrum Master 業務です。
1 月は主に監視改善プロジェクト系のタスクと 5 月むけの高速化対応をやっていました。
- 監視改善プロジェクト
- Mackerel 撤退完了、NewRelic 撤退完了しています
- Datadog 導入完了しています
- 毎日、細かい調整だったり課金額を抑えるための様々な対応だったりを継続しています
- 課金額を抑える話は Tracing のメトリクス送るけど作らないようにしたり、ログを exclude したり、です
- 本当は RUM を使えるとめちゃくちゃ捗りそうなんですが、To C サービスだといかんせん高すぎて使えないですねぇ
- SRP 違反係数をモニタリングできるようにするといいことがあるかもしれないと思いメトリクスを出してみましたが、あまり役に立ちませんでした
- すでに Codacy を活用できているので機能重複しちゃってましたね
- B 社では毎年 5 月にトラフィックのピークが訪れるので、来る日に向けてインフラ面の計画から見直しつつ最適化・高速化に向けたあらゆる対応を進めているところです
- いちばんの発見としては delayed_job だともう無理なことがわかってきたところで、このタイミングで発見できたので本当によかったです
- 遅延処理の並列度を上げにいっていたのですが、delayed_job のテーブルが先にささっちゃいました
- apache と passenger の設定を見直したり
- バッチの高速化(チームメンバーが対応中)やったり
- Rails 部分の高速化、様々なキャッシュに乗せる、DB アクセス減らすなどですね
- 2月初旬時点で従来比 2 倍くらいの高速化を達成しています!
- インフラ面は RDS の IOPS 上げる対応、EC2 インスタンスのインスタンスアップをいろんなインスタンスに、ElastiCache のインスタンスアップなどなど
- RDS のインスタンスアップは 2 月後半に予定しています
- なぜか redash 用のサーバーも悲鳴を上げ始めていてなかなかヒリヒリする感じになってます、総力戦してるかんじですね!
- redash といえば、謎の dokku という heroku 互換な要素技術を使って運用していて(かつて参画していた人がやったらしい)、情報少なすぎてしんどいマンですね
- いちばんの発見としては delayed_job だともう無理なことがわかってきたところで、このタイミングで発見できたので本当によかったです
- 全然違う話としては Instagram 広告経由でのアクセスがかなりしんどいバグを生み出していてしんどいですね
- Instagram の広告踏む => WebView で UI 表示、という経路だといろんな現象が起きていてきつかったですね〜
-
Sentry の gem を更新しようとしたら、依存関係難しくて諦めつつパッチバージョンだけ上げたりしました
- B社における採用向けのインタビュー記事が近日でそうです。
D 社は引き続き稼働なしで、Keep In Touch な状況です。
K 社は EC サイトの技術顧問業務でしたが、1ヶ月程度稼働なかったので終了の方向でまとめました。
E 社は先月のふりかえりにも書きましたが週1弱の稼働でアウトプット出すの難しいよねという相談をして終了の方向でまとめました。
というわけで、2021 年の最初の月は「選択と集中」を実践し B 社に集中コミットしていくというスタートになりました。 B 社は 1 月下旬から週 5 日に稼働を増やして業務にあたっているところです。引き続きやっていきます。
おわり