こんにちは。
システムチームのTです。
8月中旬からの3ヶ月ほど、タスクの達成率が良く、
その良い状態を上司の助けもあって維持してきました。
達成することが当たり前となり、
良いサイクルに入っているという実感がありました。
以前と比べて自分で考えて動けており、
周囲のことに気を配れるようになってきていたためです。
ですが、10月の下旬から徐々に崩れていき、現在は悪い状態に陥っています。
なので、このタイミングで、
以前までなぜうまくいっていたのかを考え、ブログにまとめます。
自戒と、これから同じような状態になる方への参考になればと思います。
良い状態の原因
まず前提として、完全に自分の力だけで良い状態を維持していたわけではないことを明記しておきます。
かなり助けていただいてようやく維持できた状態です。
以降、その前提のもとで、
良い状態に持っていく、または維持できた原因を考えます。
第一に、行う自主課題のレベルが上がったことがあります。
状態が良かった期間の8月から10月半ばまで、JavaScriptでオセロを作っていました。
これが、かなり難しいものでして、
それは、
本質を突いた(=例外処理の記述を最小限に抑える)論理を
考えることに由来するものです。
書く前に頭の中で考えるということを今まで一番多くやったと思います。
そういうわけで、書く前に考えること、
そして本質を突いた論理を考えること、
ひいては美しいコードを書くこと
というのを体験し、強く意識するようになりました。
これが、日々の業務の中でも当たり前のこととなっていき、
コードを書くときの姿勢が変わったことが大きいと考えています。
第二に、書く量を増やしたことがあります。
社内で使っているブレインマップというツールに書き込む量(=ノードの量)が増えました。
書く前に考えるたことをメモする、
業務中の考えを脳内をそのまま出力するように書き出す、
といった動きによって書く量が増えました。
考える時に、考えたことを書きだすのは、
いま考えていることを客観的に見ることができるので有効なやり方だと聞きましたが、
それをこの時は実践していました。
なので、動きが変わって、それが他のことに影響を及ぼしていたと考えられます。
悪い状態の原因
では、なぜ、自分の状態が悪くなったのか。
その原因を極めて単純に考えるなら、
良い状態の時に行っていたことをしなくなったからと考えるのが道理です。
ですが、これだけではないと思います。
自分が思うに、今の自分では通用しないフェーズにきていることだと思います。
プログラマーなので、コードのことから考えます。
今までは、思った通りに不具合なく動くコードかどうかというところにいたのが、
8月以降、そのコードが本質を突いたものかどうかということを考えるようになりました。
ここで突き当たるのが、コードの話ではなく、
もっと根っこにある、何のためにそれを作るのかということだと思います。
つい昨日、チームの週次ミーティングで代表から指摘いただいたことなのですが、
自分は単純なものに飛びついているだけ
なのです。
つまり、複雑な問題に対応できないことが大きな原因となっているのです。
これまで、ある程度明確なことが多い状態で成功率が高かったことからも明らかです。
なので、うまく当面はうまくいっていたときにやっていたことを、
複雑な問題に対応できる形に落とし込んでいくことで、複雑な問題に対応する力をつけるようにします。
いま、自主課題でTODOリストを作っているのですが、
どう使うかを考慮するようにして作っています。
このやり方で変わらない場合は、別の方法をためして、
この状況を乗り越えます。