ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

エンジニアが海外で生き残るには流行りモノより基礎技術

移転しました。

職場の同僚エンジニアAに対して抱いた思いは「コイツよく分かってるなー」だった。

Aはその分野ではもちろん重宝されている人材。今はシンガポールで暮らしているが、持ち前の技術力で世界の気に入った国を見つけてそこでエンジニアとして働いて、国々を移り住むスタイルで暮らしている。

そんなAだが会話をしていると
A「なにその技術?そういうのはオレ知らないな」
A「その分野には詳しくねーし」

といったことを頻繁に言い出す。実際そうなのだが、それがAの評判を落とすとか、Aが不勉強なエンジニアだ、とは決してならない。

普通の不勉強なエンジニアとAとの違いを考えたのだが、Aの技術ポトフォリオは大雑把に言うと

2,3の専門分野知識 + 圧倒的な基礎知識

になっている。実は専門分野は2,3しかない。それよりも圧倒的な基礎知識がしっかりとある。

エンジニアとしては新技術の文献をなんでも読んでマスターして「なんでも知ってるオレ」を目指してしまいがちになる。新しいツールや新しいフレームワーク、などなど。
ただそんな新技術をちょっとカジったぐらいで、それなりの成果が出るほどには身につかない。

Aを見ていて感じるのは流行りの技術よりも基礎知識がどれほど重要か。
基礎技術とは

  • アルゴリズム論
  • オブジェクト指向設計
  • SQLの基礎文法
  • データベースの仕組みと最適化

など。

オブジェクト指向設計が分かっていれば、ちょっとしたミーティングでも、その場で設計が頭に描けて話ができている人と、頭に「設計」が無い人の話の違いが如実に出る。
「なんでも知ってまっせー」を中途半端に目指している人よりも、盤石な基礎技術があってその上に少ないながらも専門性がある人の方が活躍しているのを感じる。

オブジェクト指向設計とかホント大事でこれマスターするだけでエンジニアとしてのレベルを2,3段すっとばして向上する。

またオススメしてしまうが(このブログで2回目)、私はこの本のおかげでなんとか海外で生き残っているのでオススメせずにはいられない。

tango-ruby.hatenablog.com

Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby Series)

Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby Series)