今日も2020年のふりかえりをしていきます。
今日は、今年一年で自身に起きた変化に着目してふりかえりを実施していきたいと思います。
ソフトウェア開発が楽しいと感じられるようになってきた
今年のはじめ時点では、ソフトウェア開発は自分にとって苦しいものでした。
顧客の課題を見つける所まではやり甲斐を感じるのですが、自身の手でいざ作ってみると、事前に立てたスケジュール通りに進まない, デグレが発生して障害が起こる...上手くいかないことばかりだったのがその理由です。
また、今年までの3年間の6~7割の時間を費やした手動テスト(手打鍵用のテストケース作成&手打鍵)もソフトウェア開発を苦しくしている要因でした。(スキルアップに繋がっている気が今一つしない, テストでバグが見つかり炎上する)
しかし、コミュニティに参加したり本を読んだりしていく中で、少しずつ物事がいい方向に向かうようになり、ソフトウェア開発が楽しいものになってきました。*1
具体的には、以下の出来事がありました。
- 及部さんの講演を聞いて不確実性への考え方が大きく変わりました(分からないことを如何に潰すのかではなく、分からないことと如何に上手く付き合うか、とい う発想に変わりました)
- ブロッコリーさんの講演を聞いて、Agile Testing Condensedを読み、テストに対しての印象が大きく変わりました。
- CSM研修や研修に向けた勉強をしていく過程で、自分が今まで当たり前にやってきたことを見直しました。
- これまで殆ど読書してこなかったのですが、アジャイル開発を中心に多数の(100冊位?数えた所、今年の6月~300冊位本を買っていましたが、積読が大量にあるので良く分からず...)書籍を読みました。(社会人生活で殆ど使ってこないで堅実に貯めていた貯金は吹き飛びました)
特に、以下の書籍は参考になる部分が多くて、書籍で読んだ内容を現場で活かせた実感がありました。
みんなでアジャイル ―変化に対応できる顧客中心組織のつくりかた
- 作者:Matt LeMay
- 発売日: 2020/03/19
- メディア: 単行本(ソフトカバー)
- 作者:Robert C.Martin
- 発売日: 2020/10/03
- メディア: 単行本
レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス
- 作者:David Scott Bernstein
- 発売日: 2019/09/19
- メディア: 単行本(ソフトカバー)
実践テスト駆動開発 (Object Oriented SELECTION)
- 作者:Steve Freeman,Nat Pryce
- 発売日: 2012/09/14
- メディア: 大型本
リファクタリング(第2版): 既存のコードを安全に改善する (OBJECT TECHNOLOGY SERIES)
- 作者:Fowler,Martin
- 発売日: 2019/12/01
- メディア: 単行本
レガシーコード改善ガイド (Object Oriented SELECTION)
- 作者:マイケル・C・フェザーズ
- 発売日: 2009/07/14
- メディア: 大型本
SCRUMMASTER THE BOOK 優れたスクラムマスターになるための極意――メタスキル、学習、心理、リーダーシップ
- 作者:Zuzana Sochova
- 発売日: 2020/09/09
- メディア: 単行本(ソフトカバー)
エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド (Object Oriented Selection)
- 作者:Kenneth Rubin
- 発売日: 2014/07/08
- メディア: 大型本
- 作者:Jonathan Rasmusson
- 発売日: 2011/07/16
- メディア: 単行本(ソフトカバー)
- 作者:ベック,ケント,アンドレス,シンシア
- 発売日: 2015/06/26
- メディア: 単行本
現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法
- 作者:増田 亨
- 発売日: 2017/07/05
- メディア: 単行本(ソフトカバー)
エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)
- 作者:エリック・エヴァンス
- 発売日: 2011/04/09
- メディア: 大型本
アジャイルレトロスペクティブズ 強いチームを育てる「ふりかえり」の手引き
- 作者:Esther Derby,Diana Larsen
- 発売日: 2007/09/01
- メディア: 単行本
ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション
- 作者:ThoughtWorks Inc.
- 発売日: 2008/12/27
- メディア: 単行本(ソフトカバー)
オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
- 作者:アラン・シャロウェイ,ジェームズ・R・トロット
- 発売日: 2014/03/11
- メディア: 単行本(ソフトカバー)
- 作者:Jr FrederickP.Brooks
- 発売日: 2014/04/22
- メディア: 単行本(ソフトカバー)
- 作者:ジェフ・サザーランド
- 発売日: 2015/06/24
- メディア: 単行本(ソフトカバー)
- 作者:パトリック・レンシオーニ
- 発売日: 2003/06/18
- メディア: 単行本
- 作者:パトリック レンシオーニ
- 発売日: 2002/03/16
- メディア: 単行本
正しいものを正しくつくる プロダクトをつくるとはどういうことなのか、あるいはアジャイルのその先について
- 作者:市谷聡啓
- 発売日: 2019/06/14
- メディア: 単行本
Running Lean ―実践リーンスタートアップ (THE LEAN SERIES)
- 作者:アッシュ・マウリャ
- 発売日: 2012/12/21
- メディア: 単行本(ソフトカバー)
スクラム現場ガイド -スクラムを始めてみたけどうまくいかない時に読む本-
- 作者:Mitch Lacey
- 発売日: 2016/02/27
- メディア: 単行本(ソフトカバー)
オブジェクト指向UIデザイン──使いやすいソフトウェアの原理 (WEB+DB PRESS plusシリーズ)
- 作者:ソシオメディア株式会社,上野 学,藤井 幸多
- 発売日: 2020/06/05
- メディア: 単行本(ソフトカバー)
[改訂第2版] [入門+実践]要求を仕様化する技術・表現する技術 -仕様が書けていますか?
- 作者:清水 吉男
- 発売日: 2010/05/01
- メディア: 単行本(ソフトカバー)
- 作者:エリック・リース
- 発売日: 2012/04/12
- メディア: 単行本
このような変化が起きたのは、ソフトウェア開発に対して向き合ってきた方々のエピソードを数々のコミュニティ, カンファレンス, フェスで聞いて、心の底から尊敬&感動できたのが理由だと思っています。
読書するようになった
「ソフトウェア開発が楽しいと感じられるようになってきた」の項目についてふりかえりをして気が付いたのですが、めちゃくちゃ本を読むようになりました。
社内でチームが再形成されたタイミングで、体系的な知識を基に自身が当たり前だと思っていたことをどんどん壊す先輩に巡り会えたことや、社外のコミュニティに参加したことで、自身の知識量の少なさを自覚できたのがきっかけだったのかな、と思います。
ただ、せっかく本を読んでも、現場で実践できなければ投資対効果が薄いので、インプットとアウトプットのバランスは今も悩んでいます。
今年読んだ本の内容を思い出せるか今日一日でテストしていたのですが、11月までに読んでいた(アウトプットを意識せずに読んでいた)殆どの本は断片的にしか内容を思い出せず、果たして費用対効果に見合っているのかは疑問です。。
社外で活動するようになった
社外で活動することで、これまでにない考え方や聞いたことのない知識に触れました。
新しい知識や考え方に触れるのは楽しくて、成長速度が一気に上がった感覚がありました。
この辺の話は以下の先日の記事に詳しく書いたので詳細は省きます。
アウトプットすることへの抵抗がなくなった
自分以外の外部の人が見る可能性がある媒体でアウトプットすることには抵抗がありました。*2
しかし、自分と同じ年次でも当たり前のように知識をアウトプットしている人たちや、ポジティブネガティブ関係なく、フィードバックを喜んで貰いにいく人たちを見て、思い切ってアウトプットをし続けた結果、アウトプットすることに対して抵抗が大分薄れました。
最後に
2020年のふりかえりは、予定していた1週間実施できたので、今日で一区切りしたいと思います。
これまでも"振り返り"は毎日していましたが、毎日ネガティブなこと(自身の課題や上手くいかなかったこと)に注目していたこともあり、お世辞にも楽しい時間ではありませんでした。
しかし、ふりかえり実践会のイベントに参加してふりかえりAdvent Calendarに登録したことをきっかけに、びばさんのふりかえり関連の記事を読んだりふりかえりAMのPodcastを聴き、ふりかえりの楽しさに気が付き出しました。
今後も日常生活に自然にふりかえりを入れ込んで、良いふりかえりライフを送っていきたいと思います!
*1:プロダクトをずっと支えてきた有識者がチームからいなくなる&チームが再構築&障害が多発という状況からスタートしたが、去年より顧客に感謝される機会が増えた, 課題VS課題に関連するステークホルダー全員(顧客, チーム, 営業...)という構図で課題に立ち向かえるようになった, チームの壁がなくなってチームメンバーが生き生きと働いている(ように見えるようになった), TDDやDDD, オブジェクト指向といった知識を学びながら保守しやすいコードについて考えた, 顧客との対話や継続的なテストを通して新たなソリューションを考え付いた等々...
*2:コミュニティに参加して自身の未熟さを痛感した後は特に抵抗がありました