特定分野での経験年数という指標2007年11月09日 21時14分57秒

実は私は組込みシステムソフトウェアの専門家を自称している割には、μITRONでのアプリケーションの開発は皆無と言っても良い状況です。

この状況について久々に突っ込みを入れてくれた会社の開発責任者がいました。「するどい!!」と思ったのと同時に「この会社は大したことない!!」と思ってしまいました。

人って何でも分類したがる傾向にあります。内容が良く分からなければ分からないほどその傾向が強いんです。

例えばこれも別の会社で「ATAPIインターフェース関連の開発経験は?」と問われたことがあります。私の実務経験的にはありませんので、「経験なし」としか答えるしかないですね。世の中にそんなにいろんなインターフェースやらチップの経験のあるエンジニアがいたとしたらそっちの方が異常で経歴詐称でもしていると考えるのが普通なのに、こういう質問をする人たちって、少し能力に問題があるとしか考えられないです。

話をOSの話に戻すと、組込みシステムの開発において必要なのはさまざまなOS上でのアプリケーション開発経験などではなく、その時々に変わるプロセッサの挙動を睨みつつ、どれだけ効率的にCPUを無駄なく使う設計を行えるか、という「視点」なんです。はじめて出会うさまざまなインターフェースの実装を行うというようなその時々の課題に対しての問題解決能力も必要。μITRON上でのアプリケーションの開発経験が例え10年あろうと、駄目なシステムばかりを構築してきた例は山ほどあります。単なるアプリケーションタスクの開発経験なんてそれ程重要ではありません。そういった視点もなしに単なる経験年数でカテゴライズするから、正常な人材の見極めが出来ないんですね。

まともな力のあるエンジニアなら、「この経験はこちらの経験でも応用できて即戦力なる」というように拡張判断ができるんです。その判断の仕方で他人の評価が出来ないエンジニアはもう既にその判断をしてしまった時点で技術力がないことを自覚すべきです。

つまり、カタログスペックに右往左往するというところが素人ってことです。

ある会社のプロジェクトマネージャでワンチップマイコンなどでの開発経験のない業務系のエンジニアを組込みの現場に投入した人がいます。彼はそういう意味で技術の本質の見極めができる、かなり優秀なエンジニアだと思います。

Symbian OSって結構好きかも・・・2007年11月15日 14時44分09秒

私のこれまでの開発経験の中でSymbian OSっていうキーワードが出てくるプロジェクトがふたつ程あります。

それが記述された経歴書に基づいて携帯電話の開発プロジェクトのメンバー参加の面接を最近受けました。

正直言って、携帯電話の開発経験があって、Symbian OSというキーワードを書いていたのではなく、きちんと「エミュレータ上での開発」とかターゲット環境がSymbian OSであるというだけで、単にアルゴリズムを提供するライブラリを作ってた、というような程度の話なわけです。本格的な経歴があるように見せかけるために経歴を詐称した覚えもないのですが、どういうわけかそのキーワードだけで拾われて面接に呼んでくれたのだと思います。

これって、まさに「カタログスペック」だけで人を選んでいる典型です。

過去にSymbian OSに関わったときの記憶では特にOSのカーネルの概念などには触れるまでもないような程度の開発でしたので、余り興味も示さなかったのですが、面接対応をした責任者らしきエンジニアが余りにもお粗末なので逆にSymbian OSについて探求する気持ちが湧いてしまいました。

この責任者らしきエンジニアは恐らくSymbian OSでの開発しか行っていないらしく、他のOSとの対比で物事を説明したり、他の開発経験との対比でこれからの仕事の行い方を問い掛けてくるようなことを行いません。というかそのようなことを行うべきだということを思っても見ない、というような感じです。また、Symbian OSのすばらしいところでさえ理解していないような気すらします。

