• ベストアンサー

組み込み技術者の方々へ質問させてください。

この私の質問をご覧になっていただきありがとうございます。 現在20代の男です。 今回の質問させていただく内容はどうすれば一人前の組み込み技術者になれるかということです。 現在、組み込みを行っている会社で働いていますが、なかなか進歩しません。(そろそろ5ヶ月目になります) 最初は組み込みで使っている言語もあまりわからないレベルから始めたわけですが、いまだに言語や組み込みの処理等がよくわかりません。 最近は何を勉強すればいいのか?が整理つかなくなってきて頭の中がパニック状態になってしまっています。 嫌いではない分野なのですが、自分自身が早く一人前になろうと焦ってしまっているのかもしれません・・・。 そこで、現在組み込みの仕事を行っている方はどのようにしてそこまでの技術を身につけたのかを教えて欲しいです。 また、それにあたってのいい本やサイトなどがありましたら教えて欲しいです。 やる気はありますので、どうかよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • engine
  • ベストアンサー率48% (15/31)
回答No.7

そうですね 慣れは必要です とは言えそれを待っている事は許されませんよね 最大の情報源はplayersさんの社内での先輩と先輩達の作った製品とドキュメントですよね 開発がそこで行われ情報も総て集約されている訳ですから それが無理なら 安価なツールを購入して自力で埋めることになります ただ 仕事でやるときより効率は悪いですが 私なら サンハヤトで出しているH8TINY(04年トラ技の付録の上位バージョンとマザーボード それにE8エミュレータ)でなにか作ってみる 温度制御(ヨーグルト 甘酒製造 温室制御)とか赤外線センサーで防犯 豪雪地帯なら積雪計とか 興味があって実用的な簡単なものから

players
質問者

お礼

再び回答ありがとうございます。 engineさんのおっしゃるとおり慣れるのを待ってはいけませんね。 今も毎日自分の中でアウトプットを決め自分に提出しています。 社内での先輩達のドキュメントですね。 見れないことはないと思いますので、明日にでも早速チェックしてみます。 また、教えていただいたH8TINYですが、今からでも購入できるようでしたら購入してみようと思います。 最近、早く仕事がしたくてウズウズしてこのような質問をしてしまいました。 今回は何度も親切・丁寧な回答をしていただき本当にありがとうございました。

その他の回答 (6)

  • engine
  • ベストアンサー率48% (15/31)
回答No.6

co.jpで探す の意味は 「組み込み」などのキーワードでグーグル等で探せば結構サイトは出てきます ただこの場合レベルの差が激しく意味の無いサイトが羅列されます(多分万単位でhitします)  そこでちゃんとしたサイトの選択肢として法人を推薦したわけです。 個人が悪いわけではないのですがピンキリですので(そういう私のサイトもcomですが 正直他人に見せられるものではない) データシートを読むとは 貴方の会社で使っているそして貴方も使う予定の総てのものです(取説を含めて) 開発ツール(ハード ソフト)計測器の説明書  実際仕事に入ればすぐに必要となる知識です また細かい性能仕様の数字を意識すれば 作るであろう機器を 動くだけでなく精度という観点からも見れます(精度のない機器はありません)  使用するMPUのデータシート コアの命令語 コンパイラの仕様書 周辺IO(タイマーとかシリアル通信 AD 割り込み メモリー管理)とか読んで どんな使い方が出来るかとか想像するのは重要です  基本的には 必要なデータはすべてデータシートにあります(解説書には著者の興味を持った記事しか無い)ただ表現が悪いので判りにくいだけです

players
質問者

お礼

たびたび回答ありがとうございます。 また、お礼が遅れてすみません。 co.jpで探す意味が分かりました。 早速、実践してみようかと思います。 データシートを読みどんな使い方が出来るか想像するのは重要ですとありますが、ちょうど現在はここで詰まっているところです。 確かにプログラムもそんなにスラスラ読めるほうではありませんが、読めないことはありません。 しかし、ソースを読み、データシートを見たときにどんな使い方をしているかの想像が難しく頭の整理がつかない状況となっているのです。 おっしゃるとおりデータシートにはいろいろ必要なことが載っています。 表現が悪いのか僕の理解力がないのかは不明ですが・・・。 早く使い方を想像できるようになりたいのですが、これは実践で鍛えるしかないのでしょうか? もし、お時間がありましたら再度、回答をよろしくお願いします。

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.5

