後工程の悲哀

組込みソフトウェア開発 基礎講座」 P18

ほとんどの組込みシステム開発では、ハードウェアの上にソフトウェアを載せてうまく動くのかといった検証をソフトウェアエンジニアが行っています。それは、ソフトウェアエンジニアのほうがシステム全体の動作についてハードウェアエンジニアよりも詳しく知っているということにほかなりません。
しかし、ハードウェアに起因する問題も数多く発生する中で、なぜソフトウェアエンジニアが中心になってインテグレーション作業をするのかについては疑問があります。

あるある。今の会社も何かトラブルがあったらまずソフト担当者に報告が来て、ソフト担当者がいろいろ調べてみたら回路の配線間違いだったり、論理回路が反転していたりというのが通常の流れになっている。
ソフト屋のほうがシステム全体を詳しく知っているのは、ハードウェアを知っていなければハードを制御するソフトは設計できならないから。逆にハード屋はソフトを知らなくても設計できるし、出来たモノをソフト屋に渡してしまえば自分の仕事は終わったと感じる。
それ以外にもハードウェアのコスト削減をソフトウェアが負担したり、ハードウェア工程の遅れをソフトウェアが負担したり、ハードウェアの設計ミスをソフトウェアが負担したり。前工程であるハードウェアの泥を後工程であるソフトウェアがかぶることは多い。

にもかかわらず組込みソフト屋の待遇がハード屋より良いというわけでもなさそうである。(むしろ、ソフトがハードのおまけだった時代を引きずっている企業ではソフト屋の方が地位や給料が明らかに悪いこともあるらしい。)おっと、こんなこと書いたらまた組込みソフト技術者が減るかな。

http://www.atmarkit.co.jp/fembedded/special/mtg0601/mtg0601a.html
http://www.atmarkit.co.jp/fembedded/special/mtg0602/mtg0602a.html

http://www.atmarkit.co.jp/fembedded/special/mtg0601/mtg0601a.html より

IT系とは全然違うと思いますよ。根本的に分かってもらえていないんだなと感じることもあります。納期は決まっている、ハードが遅れる、でも納期は変わらない、ソフトで何とかしなさい……というのがいつものパターンです。ソフト屋はソフト屋なりに、何をしなければならないか頭の中で考えてはいるのですが、ハードが遅れると開発の期間だけが短くなって、最後はどこを削るかという話になってしまう。また、作っている側としては問題があると分かっていても、いったん動いているところを見せてしまうと、動かなくなった状態を見せるまでは、完成していないということを分かってもらえない。分かってもらえないつらさ、目に見えないもののつらさはありますね。

組み込みってね、一種の階級社会なんですよ(笑)。ハード屋が一番偉い。ハード出身の人がどんどん出世する。しかも、頭でっかちで、分かってくれなかったりする(笑)。ハードは基板を改版するとお金が掛かるので、すごく嫌がるのですが、ソフトの仕様変更は平気。人件費は開発コストだと思っていないんですよ。

これ、たかだか1年前の記事なので今も事態はそれほど変わってないと思われる。