ソフトウェアの価値

自分がソフトウェアエンジニアとして生み出している価値ってなんだろう?ということを考えていた時期があります。

SIer時代は新しい技術を使って今までできなかったことを実現するというよりも、生産性の向上によるコストダウン、もしくは同じコストでより多くの物を作れるようにするという課題に対して新しい技術を導入したり、プロセスを改善したりといった試行錯誤を繰り返していました。

生産性が競合に対するアドバンテージだとすると、それはソフトウェアそのもではなく、エンジニアリングが価値を産んでいたということになります。そう、僕たちはソフトウェアを作っているのに価値を生み出していたのは作っているソフトウェアそのものではなかったのです。

また、ときにはミドルウェアの検証や解析を行っていたことがありました。なかなか高度な技術力を要求される興味深い仕事だったのですが、これも自分たちで作り上げたソフトウェアが価値を提供していたわけではありませんでした。

このことに気付いたとき、自分の中にちょっとした違和感が生まれました。僕が本当にやりたいのはエンジニアリングで価値を提供することではなく、それ自身が価値を提供するソフトウェアを作ることだということに気付いたのです。

フレームワークツールを選定したり、チーム体制や開発プロセスを工夫してプロジェクトをうまく進めるというのはエンジニアリングの世界です。僕は仕事ではずっとそういうことをやってきたのですが、一方ですでにある道具を使いこなすだけでなく、自分自身が価値を提供するソフトウェアを作りたいという思いがあり、それがOSS活動のモチベーションになっていたのではないかと思います。

そんなわけで、これからも公私問わず価値を提供するソフトウェアを作ることを目標にコードを書き続けていきたいと思います。