msksgm’s blog

msksgm’s blog

Webエンジニアです。日々の勉強記録、技術書感想、美術観賞感想を投稿します。

2023年5月の振り返り

概要

2023 年 5 月の振り返りです。

今月は以下を目標にしていました。

msksgm.hatenablog.com

勉強概要

今月は下表のように勉強していました。 合計、97.9 時間です。GW 中には旅行に行っていたため、1 週目ほとんど勉強できませんでした。 そのため目標の 100 ~ 120 時間にわずかに到達できませんでした。

項目 1 週目 2 週目 3 週目 4 週目 5 週目
平日朝の勉強時間 0 時間 約 15 時間(36 ポモドーロ) 約 15 時間(36 ポモドーロ) 約 15.8 時間(38 ポモドーロ) 約 10.0 時間(24 ポモドーロ)
平日夕方の勉強時間 0 時間 0.5 時間 0.5 時間 約 1.5 時間 0 時間
休日の勉強時間 約 7.92 時間(19 ポモドーロ) 約 8.75 時間(21 ポモドーロ) 約 10.0 時間(24 ポモドーロ) 約 13.3 時間(32 ポモドーロ) 0 時間
「入門監視」勉強会 0 時間 約 2 時間 約 2 時間 0 時間 約 2 時間
そのほかの勉強会 0 時間 0 時間 0 時間 約 1.5 時間 0 時間
合計 0 時間 約 26.3 時間 約 27.5 時間 約 32.1 時間 約 12.0 時間

5 月の OKR 結果

2023年4月〜6月の目標に記述した OKR 目標はソフトウェアテストプロダクトマネジメントと DevOps・CI/CD です。 具体的には下表の通りになります。

注力分野 Objective(3 ヵ月経過後の目標) Key Result(必要だと考えていること)
ソフトウェアテストプロダクトマネジメント 品質の向上と担保を第一義に、テストプロセスおよび開発プロセスを経験した状態 ソフトウェアテスト技法、テストプロセス、の知識。品質マネジメントを主目的にした開発プロセスまたはプロダクトマネジメントの導入と実践
DevOps・CI/CD 開発(Dev)側が必要な運用(Ops)の技術と考え方を認識した状態。DevOps DevOps の知識の拡充。モニタリング、オブザーバビリティ、SRE の知識。業務内外にかかわらず CI/CD の実践経験

5 月は下表に落とし込んでいました。

注力分野 Objective(1 ヵ月度ごとの目標) Key Result(具体的な行動予定)
ソフトウェアテストプロダクトマネジメント プロダクトマネジメントについて学んだ状態。ソフトウェアテストの技法を学ぶ。 業務で「単体テストの考え方/使い方」の勉強会を終える。「プロダクトマネジメント」といったプロダクトマネジメント系の書籍を読む。「ソフトウェアテスト技法」または「実践的プログラムテスト入門」に挑戦する
DevOps・CI/CD モニタリング、オブザーバビリティ、SRE の基本を認識している状態。業務で DevOps について議論された状態 チームで必要な DevOps について議論を始める。「入門監視」「オブザーバビリティ・エンジニアリング」「SRE サイトリライアビリティエンジニアリング」を読む。個人と業務で CI/CD を組み込む

それぞれの注力分野に対する結果は以下です。 やれることはやったのですが、GW 期間を利用して旅行に行った関係から勉強時間を確保できなかったので、低めに設定してます。

注力分野 達成度(100 点満点) Key Result(行動結果)
ソフトウェアテストプロダクトマネジメント 80 点 プロダクトマネジメント系の書籍を 3 冊読んだ。業務で「単体テストの考え方/使い方」の勉強会を終えた。 「ソフトウェアテスト技法」に挑戦したが諦めた。
DevOps・CI/CD 75 点 「入門監視」「オブザーバビリティ・エンジニアリング」を読んだ。開発運用の MTG の進行方向を変更した。「SRE サイトリライアビリティエンジニアリング」を途中で読むのをやめた。

注力分野の振り返り

ソフトウェアテストプロダクトマネジメント

80 点とした理由は以下です。プロダクトマネジメントソフトウェアテストの順番に説明します。

まず、プロダクトマネジメントについては書籍で学べました。読んだ書籍は下記の 3 冊です。

どちらもモノづくりに対する本質をとらえていて、読み応えがある本でした。 また、この手の書籍は抽象的過ぎる内容が多い印象でしたが、割と具体的で読むやすかったです。 現状を突然変えることや規模的に自身の業務で活かすには難しい部分もありますが、どうあるべきなのかや評価の方法について考えられました。

