エンジニアとして大事なことは、「知識・技術・経験」
今年4月からの半年間は、来月から始まるプロジェクトに関連する仕様書を読み進めてきました。CPUやOS、コントローラーなどの仕様で、全部で5,000~6,000ページくらいになるでしょうか。こうした仕様書を読むのが好きで「なるほど、こういう仕組みなのか」と、だんだんわかっていく過程が楽しいんです。この半年間も、知識量が増えていくことを実感できました。
自分の中に技術の引き出しが増えていくことは、エンジニアの醍醐味ですよね。お客さまとの会話も、開発プロジェクトの最初は難しいこともありますが、仕様書を読んで関連する技術書を熟読していくことで、建設的な会話になりますし、仕事がより楽しくなります。
派遣先では現在、NANDデバイスのファームウェア開発をしています。職場にはとても高い技術スキルを保有されている方もいて、そうした方の知識やご経験から刺激を受けています。最新の通信規格、それを取り巻く最新ドライバの調査など、業務を通じて最先端の技術に関する知見を積むこともできています。駅から近くのキレイなオフィスでありがたいですし、なにより技術書がたくさん置いてある点も嬉しいです。日本語訳が出る前の英語原書も多数あります。
休日は、技術書がある大きな書店によく行きます。私にとっての幸せ空間です(笑)。なかなか高価なものが多いので気軽には買えないのですが、会社の書籍購入補助制度も活用しながら、常に新しい知識を入れるようにしています。エンジニアとして大事なことは、「知識・技術・経験」の3つですからね。常に自分の知らない、新しい知識や技術を得ることを怠らず、また楽しむようにしています。
今の職場にはオムロンエキスパートエンジニアリング(以下、OEG)に今年度、新卒入社した方が私の2つ横の席に座っているのですが、とにかく楽しそうに仕事していて、見ていて嬉しくなります。業務外で技術の会話などもしますが、つい最近は、Gitというバージョン管理ツールの話題が出たので、Linux創始者のリーナスがこのツールを作った時の話をしてみたら興味深く聞いてくれました。若い人には、技術にまつわるさまざまな情報を取り入れることに興味を持ってもらえたら、と思っています。
技術の話題に終始したOEGの採用面接
OEGに入社したのは、4年前です。前職は大手メーカーの子会社で、自社製品も開発している会社ではありましたが、私はむしろグループ会社によく出向し、さまざまなプロジェクトに関わりました。いろいろな経験ができて楽しかったのですが、ある時点で経営が変わり、エンジニアファーストではなく営業ファーストな会社に変わってしまったのを機に転職活動を始めました。
OEGの面接は他の会社と全然違い、ある意味衝撃的でした。職歴は聞いてくださいましたがサラッとで、とにかく技術の話に終始していたんです。その時は確かboot loaderの話でまず盛り上がったんですよね。この開発ではこの種類のboot loaderを使って……。なぜならこういう背景があるから……。逆にこの種類のものをいれたらどうなるか……。といった風に。とにかく楽しかったです。
「こういう話ができる人がいる会社は、絶対に良い会社だ」と思いました。OEGは「生涯、エンジニア。」を掲げていますが、言葉倒れしていないな、と。その後は、通り一辺倒の質問をされる他社の面接がつまらなく感じてしまい、他のすべての選考を断ってOEGに入社しました。
その時面接してくれた方が今の私の上司で、関東エリアのユニットマネージャーです。会社の制度で四半期ごとに面談する機会があるのですが、自己啓発でどんなことをやったら良いかなども相談したりしています。最近では、自分自身がこれまで携わってきたこと、学んできたことの集大成になるようなことにチャレンジしたいと思い、Linuxカーネルのソースコード解析をしました。「おお、全部解析したんだねぇ」とニコニコして、見てくれました。
成長スピードを落とさない働き方とは
派遣とメーカーの就業形態ですが、現場での働き方に変わりはないと思っています。ただ、自社製品だけにずっと携わっているよりも、外に出ていろいろな技術を習得したほうが確実に技術力は向上すると、私は思っています。メーカーなどで自社製品にずっと関われば、その製品に関連する技術分野の知識は深くなりますが、広い目で技術が見れなくなってしまうのではないか、──と私は思います。
一方で、派遣のようにさまざまなプロジェクトに関わる就業形態では、新たな技術をそこで懸命に学びます。いろいろな製品開発のプロジェクトで、それぞれの特性や機能、開発環境に合わせて使用する技術を身につけることができますから。一つひとつのプロジェクトが完了すると、新たに知識や技術を得ることができたと実感できます。この積み重ねが大事ですね。
組み込みの下回りには、OSとCPU、boot loader、ハードのそれぞれの階層の中でさまざまな技術があります。これまで私が意識してきたのは、その中で一つひとつ違う技術を経験し、対応できる開発範囲を広げていくことです。私も25年ほど組み込み開発に携わってきましたが、20年目くらいで、下回り領域では大体のことを網羅したなという感覚を得ることができました。
少し先の世界を見渡せる技術者に
エンジニアにとって大切なのは、現場ではスピードです。ただ、仕事以外では情報が大切だと思っています。何が今後生きてくるかわからないので、情報に関してはいろいろな分野を幅広く取り入れることが大事だと考えています。私は、さまざまな情報を取り入れ、大局的に、この先有用な技術なのかどうかを判断しています。情報に関しては「視野を広く、視点は高く」です。
今、私が興味を持っているのはRustという新しい言語です。これまでの言語と毛色が異なり特殊な書き方で、バグを発生させないよう言語自体で防ぐことができる言語です。LinuxカーネルにRustが採用されたので、組み込み案件でRustを使う案件も今後出てくるでしょうから、もし出てきたらやってみたいなと思っています。
当たり前のことではありますが、技術に終わりはありません。無限に学ぶことがあるから、楽しいしワクワクするんです。私はこの会社の言う「生涯、エンジニア。」は、「自分が満足・納得いくまでエンジニアとして働けること」だと思っています。技術の習得はとても楽しい。もしエンジニアになろうか迷っている人がいたら、ぜひ一度チャレンジしてもらいたいですね。
※ 記事内容は2024年10月時点のものです
