年も瀬なので、開発関連の取り組みを雑に書きなぐっておこうと思う。 また来年の年の瀬に見てやるべきことがしっかりやれたかを確認できればと。
今年やれたこと・やってみたこと
SREっぽい動き
特に組織上SREというポジションに就いているわけではないが、ソフトウェアエンジニアとして、担当しているサービスや一部その関連サービスの
- HerokuからGCPへのプラットフォーム移行
- 監視やオブザーバビリティ担保に向けた取り組み
- 障害時のガイドライン策定
- SLOに対してのボトルネック特定やSQLチューニング
- 自動テストの作成についてのガイドライン策定
などに関わることができた。 特にインフラ領域に関しては、業務委託としてお手伝いいただいている専門家の方とプロジェクトを一緒に進める中で、試行錯誤して作った既存のアウトプットが正しくよいものへブラッシュアップされていくことが嬉しかったし、そこからいろいろ学ばせてもらうことができている。
SLOに対してのボトルネック特定に関しては、HerokuのDynoが突然ダウンする問題が半年ほど問題になっていたが、PumaやPostgreSQLサーバーのメトリクスを可視化するところからAPMによる計測までを行いながら問題を切り分けていった。 結果的にSQLクエリ自体や投げ方のまずい箇所が特定と改善ができたし、HerokuのH12エラー起因の障害について何が原因になりうるかについて分かったことも多かった。
「推測するな、計測せよ」を実感した。
技術負債のコントロール
サービスのスケールに伴って、チームで技術負債とうまく付き合っていくために、以下のような取り組みをはじめてみた
- 時間がかかる技術課題や顕在化した負債を計画的に解消していくために、プロダクトチームのOKRとして目標化を行う
- 週次の開発振り返り会(DevOps MTG)の実施
技術課題を起票する目的や解消のための時間確保について、よりチームで意識できるようになってよかったと感じている。
技術広報
つい2,3ヶ月の間の話ではあるが、会社のテックブログの編集長になった。 一旦これまでの整理として、振り返りを行った上でこれまでのブログ運用の方針を引き直してみたりした。 また、今年は他社と共同で勉強会やLTを主催する試みを年の後半からはじめて、年内に2回開催することができた、継続してよいイベントにしていきたい。
個人開発
共有家計簿のアプリ、彼女が経理の仕事をしているということもあり、お金の管理観点で自分達の使いやすいものを作っている。 たまたま社内に同じような家計簿の管理をしたいメンバーがいたので使ってもらっていて、自分たち以外からもフィードバックが返ってくるので結構楽しく開発を続けられている。
やりきれなかったこと
開発チームのアウトカムを分かりやすく説明すること
プロダクト開発とは直接的に関わりのない部署や役割のメンバーに対して、開発チームのアウトプットやアウトカムにわかりやすく説明することがなかなか難しく感じることが多かった。
まずは、意識的に開発起点の情報にふれる接点を増やしていくこと。 徐々に各役割で追っているKPIをブレークダウンして、開発のアウトカムとしていくことが大事だと今のところ考えている。
個人としての発信
ブログ執筆を推進していく立場なので、テックブログや個人でも投稿の数・質ともに追っていく必要がある。 現状、それぞれに月1で投稿する目標がありつつも達成からは程遠い。。。