- 強いエンジニアとは、弱いエンジニアがどれだけ時間と努力を注いでも解決できない問題を解決できる人のこと
- 中核となる能力: 自己信頼、実用主義、スピード、技術力
Self-belief: 自己信頼
- 強いエンジニアは、どんな問題でも自分は解決できると信じている
- ソフトウェアの問題はたいてい未知の領域から始まるため、不確実な環境でも自信を保てる必要がある
- 難題の本質を避けず、すぐに中核の問題から正面突破する傾向がある
- 自信のあるエンジニアはますます難しい問題に挑戦し、成功体験が自己信頼をさらに強化する
Pragmatism: 実用主義
- 強いエンジニアは、実際に動く成果物を出すことに集中する
- 理想的な設計やきれいな構造よりも、最小限の妥協と実質的な効率性に焦点を当てる
- 実用主義的な姿勢はしばしば「リリース直前にリファクタリングは必要か?」「複雑なパターンの適用はやりすぎではないか?」のような議論を引き起こす
- 実用主義的な主張は、実際により多くの製品・サービスのリリース経験につながっていることが多い
Speed: スピード
- 強いエンジニアは、常に速く働く
- 速い実行は反復的な実験や試行、低確率・高報酬のアイデアの実現、さまざまな業務の可能性を広げる
- 長時間働くのではなく、短く強烈な集中力を土台に生産性と成果を生み出す
- 速く働く経験が積み重なることで、ますます強いエンジニアへと成長していく
Technical ability: 技術力
- 一定水準の技術的な能力は必須だが、業務との適合性と実際の問題解決に特化した能力のほうが重要
- 天才的な頭脳よりも、自信と実用主義的な判断力のほうがより実質的な効果を生む
- 会社の技術スタックと目標に適した技術力が強みとして作用する
Summary
- 強いエンジニアは、ほぼあらゆる問題を解決できるという自己信頼を持ち、未知の難題を先延ばしにせずすぐに解決する
- 実用主義的な実行で現実の結果を生み出し、賢いが弱いエンジニアと衝突することもある
- スピードが速く、必ずしも長時間働くわけではない
- 技術力は必須だが、特定業務への適合性、実戦的な自信、実用主義のほうがはるかに重要
5件のコメント
仮想的な理想モデルを設定したうえでその特徴を抽出する手法であり、最近のギガチャド・ミームとも一脈通じる。
成果を出すエンジニアは強い...
生き残ったということは、強いということだ
ギャーー
強い開発者、強い男