【エンジニアの道は果てしない】 私が出会ったスーパーエンジニアの特徴
こんにちは。すうちです。
昨年、非常に感銘を受けた本の感想を書きました。
この時は、主に自分との対比の視点が多かったですが、私がこれまで出会った中にもスゴイなと思うスーパーなエンジニアの人達がいました。
今回は、そんな方々の特徴を(私目線で…)振り返りたいと思います。
--
※タイトル画像:トウユウジさん
私が出会ったスーパーエンジニアの特徴
物事をシンプルにとらえる
新人時代にお世話になった先輩のSSさんは、見た目で年齢が読めない独特の雰囲気を持った方だった。
技術だけでなくアニメやアイドルにも博識な人で仕事以外でも多大な影響を受けた方である(余談だが、エヴァにハマったのはこの先輩がきっかけだった)。
一番最初に感銘を受けたのは、SSさんのソースコードを見た時だ。シンプルでやりたいことがすぐ追えて分かりやすい。そして見た目も美しかった。。。
当時オブジェクト指向が開発に取り入れ始めた頃だったが、組込分野は過去資産の流用やメモリの制約でC++に移行できない例もあった。
そんな中、SSさんはC言語でオブジェクト指向的なクラスの考えを実現する方だった(構造体とポインタを組み合わせてクラス同等の定義を実現する)。
言語仕様の枠にとらわれず、設計思想はコードで表現できることに衝撃を受けた。
また、SSさんは説明もとても分かりやすい方だった。本質でない不要な情報は削ぎ落として(その人にとって)必要と思われる点を順序立てて説明してくれた。
SSさんは、物事の本質をシンプルにとらえる能力が優れた方だったと思う。
イメージする力が優れている
MMさんは、技術だけでなくマネージメント能力にも秀でた方だった。私の周りでは、どちらか片方が優れた方というのはそれなりいたが、両方持ち合わせた方はあまり出会ったことがなかった。
MMさんはデバッグ能力にも優れた方だった。たまに私が問題に行き詰まってMMさんと会話すると道が開けることがよくあった。
実際の製品では、プログラムコード以外にもそれを動かす環境だったり、ライブラリやツールなどを組み合わせて開発や評価することになる。
問題に直面した時は状況を整理して原因を切り分ける能力は必要だが、MMさんはまるで当事者のように頭で状況をイメージして適切なアドバイスをくれていた。
「世界一流エンジニアの思考法」にもあったが、頭の中にメンタルモデルをクリアなイメージとして持てる方は、情報を整理して何が原因なのかを推測する能力に長けているのだと思う。
前述のSSさんも同じ特徴を持った方だったが、私が1週間以上悩んで解決しなかった問題がSSさんと会話すると1時間後には解決したことが何度もあった。
好奇心や集中力が半端ない
以前、ハッカソンに参加した時に出会ったAZさんは「この人はスーパーサイヤ人なのか?」と思うくらい、多くのソフトウェア言語やOSだけでなく、それに付随する技術知識も豊富なパワフルな方だった。
ハッカソンのアイデア出しや意見も的を得ていたし、それを実現できる能力も周りの人(自分も含む)よりもはるかに抜き出ていた。
AZさんとの会話や勝手な観察により、様々な技術や分野に対して知りたいという学びの姿勢や好奇心が半端ないことに気づいた。
「好きこそ物の上手なれ」という言葉があるが、エンジニアの領域でこれができる方は本当に強いと思う。
そして、AZさんはアイデアを実現する過程でも、平日は皆仕事をしながら周り(自分も含む…2回目)がヘタっている状況でも、夜中までアイデアを形にするコードを書くような集中力と体力もすごかった。
AZさんは見た目30代前半のような若い方だったが、週3回ジムに通って身体を鍛えたり健康維持のため食事にも気を配る意識の高い方で、到底真似できないと感じた程だ。
余談だが、そんな完璧に思えるAZさんにも唯一弱点があった。。。
本人曰く「恋愛は苦手」ということだった。逆にそのギャップが私には、AZさんの魅力にも思えた。
最後に
スーパーエンジニアの特徴を(私の文章力で書くと…)意外と地味な印象を受けましたが、総じて言うと
ことなのかな、と感じました。
本文では、それぞれ印象深いエピソードを書きましたが、今回書いた方はいずれも同じような特徴や思考(生活習慣も含めて)を持ち合わせていたように思います。
と書きつつ、ちょっとだけ思い違いもありました。
新人時代にお世話になった私の師匠!?でもあるSSさんは、上記の特徴があったのは間違いないですが、生活習慣の面では
でした。。。
エンジニアとして健康で長く働くには生活習慣も大事と思いますが、成果を出す上で必要な能力の優先度は人それぞれかもしれません。
最後まで読んで頂き、ありがとうございました。
--