リスキリングのすすめ
イノベーション開発部の大島です。忘年会、新年会をしたかと思えばもう1月の終わりが見えてきました。光陰矢の如しといいますが、時間の流れは早いものですね。今回の写真は自宅に飾っている正月飾りです。1月いっぱいは飾るつもりではありましたが、さすがにそろそろ片づけないといけませんね笑。
さて、皆様は就職してから、あるいは資格を取得してからどれ位の年月が経っていますでしょうか?私は職業プログラマとして20年仕事をしています。今回はそんな私がリスキリングの一環としてもう一度ソフトウエア開発の基礎を学びなおした時に感じたことをお話ししようと思います。
とはいえ、大層な目的があって学びなおしを始めたわけではなく、はじめはなんとなく最近手詰まりが多いなとか、クラウドの開発を行っていくに当たって今までの手法がなんとなく通じないなといった小さな棘のようなひっかかりが少しずつ積み重なってきたと感じることが多くありましたので、改めて開発とはといった原点を見つめなおすきっかけ作りとしてリスキリング講座を受講してみました。
細かい受講内容は今回は触れませんが、内容としては 要求分析(顧客の要求に対してソフトウエアで実現可能な内容を明確化すること)、設計(要求をシステム化し、その仕様を外部、内部のふるまいを具体的な処理に落とし込むこと)、実装、テスト、運用保守といった基礎的な内容を中心に学び直しました。
受講した結果として感じたことは、毎日の作業を行っていくうちにある種の最適化が行われて行ってしまった結果こそが棘の原因であったのではないかということです。講義の最中に講師の方が「KKDは最適化していくうちに自然とでてくるものではあるが、それは実は最も最適化できていない原因」といった話をされていました。このKKDとは、「勘、経験、度胸」の頭文字をさしています。つまり、作業の蓄積から考えずに作業することが可能になっていくことで一見効率化しているように見えますが、自分一人であるならいざ知らず、チームで行う際にはマネジメントできない概念という邪魔な存在である上に、言語化しないことで他者と共有できないものだと言っておられました。実はこの「他者との話し合い」こそが重要であり、例えば要求分析の際に関係者との話し合いやテストをもっと早い段階で実施することで関係者間の話し合いが生まれることこそが重要といった当たり前のようであまり理解していなかったことが学びなおせたことは良かったです。また、実務に関してもテストを行う際に過去の経験から当たり前に問題となりそうな事柄や俗にいう臭そうな事柄に関する処理を中心にテストを行っていましたが、今回の研修で理論的にテスト項目の洗い出しを行ったところ、より効果的・効率的にできる可能性も見えてきました。業務の見直しという意味でも理論的な見直しは有効であることが理解できました。
さて、士業の皆様にとってのリスキリングはどういったものが最適かはわかりませんが、一度学生の頃に戻ったつもりで理論的な振り返りを行ってみると、思わぬ気付きがあるかもしれません。もっとも国家試験の狭き門を潜り抜けた皆様にとってはあんな受験地獄を思い出すのは嫌だとなる方もいらっしゃるかもしれませんね笑。