mcommit's message

ソフトウェア開発の仕事をしているsimotinといいます。記事の内容でご質問やご意見がありましたらお気軽にコメントしてください\^o^/

組込みプログラマかを見分ける10の質問

Androidの勉強をしていてこんな記事を見つけたので、組込系で仕事をしている経験から戯れに、

「組込みプログラマかを見分ける10の質問」

を考えてみました。

といってもこの記事を書く時に1〜10まで考えたのではなくて、
派遣で来てくれる人のスキルを見るために、面接の時にしていた質問(自分なりに考えた)
をベースにして書いてみました。


1.組込みソフトウェアの開発で、C言語のmain関数以前にしないといけないことについて2つ以上教えて下さい。

2.以下のコードAとコードBのような違いについて思ったことを述べてください。
コードA


if ( function() == 1) {
// 処理
}

コードB

int ret;
ret =function();
if ( ret == 1) {
// 処理
}
※if文の書き方の違いについての考えを知りたいという意図です。

3.組込みソフトの開発において、一通りのコーディングが
終わってからしなければならないことは何でしょうか。
デバッグ・テストはもちろんですが、実装に関することで。

4.デバッグビルドとリリースビルドで動作が異なる場合に何をしますか。

5.const修飾子をつけた変数とつけていない変数の違いについて説明してください。

6.RISCCISCの違いについて説明して下さい。

7.16ビットのタイマに20MHzを供給する場合、カウントできる最大の時間を教えて下さい。

8.Itronのタスク間通信の手段としてどのような手段があるか説明して下さい。

9.OSのタスク(スレッド)ディスパッチャがしなければならないことを教えて下さい。

10.ビットフィールドを使うメリットについて説明して下さい。


後半は今の自分が思いつくままに書いてみました。ちょっと無理やりな感じもします。。
こんな質問をしてそれなりに回答や反応が得られれば、かなり安心して開発に参加してもらえるのではないでしょうか。

実際にはハードのこともちゃんと理解していないといけないと思いますが、現場ではハードもソフトも完璧!な人はなかなかお目にかかりません。※もちろん自分も含めてです。

日々勉強ですね。