- ベストアンサー
組込み系とWeb系の仕事内容とは?
- 組込み系とWeb系はプログラマーにとって魅力的な分野です。
- 組込み系はハードウェアに関する知識が必要で、プログラマーが機械に組み込んだり工場で仕事することもあるかもしれません。
- 一方、Web系はソフトウェア開発がメインで、工場や機械とは関係ありません。Javaの他にもVB.NETなどが今後利用されていく可能性もあります。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
クライアントサーバーが流行し始めて、SQLサーバーのフロントエンドを無理やりVC++で組んでいました。 Accessで作った方が千倍楽で速くできますが、C言語、C++言語を狙っていたので、固執してVC++Ver1.0からです。 Web系は一切興味がなく、HTMLや、Javaはまったく知りません。 人間相手にするのが嫌なので、ひたすらC、C++を書こうとしてきました。 元々は機械屋、燃焼屋です。石油掘削現場で電気計測をするサービス業の会社にいました。その装置が、アナログ回路でしたが、Z80が使われだした1980年代に、少しずつマイコンを搭載した計測器になりました。 使っていたのは、PDP11という、名称のコンピュータで、一抱えもあるアレープロセッサーが使われていて、12ビットの精度で高速計算ができました。(1970年代に、DECが作ったシステムです) 中性子を出す、アメリシウムベリリウムという放射性物質で、地層を励起したあと、今で言う、周波数分析器タイプのガンマ線カウンターで、ガンマ線プロファイルを計測して、元素分析する装置もありました。上述のアレープロセッサーで瞬時に元素が分かります。(当時の技術としては、高速。眠りそうなくらい遅かったですが) これら装置を使っていて、そのプログラミングに興味が出て、会社を辞めてから、クライアントサーバーの仕事中に、C/C++を使ってきました。5年以上はかかったと思います。 なんとか、組込み装置のプログラミングを行い、マイコンもアセンブラーで組み、計測装置を作ったり、SH4(+DSP)の画像処理装置のプログラムをしたり、最近は、PCで画像処理をしています。 ただ、一番ネックになるのは、最終的に目標が何か?という部分で、当初の石油向けの装置にしても、結局は目的があるわけです。 現在は、企業の製造物(電子部品)の検査をするための装置ですので、単価を下げるために、最速画像処理機を作るためには、機械から設計しなおす必要があり、元々機械屋でしたので、装置を設計してタクトを上げています。 機械と電気と制御、そして画像処理がすべて自力でできる楽しみは、何にも変えられません。従来機の3倍の速度の装置ができあがり、コストが3分の一に落ちるわけです。 プログラミングも、以前はマルチタスクと言っても、並列処理することはできませんでしたが、この時代、本当に並列処理が手軽にできます。 たった40万円で、4個のCPUが動作するPCが買えて、画像処理があっという間にできてしまう時代です。 DECの装置は、コンピュータだけでも1億円。それでも12ビットの眠くなるような速度の計算でした。 今は、32ビット(必要なら64ビットも)が並列処理できる時代。 ソフトウエアーに限らず、エンドユーザーの喜ぶ製品つくりと言う点で、機械も含めて楽しみが多いのが、組込み、機器制御だと思います。 小さいマイコンで計測器を作るのと、大きな装置で画像処理をするのとどちらの影響力も膨大で、強力です。省力化が基本ですが、コストとの兼ね合いで考えると、ソフトウェアー開発は、次々と量産できて、リピート機が出るとまたうれしいものです。 Web開発は、私の場合興味がないので語れませんが、組込み、制御にはプログラミングにはない、ダイナミックな楽しみが付いて回ります。 最後は、人へのサービス業だと思います。 テストについて、作っている最中には出ないバグが次々と出てきます。現場でバグをつぶす作業は、作る作業の3倍以上あります。経験があれば、バグの出方、予防法も身につきます。それまでは、バグが出やすいです。基本的に、作った人が一番良く知っています。バグは、油断していると、すぐ出てきます。よく考えたところには、中々出てこないものです。 良くしたもので、油断していたところが原因でバグに追い回されて、最後まで、悩まされます。 プログラミングは面白いです。何を作っても。最後まで面倒を見る。これに尽きます。
その他の回答 (7)
- R32C
- ベストアンサー率39% (115/290)
いわゆるハイテクと呼ばれるような製品の開発の場合は 当然多くの特許を出願します。特許をとることが目的ではなく 新製品に特許は必要不可欠なのです。 あくまでもできることはソフトウエアなんだけども、製品開発のために いろんな技術分野の方とチームを組むようなこともあります。 実際ハードとかソフトとかの分類ではなく実際にはXXユニット担当電装担当 という役割ですね。他の分野では、もちろんハードウエアがベースの技術者は もちろん、メカ、機構設計、化学系や流体物理をやるような方もいましたね。 大体分かるかもしれませんが、写真の現像機のデカイやつみたいなものです。
お礼
たびたび回答ありがとうございます。 なるほど、新製品には、常に特許は一緒についてまわるのですね。 たいへん参考になりました。
- R32C
- ベストアンサー率39% (115/290)
組込み開発で27年ぐらいになります。 どんな格好でどういう作業になるかは企業の形態や仕事のポジションによります。 工場で比較的大型機器の開発の場合 設計の事務所でもそろいの作業服を着ます。 大方のデバッグは制御装置のみのプロトタイプ機でデバッグします。 ここも設計フロア内です。 実際の機械を動かすような場合は工場にいって動作検証します。 鉄入りの安全靴ヘルメットもします。 実機機械確認は全体作業の1割以下だったと思います。 同じように比較的大型機器の開発だけど、研究的要素が強い場合、多く実証データが 必要な開発でプログラムを外注しており、仕様(計算式やアルゴリズムの 提供など)の提供が主業務の場合。 クリーンルームでの動作検証などもあり、実験を繰り返すため、長時間立ち仕事があります。 イスも置いておらず座ることもできないような状況だったりします。 組込み系の技術者のスキルプランだけど、業務系と全く違う方向としては、 非ソフトウエアエンジニア つもり、ある特定の製品開発のプロを目指すという 道があると思います。結局自分はそこへは行き着きませんでしたが。 あくまでもソフトウエアスキルは手段として製品開発のプロを目指すというものです。 現在は、請負でミドルウエアのようなものをやっている関係で、100%オフィスワークです。 テストも基本シミュレータで、最終的には実機ですが、ハンドキャリーできる小さなものです。
補足
回答ありがとうございます。 頂いた回答の中で「ある特定の製品開発のプロ」とありましたが、ちょっとした発明のようなものでしょうか。特許をとるとか。 「非ソフトウエアエンジニア」ともありましたので、ハードに特化した仕事をするということになりますでしょうか。
- SilverThaw
- ベストアンサー率32% (260/806)
No.2です。 ちょっときついことを書きます。 No.3 >あまりテストばかりでもどうかと。 と甘い考えでいるのであれば、組み込みであれPCアプリケーションであれ、こういったプログラム系の製造業には向きません。 テストなしでよいものは作れません。 たとえ、1時間とかからずに作った(実際には既存のものを変更した)ものであっても、試験に丸一日、3桁以上の試験項目をチェックすることだってあります。 一つのミスがどれだけのことに影響するかを考えれば必然です。 一度市場に出たものについては即回収-修理は困難ですし、問題が交通機関やライフラインのシステムで発生した場合はどうなりますか? 「よいもの」を作るということは、プログラムが作れればいいと言うだけではありません。 ちなみに、うちでは(どこだって大抵そうだと思いますが)新人は雑用です。 まず試験の手伝いから始まり色々なことを覚えさせてから少しずつ開発に携わらせていきます。
補足
回答ありがとうございます。 確かにテストは大事です。 再認識しました。
- tadys
- ベストアンサー率40% (856/2135)
組み込みの仕事は基本的にディスクワークです。 組み込み系と一口に言ってもその範囲はとても広いものになっています。 電気製品で言えば単純なスイッチしかないようなものを除けばほとんどにマイコンが使われています。 銀行のATMや鉄道の自動改札機なども組み込みシステムです。 自動改札機の導入時期には1日駅に立って様子を見るということもあったようです。 プログラムサイズも数キロバイト程度から数メガバイトを超えるようなものもあります。 中にはマイクロソフトのWindowsがそのまま走っているようなものもあります。 仕事の仕方も一人でこつこつやるものから数十人以上の人が集まってするものまで色々です。 大勢でやる場合はWeb系との差はほとんど無いです。 組み込みの仕事としては少人数で行うほうが楽しいですよ。 大勢でやる時は自分の担当部分しか見えないです。 少人数の場合は全体が見えるし、創意工夫を生かすことが出来ます。
補足
回答ありがとうございます。 私も組込み形の分野があることを知ってから、自宅にある電化製品に入っているマイコンなどを意識するようになりました。 本当に、いたるところに身の回りにコンピュータがありますね。 たいへん参考にさせて頂きました。
- kit3138
- ベストアンサー率15% (2/13)
現在は、ほとんどWeb系の開発がメインですが、 組込み系の開発経験もある者です。 組込み系の面白さは、自分が作成したプログラムによって ハードが動いた時にかなり感動しますよ。 開発によっては、現地にしかハードがなく、 その場合は、開発は社内で行い、 テストで現地にいく事もあります。 現地によっては、作業服、ヘルメットなんかも かぶらなければいけない事もありましたよ。 Web系では、Javaではなく、VB.NETも今後、 ソフト開発に利用されていくかについてですが、 全然、現時点でもVB.NETでWeb開発はあります。 開発言語は、Java以外にVB.NET、C#.NET、PHP、Rubyなんかがメジャーですよ。
補足
回答ありがとうございます。 他の系統と違って、実物のハードを相手にしているところが組込み系は特徴的ですよね。 確かにハードがそこにしかなく、現地から容易に動かせるものではない場合はそうなるでしょうね。ただ、その頻度が問題です。 あまりテストばかりでもどうかと。 他の方の回答によると、基本はプログラマーだからデスクワークが主だという話もありますが。
- SilverThaw
- ベストアンサー率32% (260/806)
>一日中立ち尽くして仕事をするようなことはあるのでしょうか。 組み込み系であっても、プログラムですから基本はデスクワークですよ。 携帯やデジカメなら、手元に機材は置けますから。 但し、大型の工作機械などは現地工場でヘルメットかぶって最終試験……というのもありますが。 >Web系に関してはソフトウェア開発一本で、工場だの、機械だのとは無縁でそのようなことは、ないのかもしれませんが。 無縁ではありません。 「シンクライアント」や「クライアントサーバモデル」の一つとして、制御システムの画面をWebで作る事だってあります。 >また、Web系では、Javaではなく、VB.NETなども今後、ソフト開発に利用されていくのでしょうか。 サーバー側の制御システムならともかくとして、そもそもの方向性が違うから、まずないでしょう。
補足
回答ありがとうございます。 制御システムって大型のものですか。 このようなものは、制御系とも言うのでしょうか。 まあ、組込み系の一種なのかもしれませんが。
- toda hiro(@hiro_knigh)
- ベストアンサー率39% (59/151)
当方、10年経験の組込み系プログラマです。 まず、なぜカテゴリがC/C++なのか気になりましたが。。。 組込み系といっても様々で、あまりハードウェアの知識が無くても作業は可能ですが、一日中立ち尽くして仕事はよくありました。 特に、一般人が立ったまま操作する機械系のソフトウェアでしたので、テストの為に立ちっぱなしは当然の事の様にしていました。 今は、機械依存部分をシミュレータで対応してデバッグ等をしたりもしますが、最後は実機でテストでしょう。 以上
補足
回答ありがとうございます。 ご苦労様です(^^;)。
補足
長文で回答ありがとうございます。 結構、いろいろな経験をされてきていますね。 経歴を読ませて頂きましたが、たいへん興味深かったです。 Web系と他の分野ってまったく畑違いなんでしょうか。 Accessを使わずに、あえてC/C++で構築する話などすごいです。 バグをつぶす作業のたいへんさも、具体的には初めて知りました。