ソフトウェアアーキテクトが知るべき97のこと | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

ソフトウェアアーキテクトが知るべき97のこと/著者不明
¥1,995
Amazon.co.jp


冒頭の「はじめに」で書かれていますが、この本では世界的に活躍し、経験豊富なアーキテクトたちが技術面から具体的にアーキテクチャを語っているものではありません。

ただ、その豊富な経験からアーキテクトというものはどういった考え方を持っているべきか、視点を持つべきか、どんな問題にとらわれるべきではないかが書かれています。

技術的な解決策だけを考えてはいけないとか、ビジネスサイドの視点を持つこととか、複雑なことに対してシンプルな解を見つけようとか、問題だけにとらわれてはいけないとか、変化に柔軟であれとか、それは実際の仕事の現場で見聞きしたことの総集編かもしれません。

ただ、それは長年のソフトウェア開発の経験を持った人たちの言葉ですから、とても重く響くものでもあります。


今現在、プログラマーとして最前線でソフトウェアの開発に携わっている人でも、年月とともにより上流の工程に対して責任を持つことになってくることになるでしょう。

そのときに単にシステムの設計をする人として責任を持つのではなく、ここに書かれているような幅広い知識を持つことが重要になってくると感じます。

それは、単に自分の対応範囲のシステムを作り上げるということだけでなく、システムアーキテクトがより多くのデベロッパーやプロジェクトオーナー、そしてそのサービスの利用者にまで、与える影響がとても大きくなってくるからです。


システムを構築するにあたってのコアとなる開発言語や開発環境、フレームワークやビジネスロジックにいたるまで、技術面の課題でさえも単に自分のエゴや経験だけで簡単に台無しになってしまうことがあります。

ここで紹介されているアーキテクトは、その怖さというものを自らの経験とともに知っているからなのかもしれません。


システム開発のデザインパターンがあるように、プロジェクトの進め方やシステムの設計方法(それは、単にシステムを作るというだけでなく、ビジネスそのものを作るというところまで)にも、同じように長年の経験を辿れば似たような問題や課題というものにぶつかるということが、各アーキテクトの意見を読んでみてよくわかります。

そんな、現場で実際に経験した結果により導かれた意見そのものを受け入れることで、私たちも同じ過ちを繰り返さないための貴重なインプットとなると感じます。