(補足要求) WindowsMobileで通信機器作ってる人から、 uITRONで家電作ってる人まで広くは組み込み屋さんですから、 一言に組み込みといっても、何を作ってるかで大分違うのですが…。 せめて分野とか使用言語とかOSとかを提示してください。 (アドバイス) ハード絡みのボードとかいじってみたいなら、Interfaceとかで(特に4月ごろに)扱ってるものが比較的とっつきやすいとは思います。 http://www.cqpub.co.jp/interface/ とりあえず、目先の実務にはあまり直結しなくても、一度「仕組みがわかってしまう」と格段に理解が進むと思うので、 規模の小さなH-8みたいな環境で苦労してみるのもいいかもしれません。 > と、ありますが、この場合データシートとは何を指しているのでしょうか? > ソースの解説などが書かれたドキュメントを読むという認識で正しいでしょうか? 組み込みでデータシートといえば、一般に(メーカが出してる)ハードウェアの仕様書です。 受け答えからすると、組み込みとは言ってもドライバとかでない、あまりハード寄りではない感じでしょうか。 組み込みLinuxとかCEとか、せいぜいuITRONあたりでアプリ書いてたりとか? このレベルなら、ハードとか買わなくてもPC一個あれば、 かなりまでいろいろいじることができるでしょう。 # 環境構築もひとつのノウハウ、別環境の経験を生かすのもノウハウなので、フリーで環境を作るとこからはじめてみるとか。 例えばWindows上で考えても、このくらいまでは無料でいけます。 C言語の勉強はMinGWでもBCCでもVC8でもコンパイラが手に入りますし、アセンブラもNASMとかあります。 WinCEとかならWindowsのPlatform SDKが役に立ちますし、LinuxならCygwinを使うなり、VirtualPC(これも最近無償)にLinux入れるなり、マルチブートするなり可能です。 uITRONでもTOPPERS等はWindows上でかなりまでエミュレートできます。 あとはいろいろいじり倒して見てください。 組み込みアプリ屋さんの卵ならこれでも結構な演習になると思います。

players
質問者

お礼

たびたび回答ありがとうございます。 また、お礼が遅れてすみません。 >せめて分野とか使用言語とかOSとかを提示してください。 ということですが、分野は少し伏せさせてください。 使用言語はC言語やアセンブラを使っております。 教えていただいたInterface(バックナンバー含む)を調べてみました。 いろいろ付録などあって面白そうです。 近くの本屋には売っていませんでしたので、休日にでも大きな書店へ行ってみようと思います。 データシートはハードウエアの仕様書のことですね。 これはソースを読みながら見たりしています。 しかし、今までだとソース&仕様書程度しか見ていなかったので教えていただいたInterfaceの付録などを使いながら勉強して行こうと思います。 とにかく今は組み込み技術を覚えやすくするためのきっかけが欲しいので・・・。 今回はいろいろ教えていただきありがとうございました。

  • engine
  • ベストアンサー率48% (15/31)
回答No.4

基本は2つだと思います 1 データシートをよく読む 2 人の作ったものを読む さらに言えば 仕事をやる前に考えることです そのためのソースはネットで探す事です これにもコツがあって 1の人が言うように 一見組み込み関係の情報は低いです どうするかと言えば co.jpで探す事です まだ キャリア半年ではあせる必要は無いですが 他人のやらない事を先行して勉強する事は重要ですが効率はよくない(仕事でやる場合の半分以下) 今は仕事をたくさんこなす事により学ぶ段階に見えます サイトでは 各半導体メーカ 基板会社(オークス パステルマジック等)で丁寧にサンプルを読むことをお勧めします 後 頑固にならず素直に人の言葉を聞くことですかね 先輩は忠告に値する人しか忠告してくれませんから

players
質問者

お礼

回答ありがとうございます。 engineさんの回答で分からないことが2点ありますので質問させてください。 >1 データシートをよく読む と、ありますが、この場合データシートとは何を指しているのでしょうか? ソースの解説などが書かれたドキュメントを読むという認識で正しいでしょうか? >どうするかと言えば co.jpで探す事です このco.jpで探すという意味が良く分かりません。 co.jpというのはドメインであるという意味しか分かりません。 もし、お時間があるようでしたら再度、この件についての回答をお願いします。

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.3