ソフトウェアテスト関連では、2 つのことに取り組もうとしていましたがやめることにしました。 1 つめは、バイザー本と呼ばれるソフトウェアテストの聖書である、「ソフトウェアテスト技法」に挑戦しましたがやめたことです。 目を通すだけでも、一読したかったのですが、やはり難解な部分が多いのと自身が OKR に掲げていた目標と合わなさそうですので、読むのをやめました。
2 つめは、JSTQB Advanced Level Test Analyst の受験を見据えて着手していましたが、やめたことです。 理由は、資格の内容が割とマネージャーよりで、技術よりの内容は ISTQB Advanced Level Technical Test Analyst だったからです。
このように、勉強しようとしていた内容は上流の内容だったり、自身とチームが求める内容とズレがあったため、方向転換しました。

開発者観点のテストでは、下記の書籍を読もうと考えました。

  • 「Hands-On Dependency Injection in Go」
  • 「フロントエンド開発のためのテスト入門」
  • 「Jest ではじめるテスト入門」

業務の兼ね合いから、最初に「Hands-On Dependency Injection in Go」を読みました。 現状の Go で書かれたソースコードが適切に DI できておらず、Go らしい DI の方法を学ぶために読みました。 本書の内容に同意できない部分も多かったので読み飛ばした箇所も多かったのですが、適用できそうな DI や適用したくない DI の区別ができるようになり、知見を得られました。 来月以降は、「フロントエンド開発のためのテスト入門」を読もうと考えています。

ほかにソフトウェアテスト関連では、職場のチームで行っていた「単体テストの考え方/使い方」の勉強会が終わり、振り返りも行いました。 職場で勉強会を行うのは初めてでしたが、存外うまくいって良かったです。 チームで勉強会を行うと共通認識を合わせられるだけでなく、職場の課題や次の実践内容が明確になり、良かったです。 ただ、理想的な状態になるための計画と継続的な実践はまで行えていないため、今後どうするのか決める必要があります。

プロダクトマネジメントソフトウェアテストを総評を箇条書きにすると下記です。

以上の結果を踏まえて、6 月には以下を実践します。

  • プロダクトマネジメントの継続的な勉強
  • 開発者テストの知識をインプット
  • テストの勉強会を踏まえたチームの目標および計画の策定

DevOps・CI/CD

75 点にした理由は、以下です。今月は主に DevOps について理解を深め実践しようとしていました。

  • 良かったこと
    • 目標にしていた書籍のうち二冊を読み終わった
    • 監視やオブザーバビリティの観点からシステムを考え、ビジネス KPI と技術的指標との結び付けを意識し始めた
    • 業務改善のために開発運用 MTG の変更した
  • 良くなかったこと
    • SRE に目標転換したが、まだ不明瞭な部分が多い

DevOps 関連の書籍は主に技術詳細について触れる書籍を読みました。 読み切ったのは「入門 監視」「オブザーバビリティエンジニアリング」です。 関連して、「オブザーバビリティ最前線 〜 事例 LT から学ぶ、オブザーバビリティの成熟度〜」にも参加しました。 この 2 つの書籍と勉強会を通じて監視やオブザーバビリティの定義、意味、要素について理解を深め、普段から DevOps・SRE との関連を意識するようになりました。 その結果 4 月時点では目標に含まれていなかった SRE の知識を拡充し業務に活かす必要性を実感し、自身がやりたいことであるという認識を持ちました。 現状、SRE をチームに導入するべき内容だと判断し、調査や計画しています。
しかし、SRE を学ぶため「SRE サイトリライアビリティエンジニアリング」を読み始めまたが、途中で読むのやめました。 内容が重厚で、1 人で読み進めるには限界があったからです。 本書は SRE の聖書的な立ち位置の本ですので、個人的に行っている勉強会の課題図書にして読み進めていきます。

同様に、DevOps そのものについて記事を書こうと思いました。 そのため、scrap の「DevOps を「The DevOps ハンドブック」「Effective DevOps」「システム運用アンチパターン」で比較」を zenn の記事にしようとしていました。 しかし、まだ記事にまとめられるほど知見を持っていないので、DevOps のカンファレンスである DevOpsDays をリサーチできていなかったので、記事の作成をやめました。

他には、業務では DevOps を達成できるような体制にするため、開発運用 MTG の進行方法の変更を提案しました。 進行方法の変更は同意できました、目標という面で認識の一致が難しかったです。 開発チームと運用チームが協業した目標を持つことによる効果や行動および結果が不明瞭だったり不一致だったりしたことが挙げられます。 数週間で決まるようなものでもないので、6 月も継続して取り組みます。

