下林明正のブログ

個人的かつ雑多なブログです。

未来、人、コードベースの観点で考えていたソフトウェア開発へのアプローチ

ソフトウェア開発 カテゴリーの記事一覧 - 下林明正のブログに仕事っぽいことはよく書いてるけど、2023年はあまり書いてなかった。

2023年前半~中盤に関しては大まかには logmi.jp で話していた通りという感じなので、それ以降をふりかえるには良いタイミングだし忘れないうちに軽く書き出しておこうという気持ちになった。

未来、人、コードベースの3つの観点で主に考えていた

実現したい未来を考えて、その実現に不足していることは何か考えて埋めていく、というアプローチを基本的に取っている。

なので、実現したい未来に対して主に不足を感じているのが人やコードベースだったということだろう(あくまで「実現したい未来に対して」というところに注意)。

よく参照しているエンジニアリングマネージャ/プロダクトマネージャのための知識体系と読書ガイド #マネジメント - Qiitaの分類に当てはめてみるなら、

  • 未来=プロダクトマネジメント
  • 人=ピープルマネジメント
  • コードベース=テクノロジーマネジメント

と言えるかも知れない。

コードベース以外にテクノロジーマネジメントで考えることはあるだろうけど、単に今の主要な関心がそこにあるというだけだと思っている。他の分野についても同様。なので、将来的には変わっていくはずだし、変えていきたい。

プロジェクトマネジメントが登場していないのも多分そういうことで、自分がプロジェクトマネジメントを比較的得意にしていてそこに関してはある程度満足できる状況に改善できたつもりなので、主要な関心ではなくなってきているのだと思う。

未来

これに関してはオープンインターネットで語れることはあまり無いけど、どれくらい先の未来について主に考えるべきか考えるべき、という気持ちになることもあった。

例えば、食べ物が無くてめちゃくちゃ辛いという状況だとしたら、人生計画はどうしようとか悠長に考えている場合じゃ無くて、まずは目先の食べ物を確保することに注力した方が良いと思う(動物的だ)。逆に、人生計画について考えてみた方が良い状況というのもあると思う。

今、自分がどんな状況にあるのか、それを踏まえて何について考えるべきなのか、考えてみても良いと思う。

あとは、未来について定期的に話す機会を持つことも重要だと改めて感じた。思った以上に、話してみるとギャップがあることに気づけたり、逆にギャップがないことを確認できたりするものなので。

育成方針表というのを手元でつくって運用した。 内容としては、こういう理由でこの人にはこういう風に成長して欲しい、なのでこういうアプローチをしてみよう、というもの。 そして、育成方針表を見ながら会話する定例も実施した。

両方とも、普段から常に意識して仕事するのは難しいので、意識的に視点を切り替えようとする試みだったと思う。 もう少し言い換えると、普段は「現在」に着目しがちなので、意識的に「未来」に目を向けるように仕組み化した、ということだったと思う。

そして育成について考えていて気付いたこととして、SL理論的な関わり方は前提として、形式知を流し込む→経験させる→暗黙知を獲得していってもらう→自立させる、という流れを強く意識し始めた。

この中でも重要視しているのは「型」で、型というのは形式知のエッセンスだと感じている。 特にリーダーシップの発揮について関心があったので、例えば以下のような型をまとめていたりした。

shimobayashi.hatenablog.com

他には例えば、開発プロセスについて話すときは未だに

scrapbox.io

を良く参照している。

手前味噌的な型の紹介に比重が寄ってしまった。本来は、世間一般の型に寄せた方が無難だと思う。ただ、自分が不勉強なせいなのか分からないけど、世間一般の型が分からないときには自分自身の経験を形式知として抽出するのはやってもいいと思う。世間一般の型も最初はそうして生まれた物だろうし。

こういうのは守破離と言ってしまっても良いかも知れない、再発見ですね。

「人を育成できるというのは傲慢だ」みたいな言説もたまに見かける気がするけど、メンバーシップ型雇用をやってる限り避けられない問題だと思うし、自分自身も育ってきたし育てられてきたという自認がある。 一方で、人が急に育つことは稀で、全く変化が無いということも稀という印象もある。 なので、気長に取り組んでいくべきトピックなのだと思っている(これはつまり、急ぐなら育成に軸を置いてはいけないということでもある!)。

コードベース

コードベースに限らずテクノロジーマネジメントに関しては自分が明るくないところなので、アプローチに難儀している(だからこそ主要な関心として残っている)。 一方、別に自分だけで全部やらなきゃいけないわけじゃないので、テックリードとタッグを組んで取り組んでいた。

これに関しても「人」と同様の理由で、技術的方針をテックリードと一緒にまとめた上で、定例を実施して未来視点に意識的に切り替えるようにしていた。

そうして状況を進めることはできたけど、最近はまた スクラムで余白をつくるにはどうするといいのか - 下林明正のブログ に書いていたような問題が出てきたなと思っている。 これはこれでどうするか考える予定。

演繹と帰納

一歩引いて、少しメタにふりかえってみる。

2023年に読んでから良く思い出すエントリーとして、

ashiki-feelings.blogspot.com

があった。 サッカーのことも数学のことも全然知らないけど、演繹と帰納という分類が強く印象に残っている。

ここに書いた自分の考え方を分類するなら、きっと演繹なのだと思う。 別にこれに限らず、自分は演繹的なアプローチを好む性格だと思っている。

ただ、メンターと話していて「下林さんの演繹的な姿勢は基本的には正しいと思うけど、それがうまくいかなかったときにも演繹的な姿勢に拘りすぎるところがあるよね」的なことを言われて、以前からそれは本当にそうで、自分が抱える問題だと改めて認識するようになった。

なので2024年は、うまくいかないことが出てきたときに帰納的な考え方で頭の中のモデルを更新できるようになりたい。 うまくまとまりましたね。