エンジニア日記

プロダクト開発をしてるアラサーエンジニア

「ベタープログラマ」を読んで

 

勝手に評価
ジャンル プログラミング
概要 優れたコードの書くための考え方、エンジニアとしての在り方。
エンジニアとしてあるべき姿が抽象的に書かれています。
レベル 初級~中級

 

オライリージャパンの中でも翻訳が分かりやすかった方かと思いました。

筆者の経験から良いプロジェクトの特徴、悪しきプロジェクトの特徴をストーリー形式と分かりやすい比喩を交えながら書かれています。

 

7割ほどはエンジニアとしてのマインドセットについて書かれていて、

プロジェクトでチームメンバーと働く時に、覚えておきたいプログラミングのお作法について学べました。

 

私がコードを書く時によく思いがちだったのは、「コードを書いて、動作確認して、テスト書いて、レビューに通ればオッケー」という意識がありました。

ですが、今書いたコードは数か月後、数年後に高い確率で修正される可能性があること。そこまで考えた上での設計・コーディングをすべきであるということ。

今まではとりあえず、このプロジェクトのコンテキストの意識共有のあるメンバーに分かれば良いような変数名を付けていたけれど、そのコンテキストの背景まで加味したコーディングをするべきだなと感じました。

 

中でも能力の四段階について記載されている箇所があるのですが、知識を追い続けるエンジニアは常に意識しておいた方がいいなと思ったので引用。

 

A.自覚のある無能(比較的安全)

あなたはある事柄を分かっていません。しかし分かっていないことを自覚しています。

 

B.自覚のある有能(優れた状態)

ある事柄を分かっています。それを分かっていることを自覚しています。

 

C.自覚のない有能(最強)

ある話題に関する知識が十分。無意識に身についている状態。その専門性を使っていることを意識していない。

 

D.自覚のない無能(ヤバめ)

ある事柄を分かっていないことを自覚していません。

 

C.の状態はつまり、呼吸をするように専門性を発揮できており、注視すべき視野をさらに広く保てている状態。

その領域に近づけるよう日々意識的にコーディングしよう。