課題が現状 2 つあります。 1 つ目は職場で SRE をどこから導入すればよいのか答えを持っていないことです。 自チームや関連チームおよび部署に SRE チームが存在しないため、参考になるものが少ないため、ゼロからのスタートになっています。 2 つ目は、DevOps・SRE を実践するために必要な知識が何なのか理解していないことです。 ダッシュボードをどうすれば良いのか、低レイヤ的なことを学ぶべきなのか、チームビルディング的なことは何をすれば良いのか、こちらも知識ゼロです。 この目標の策定について 6 月に持ちこそうと考えています。

5 月の DevOps・CI/CD について、総評すると以下になりました。

  • DevOps と SRE を多角的に入門でき、自分のやりたいことが SRE よりなことも理解した
  • SRE を実践するために監視とオブザーバビリティについて学べた
  • まず DevOps・SRE を実践するために何が必要なのか調べる必要がある

CI/CD は DevOps・SRE に含まれることがわかりました。 そのため、6 月からの目標は DevOps・SRE になります。 まず、監視とオブザーバビリティのためにメトリクスとログの改善から始めます。 ほかの SRE については知識がほとんどない状態ですので、勉強内容の勉強から開始します。

6 月の OKR

今月の OKR の結果から、6 月の OKR を下記のように定めます。

注力分野 Objective(1 ヵ月度ごとの目標) Key Result(具体的な行動予定)
開発者テスト・プロダクトマネジメント 持続的な成長が可能にする開発者テストの理解を深めた状態、プロダクトマネジメントの知識をアップデートし続けている状態 業務のコードを「単体テストの考え方/使い方」で紹介された 4 つのプロダクションコードで評価する。可能であれば「フロントエンド開発のためのテスト入門」を読み終えている。プロダクトマネジメントの本を読んでいる
DevOps・SRE SRE の初歩的な内容を学んだ状態。業務において開発運用の目標を持っているか、DevOps の認識がとれており、より最適な状態に向かっている状態 SRE 本の勉強会を始める。開発運用間の目標を持つ

読書

今月も OKR 関連の書籍を読みました。 以下の書籍は、感想文を書きました。

  • プロダクトマネジメント―ビルドトラップを避け顧客に価値を届ける」
  • 「正しいものを正しくつくる」
  • 「オブザーバビリティ・エンジニアリング」
  • 「入門 監視」

また、感想を書いていない書籍は以下を読みました。

他に、約1年ぶりにオライリーのサブスクに入りました。 知識の幅を広げようとしているタイミングで利用するとあらためて便利だと思いました。

プロダクトマネジメント―ビルドトラップを避け顧客に価値を届ける」

msksgm.hatenablog.com

「正しいものを正しくつくる」

msksgm.hatenablog.com

「オブザーバビリティ・エンジニアリング」

msksgm.hatenablog.com

「入門 監視」

msksgm.hatenablog.com

技術記事の作成

記事の作成はしませんでしたが、scrap の更新や作成をしました。 主に DevOps・SRE 関連です。

zenn.dev

zenn.dev

その他

勉強会と技術書典に参加してきました。

「オブザーバビリティ最前線 〜 事例 LT から学ぶ、オブザーバビリティの成熟度〜」

connpass の勉強会の「オブザーバビリティ最前線 〜 事例 LT から学ぶ、オブザーバビリティの成熟度〜」に参加しました。 監視とオブザーバビリティの違いを理解するのに最適でした。 資料を以下の scrap にまとめましたので、気になる方は見てみてください。

zenn.dev

技術書典 14

技術書典にも行ってきました。 オフライン参加は 2 回目です。 初参加のときは、既刊も購入したので散財しましたが、今回は新刊の購入のみで支出を抑えられました。

techbookfest.org

5 月の振り返りまとめ

今月は勉強時間が減りましたが、理由も GW 中に 1 週間も旅行にいったためリフレッシュできたので良かったです。 総じて、勉強の方向性が変わってきた 1 ヵ月でした。 具体的には、ソフトウェアテストは開発者テストに、CI/CD は SRE になりました。 継続的な勉強によって対象分野の解像度が上がり、自分自身がやりたいことも明確になりつつあるので、良い傾向なのではないかと考えています。 しかし、本当にやりたいことはもっと技術的なコアな部分であり、いまやっていることはその前段階としてやるつもりでしたが、前段階を継続してしまっている状況です。 このように思い直した理由は、最近、会社の同期が退職することになり、キャリアについて考える機会があったからです。 本人と話をしたところ 10 年を見据えて行動していました。 今は 10 年のうち 3 年目である段階をクリアしており、次の段階に進むためのキャリアアップのための退職でした。 その話を聞いて刺激になった一方で、自分は 3 年後すら見据えられておらず、現状を継続して実践したとして、満足のいく結果になるのか判断できていません。 そのため長期的な観点から、目標を再評価して個人的な勉強からキャリアを考えないといけないと思いました。 来月は 6 月なので 3 ヵ月分の振り返りを行います。そのタイミングで長期的な視点についても考えます。