例えば彼は「オブジェクト指向設計ができるか」とか「オブジェクト指向設計ができるって言っておきながらやらせてみると出来ない人が多いんだよね」とか「リアルタイムOSでの開発経験はどれくらいある?」とか「自分でコードを書いた量は何ステップくらい?」とかそういったことしか問い掛けてきません。

それって単なる時間とか量を問い掛けているだけで、理解しているとか、設計できるとか、開発できるとかの指標にはならないですね。 特に設計については単に「オブジェクト指向設計」という言葉だけでもいろんな開発現場で同じ言葉が使われていることでしょう。でも共通なのは言葉だけで、実際には設計概念や設計の視点が異なっていることが多いし、作成するドキュメントの種類や質は大きく異なっているのが当たり前です。つまり、このような問題は文化に依存する話なわけです。記述の仕方としてのUMLは共通であっても本当の意味で意思伝達が間違いなくできるわけではないんです。

「できるって言っておきながら出来ない」というのはその個人の想定とは食い違っていることであり、何も説明せずに単にやらせれば「出来ない」のは当たり前の話なんです。

こういう人間が責任者として、あるプロジェクトを運営しているのかと思うと日本のソフトウェア開発の将来が心配でなりません。

この開発現場はSymbian OSを使って携帯電話の開発を行っているわけですが、単なるユーザインターフェースやアプリケーションの実装なんだから「組込み」じゃないよな、という意識を持っていたというのも正直なところです。しかしですね、それは大きな認識違いだということが他の方の解説でやっとわかりました。

こちらにSymbian OSの思想とか概念とかが解説されているのですが、間違いなく、Symbian OSは「リアルタイムOS」だということが分かりました。しかもオブジェクト指向とリアルタイムOSの実装を非常にきれいにまとめたすばらしいOSであり、フレームワークだと思います。

私は常々、オブジェクト指向とμITRONなどのリアルタイムOSとは相性が悪いよな、と思っていたのですが、見事に解決してくれていると思います。但し、開発対象としてCPU性能が高く、メモリが比較的贅沢に使用できるという機器が対象であるという点での認識は間違っていないと思います。

Symbian OSの概要をこれだけ簡潔にまとめていただいたおかげで、新しい世界が開けた気がします。開発現場の責任者がそのメンバーを募るときの面接ではこういう説明を心がけて欲しいものです。そうすればプロジェクトの根底の思想的なところもある程度分かってもらえるし、対応できるエンジニアの裾野も広がります。

ということで、とんでもなく印象の悪い面接をしてくれた彼には感謝しています。

そうそう、この面接をした会社って、Cのペーパーテストをその場でさせるんです。ある課題の条件を満たす関数をコーディングさせるんですが、まさにペーパーテストで紙の上に鉛筆で書かなければならない。修正する場合は消しゴムで消して書き直す。せめてパソコン持ってきてテキストエディタで入力させる位の配慮は欲しかったですね。

ALWAYS 続・三丁目の夕日版ゴジラ2007年11月19日 07時51分35秒

映画観た人は分かると思いますが、よく出来ていて面白かったですね。

丸々一本ALWAYS版ゴジラ作品やってもらうともっと楽しいと思います。

似顔絵を描かせる会社2007年11月23日 14時19分18秒

先日応募した会社の試験ですが、一般的なSPI試験的な試験に加えて「自分の似顔絵」と「マグカップ」の絵を描かせる会社がありました。

変な会社で意味不明だけど結構変な会社の中では好きな方かも。

最近ではニンテンドーDSの脳トレで絵を描かされたことがあるくらいで、何十年も絵なんか描いてないのでへたくそでしたねぇ。

電信八号とウィルスセキュリティゼロ相性問題解消2007年11月23日 23時24分23秒

Windows2000環境での電信八号とウィルスセキュリティゼロの相性が悪い問題ですが、本日時点でのバージョンでは問題がないことを確認しました。

以下、正常動作を確認したバージョンです。

  • 電信八号:32.1.6.1
  • ウィルスセキュリティゼロ:9.4.02.07(2007-11-23)
  • Windows2000