この事態に一時的に職を失った人もいると思うので軽々なことは言えないが、毎日流れる不況のニュースを聞いていて技術者にとって仕事とはなんだろうかといろいろ考えを巡らせたのでその内容を書きたいと思う。
ソフトウェア技術者として仕事をしているのであれば、個人の価値と組織の価値をできるだけオーバーラップさせ、かつ、大変だけれども楽しいと思える仕事をしたいと思っているし、このブログでそう書いてきたつもりだ。実際にエンジニアとして仕事をしてきた自分自身の22年間を振り返ると多くの時間がそうであったと思うし、それなりの満足感もある。
過去を振り返ったときに満足感を得るためには、その時その時に流されてしまってはいけない。ここぞというときにはこだわりを持って踏ん張らなければならない。逆風に立ち向かうシーンが必ずあるはずだ。しかし、皆いろいろな人間関係や社会状況の中で仕事をしているわけで、いつでも逆風に立ち向かうことができるとは限らない。自分自身が弱っているときや、自分の周りの環境が安定していないときは一時的に壁の陰に退避しなけれいけないときもある。
今のような異常な経済状況はまさに退避をしなければいけない時かもしれない。だから、こんな状況のときに言うのではなく、安定した社会環境のときに言えばよいのだけれど、普段からソフトウェア技術者はこうしているべきであるということをあえて書いておきたいと思う。自分の体力がみなぎっているとき、周りの環境が安定したときにこれから書くことを思い出していただきたい。
ソフトウェアエンジニアが他のエンジニアよりも不利な点は、成果が見えにくいことだ。組込みソフトの場合は最終的には製品ができあがるので、製品の外側に現れる機能や性能でソフトウェアエンジニアの成果を推し量ることもできるが、ソフトウェアはユーザーインタフェースに関わるところ以外の役目もたくさんある。それらの裏方のソフトウェア開発に携わったエンジニアの成果は見えづらいし、メーカーがソフトウェアを外部に発注している場合、協力会社が自分たちの成果が最終製品に搭載されていることを公に言えない場合もある。
ソフトウェア技術者のスキルレベルをITSSやETSSといったスキルスタンダードで表すこともできるようになったが、ETSSの場合は技術要素の部分は自分たちのドメインに必要な技術を自分たちで定義して測ることになっており、それができていない組織は数多くあるので、実際にはそのエンジニアの実力を表現しきれていないこともある。
成果が見えないということは、その技術者を評価する指標がないということだ。「彼は優秀だ」とか、「○○についての技術がある」などといった評価は、一緒に仕事をしている仲間や上司なら分かるが、いったんその環境を離れてしまうと、技術力や成果といったソフトウェア技術者にとっての鎧はすべてはがされ丸裸になってしまう。
そういったときのために一般的には資格というものがあるのだが、こと組込みソフトの場合は資格はある程度の指標にはなっても、「この人材を採るか採らないか」の決定的な判断には使えないと思う。
そういう意味で、ソフトウェア技術者がしておかなければいけないことは、自分がこの一年でどんな仕事をしたのかを記録して蓄積しておくことだと思う。10年選手ならば、これまでの10年分の成果が何かをいつでも説明できるようにしておくのだ。
成果が見えにくいからこそ成果を一目で見えるようにしておくことがソフトウェアエンジニアとしての鎧になる。この一年でどんな仕事をしたのか、どんな技術を習得したのかを実績のリストに記録する。毎年開催されるソフトウェア系のシンポジウムに投稿して採用された論文を成果として追記しておくのもよいだろう。
ソフトウェアエンジニアの成果が見えにくいというのはみな同じ条件だ。だから、同じ成果を持っているエンジニアが複数いた場合、これまでの成果をどれくらい分かりやすく表現できるかどうかで鎧のグレードが変わってくる。
組織に所属していても常に自分は個人商店なんだと思っている。だから、ウチの商店で扱う商品や他の店にはない特長や、他の店よりも優れているところは聞かれればいつでも説明できるようにしているつもりだ。そういう意味では、まったく転職する気がない技術者であっても、毎年年末に業務履歴を中心とした履歴書を書いてみるのは、自分の技術の棚卸しにもつながるのでよいことだと思う。
反省しないエンジニアは成長しないし、どんな業界でもプロフェッショナルは自分がした仕事が顧客を満足させているかどうか常に自問自答している。
ただし、冒頭にも書いたようにこのようなことを考えていいのは、自分自身の体調が万全であり、周りの環境が安定しているときだ。もしも、自分の周りで嵐が吹き荒れている人は、嵐が去るのをじっとまって晴れ間が現れたときに、自分自身の成果をどのように表現できるか考えて欲しい。