趣味レベルではいろいろいじってたので、ゼロからの方にはあまり参考にはならないのかもしれませんが。 自分でいろいろ書いて、自分でいろいろと動かして確認した。そして、自分でハマった…とかですかね。 あと、案件やお客様などにかなり恵まれてきた。 平たく言えばそれなりに経験を積んだという月並みな言葉になるのかと思いますが、 程度の差こそあれ、簡単に習得できるノウハウが出回っていないからこその技術職/専門職では?と思います。 若い方のようですし、今は悩む時期なのでは?(というか、常に悩み続ける職業かも。 組み込み系と一口に言っても千差万別ですし、職場によっても大分違います。 サイトは、学習には、あまり向かないと思います。 # 最初の取っ掛かりを探すとか、既に知ってる人のヒント探しとかには有用かと。 勉強は必要かつ重要だと思いますが、勉強だけでの理解は難しいと思います。 理論と実践は両輪であるべきじゃないかと思ってます。 言語とか環境とかアルゴリズムとかについては、 結局マニュアルを読みながら、ひたすらいじり倒すのがお勧め。 例えば学習用に、評価環境なりエミュレータなりのマシンタイムを確保してもらって、いろいろいじってみるとか。

players
質問者

お礼

回答ありがとうございます。 やはり趣味レベルでいじってた方が多いのですね…。 会社にも前からいじってた人はたくさんいます。 しかし、僕はいじったことはなかったので始めての経験ばかりです。 >簡単に習得できるノウハウが出回っていないからこその技術職/専門職では?と思います。 これは確かにその通りだと思いました。 >理論と実践は両輪であるべきじゃないかと思ってます。 これも僕はその通りだと思っています。 しかし、会社では理論しか勉強させてもらえないので実践は家でやろうと思っているのですが、何か安く購入できる入門用キットのようなものはないでしょうか? もし、何かいいものをご存知であれば教えていただけないでしょうか? よろしくお願いします。

  • G-Monkey
  • ベストアンサー率38% (14/36)
回答No.2

以前組み込みの仕事をしていたものです。 まだ、仕事を始めて半年程度ですよね。 そんなにあせらなくて良いと思います。(仕事の環境等により追い込まれるかもしれませんが) 最初は専門用語などが解らなくて大変だと思います。 これについてはANo.1のおっしゃるとおり、こまめに調べてください。 また、月刊雑誌(日経や技術評論社など)の定期購読をお勧めします。 職場で買っているといいのですが(自分の職場ではなるべくそうしていました)、だめな場合は勉強のテキスト代と思ってください。 即効性はありませんが、色々役に立つことがあります。 また、書籍に書いてある方法どおりに作ってみても、うまく動作しないのが組み込みだと思っています。 経験と勘でタイミングを計るような事もしてました。(ちょっと古いかもしれませんが) その辺はトライ&エラーや先輩の物まねなどでやっていくしかないと思っています。 やる気があるのであれば、あせらないでください。 嫌いでなければ、段々身についてくるものです。

players
質問者

お礼

回答ありがとうございます。 月刊雑誌の定期購読ですね。 確かにこの業界のことなども書かれていて面白そうです。 定期購読するかどうかは不明ですが、前向きに考えてみようと思います。

回答No.1

大変効率の悪い方法ですが私の経験を述べます。 打ち合わせや雑談の場で出てきた用語のうち,意味のわからないものを忘れないうちにメモします。 メモを持って大きな書店にいき,めぼしをつけた分野の書棚で片っ端から本の目次と索引を調べ,目的の用語の説明ができるだけ詳しく載っている本を買います。 新入社員の頃,最初の3年ほどはほぼ毎週神田に通ってました。 WEBは大変便利ですが,ある程度以上のレベルのネットワーク技術以外の技術に関してはほとんど情報がなく,しかも誤っていることが多いので情報源に当たらないまま信用するのはお勧めしません。 もちろん,私の回答を含めて,です。

players
質問者

お礼

回答ありがとうございます。 早速、今日の業務で実行してみました。 さすがに書籍の購入とまでは行きませんでしたが、わからない用語などをくまなくネットで検索して調べました。 そうすることで少し不明だったものがクリアになったような気がします。 ありがとうございました。

関連するQ&A

  • 組込技術者を目指しています

    組込の仕事に興味のある20代の男です。 現状では、多少C言語が読める程度(ポインタはまだ分かりません)で、自分でコードを書くことは出来ません。 現状は、秋の基本情報技術者の試験を目標に勉強を行っています。 そんな私ですが、いくつか質問させてください。 ・こんな低いレベルの私でも組込の技術者になれるのでしょうか? ・組込技術者というのは何年くらいで一人前に仕事が出来るようになるのでしょうか? ・組込技術者に求められるスキルはなんですか? ・また、そのスキルを学ぶに当たっての工夫などありますか? 質問ばかりになってしまいましたが、なんとしても組込技術者になりたいと思っています。 回答の程、宜しくお願いします。

  • 組込みで身に付けるべきこと

    SEとして就職して1年が経ちました。 組込みの分野で働いています。 ただ、組込みといっても、アセンブラでもなくオシロスコープをバシバシ使うこともなく、 普通のC言語によるアプリケーションでした。メモリも豊富らしく、気にするのはスタックくらいですし、 プロセッサを意識することもまずありません。 作業は単体や資料作成、設計書作成、動作確認などです。 周りの先輩たちのスキルも高いとは言えない印象です…(一部に凄い方もいらっしゃいます)。 二次請けの会社で人売りで利益を上げているということが分かってきました。 このまま働き続けてスキルが身に付くのか不安でなりません。 不安なので休日には参考書を購入してきて、組込み以外の分野の 勉強も始めています。 そこで教えていただきたいのですが、組込みをやっている(やっていた)からには、 最低限、このスキルを身に付けなければいかんというものがあれば教えて下さい。 また、組込みに限らずエンジニアが身に付けておいたほうが良いことは何でしょうか。 学歴も無いので、手に職付けたいです。 某掲示板を覗くと、この業界の悪い部分ばかりが書かれていて心が折れそうになります。 ネットワークやオブジェクト指向が必要かと思いますが、どうでしょうか? エンジニアの御先輩方、どうかアドバイスをお願い致します。

  • 制御系?組込み系?

    現在転職活動中ですが ソフトウェア会社を見ていると「制御系」とか 「組込み系」という分野がある事がわかりました。 オープン系やWEB系と同じレベルであるようですが 具体的にはどのような業務になるのでしょうか? よろしくお願いします。

  • オープン系とか、組込み系とかって何?

    よく、ソフトウェア開発の世界では、「オープン系」とか、「組込み系」、「汎用系」などと言う分野がありますよね。 これってそれぞれどう違い、どのような特徴があるのでしょうか。 また、上記以外のもので他にも「~系」ってあるのでしょうか。あればそれについても概要が知りたいのです。 「アプリ系」などというのもありますか。市販の、例えばグラフィック関連のソフトとか、ゲーム・ソフトや、会計ソフトなどはこう呼ぶのでしょうか。 また、Webプログラミングはどの分野の系統に属するのでしょうか。 ただ、「組込み系」だけは、多少わかりました。例えば電化製品などに内蔵されているマイコンを制御するプログラムを開発するのですよね。国内でも、この分野の技術者が不足しているということも知りました。 自分のイメージですが、この組込み系というのは、いわゆる市販のパソコン・ソフトを開発する分野と比べると、出力する画面のデザインなどの見た目については、あまりこだわらず、制御にいそしむ、ある意味、地味な領域なのかなという気もしました。 それに、結構、マイコンに関するハードの知識も必要とされるのですよね。 私は、ソフト開発のみというよりも結構、電子基盤の操作などに魅力を感じるので、組込みの仕事もしてみたいなとも思うですが、実は、これからVisualBasic.NETを学習しようかと思っています。 これはまったく、的外れな努力でしょうかね。やっぱり、組込みはC言語で無ければならないのでしょうか。 反対に、VisualBasic.NETを生かす道としてはどのような分野が考えられますか。Webやデータベース、サーバサイドのプログラミングなどでしょうか。 ASP.NETなどもありますしね。 どなたか貴重な解説・御意見を頂けましたら、よろしくお願い致します。

  • 組み込みシステム学習のためのキット

    私は今学生で来年就職するのですが、現在C言語を使って研究をしており、仕事では ソフトウェア開発、特に組み込みソフトウェア開発技術者になりたいなと考えています。しかし今現在組み込みの知識がないので キットを使って練習できれば一番良いなと思っているのですが、インターネットで探したところ どれも9万円前後する高いものばかりなんですね・・・組み込み用キットの相場は分からないのですが、もし もう少し安価な物をご存知の方がいましたら 教えていただきたいと思います。よろしくお願いします。とても基本的なもので結構です。

  • 組み込みプログラマ

    制御系(マイコン)のプログラマに就職が決まった大学生です。 現在、アセンブラの勉強をしています。 今まで、Z80、PICの経験があります。 しかし、C言語で組み込み系のプログラムを書いたことはありません。 そこで、実際に組み込み系で働いておられる方に質問があります。 1.現在のマイコンではC言語が主流ですか? 2.アセンブラだけでは食っていけませんか? 3.組み込み系は寿命が長いと聞いたことがあるのですが、   本当でしょうか?

  • デバイスドライバー作りに関する質問

    デバイスドライバーでは、アセンブリ言語を使う部分があるとの事で、アセンブリ言語の技術を伸ばす為、デバイスドライバーを作ってみようと思うのですが 実際はどれくらいアセンブリ言語を使うのでしょうか またはデバイスドライバーというのは組み込みの分野ですか?

  • LS設計技術者orコンピュータ組み込み開発に就こうと思います。

    LSI設計技術者とコンピュータ組み込み開発技術者を比べた場合。 ・勉強したことが生かせて、真面目にモクモクコツコツとその仕事に打ち込めるのはどちらでしょうか? ・時間残業とかは苦になりませんが、未経験で派遣でサーバの監視みないな誰でもできる仕事をしていましたが、そこでのいじめが酷かったので、耐えられずやめました。こういうのがない方に進みたいと思っています。 ・一人の裁量で多くの仕事していけますでしょうか。 ・どちらが一人で部分部分でも完結して仕事ができますか?残業が多いとか夜遅いとかはきになりません。ステップアップもしていく努力はしていくつもりです。仕事をやっているって思いたいです。遣り甲斐のある仕事がしたいです。 ・どちらかの学校に通おうと思っています、職業訓練校の1年コースか2年コースなどで就職しようとおもってます。組み込み6か月とかありますがそれでは身につかない気がしますどうでしょうか? (いろいろ質問多いですが、どちらか関わってる仕事をしている人に  答えてほしいです。それかそのどちらかしっていて、答えてくれる人がいればお願いします。)

  • 技術翻訳のバックグラウンド

    一般翻訳(いわゆる何でも屋)をしています。技術翻訳や特許翻訳も頼まれることがあり、その都度にわか勉強をしてしのいでいます。 いろいろな分野をやっていると、もちろん自然にいろいろな知識が身に付きますが、大学や企業で本格的にある分野に接した経験はないので(文系出身です)、いわゆる技術的バックグラウンドがありません。 今後も仕事をしていくのにあたって、分野を特化して勉強していこうと思っています。翻訳業界で「バックグラウンドのある人」というのは、大学でその分野を専攻したか、その分野の会社で仕事をしていたかを指すと思いますが、それなしに翻訳業界に足を突っ込んで、とりあえず仕事が成り立っている私のような人間が今から特定分野のバックグラウンドを身に付けるのには、どんな方法があるでしょうか? また、バックグラウンドと言える知識の範囲についても知りたいです。例えば「化学」のバックグラウンドを持っている人は、化学関係のあらゆる分野に精通しているわけではなく、自分の研究対象や、勤めていた会社の商品の分野に詳しいほかは、基本的な化学知識しかないように感じられます。 とりあえず高校レベルの化学なり物理なりを完全に身に付けていれば、基本のバックグラウンドと言えるでしょうか?それとも大学の理工学部の教養課程まで身に付ければよいのでしょうか? 実際に仕事を受けている方や発注している方に、教えていただきたいと思います。 もちろんそうしたおおまかな基本を身に付けた後で、具体的にある業界の仕事を手掛けることになった場合は、さらにその業界について勉強するつもりですが、とりあえず現在の「なんでも屋」から「バックグラウンドのある翻訳者」に移行するための入り口として、どこから始めたらいいかを知りたいのです。 現在の主な受注先に特許の会社があるので、特許のいずれかの分野をターゲットにしようかと考えており、特許のカテゴリで質問します。

  • SOHOにはどういった技術が有利でしょうか

    こんにちは。 現在SEとして正社員で働いています。将来的にSOHOも視野に入れていろいろ考えているのですが、SOHOとして成り立つ技術?はどういった分野でしょうか。 今の私の技量?といえば ・VB系(VisualBasic、ACCESSやEXCELのマクロ、.NET含む)ではシステムを構築したことがあります。 ・Windows系であればサーバー管理もできます。 ・DBはOracle、SQLServer、ACCESS ・HTML、XML、JavaScript等Web系は独学ですが一応こなせるレベルです。Webシステムを構築したこともあります。 ・javaは独学で勉強したことがある程度です。 ・システムは金融系、会計、製造系・・といろいろ渡り歩いてきました。 ・・ぐらいなのですが。 UNIX系に弱く、C言語があまりできないので、SOHOには不利かなあと思っています。VB使いはたくさんいらっしゃるみたいですし・・・ 現在SOHOされている方はやはりWeb系の仕事が多いのでしょうか? どのような技術を身に付けると有利なのか、ぜひアドバイスをいただきたいと思います。