SRE っぽいこともやります
考えてみたら Webpacker を本格的に触る前に CircleCI の改善とかやっているので最初から SRE っぽいことやっていますね。フロントエンドエンジニアの領域が拡大している現在、この辺りの領域には口出せて当たり前感はあるので、 iCARE でも一定以上コミットしています
障害対応
フロントエンド起因の障害に関しては率先して対応しますと表明しています。特にビルドに起因するプロダクション環境でしか発生しない問題や、デプロイに起因するフロントとインフラの境目の問題などのトラブルシューティングも業務範囲です
フロント起因の問題は原因の特定が難しいケースが多かったりするので、初動で問題が切り分けられるまでは基本的に張り付いて対応してきました。複数の EC2 インスタンスで運用していて、そのうちのひとつだけでビルドエラーが発生するとかの場合、フロントのビルドからデプロイ、インフラの知識まで総動員しないと原因突き止められなかったりします
今後 CDN なんかが導入されたりすると、システムアーキテクチャのことがわかったフロントエンドエンジニアの重要性は増していきそうですね
Sentry 対応
これまで、 Sentry は導入されているもののあまり見ていない、というのが実情でした。フロントエンドエンジニアの数が増えて余裕が出てきたこともあり、週次で Sentry をレビューして新しい issue のレビューを行うようにしました。まだまだノイズが多いのでこの辺りの整理をしていきたい気持ちはありますが、まずは見るところから
また、フロントエンドではおろそかになりがちな例外処理についても、ドキュメントを書いてきちんと作れば Sentry を活用できる下準備も完了。今後よりフロントエンドがリッチになっていくのだとしたらこの辺りもちゃんとしないといけないですね
開発環境・デプロイ周り改善
Webpacker を剥がすのに併せて開発環境はデプロイ周りの改善やメンテナンスも地味に行っています。 Dockerfile や docker-compose とか整備とかチューニングとか中身のバージョンアップとかですね。この辺り、作ったっきりでエンジニアは良くわかっていないけど使っている、という状況になりがちです。メンテしながらドキュメント整理したりしています
現状のメンテナンスだけではなく、今後は CDN 周りの活用やコンテナイメージを活用したローカル開発環境の効率化なんかもやっていきたい気持ちがあるのでそれに向けたイメトレもかねて触っている感じです
この記事は iCARE の技術顧問がどんな事をやっているか - 2021アドベントカレンダー の23日目の記事です