コードを書かないギャルに、もし「できるエンジニアってどんな人?」と聞かれたら、どう答えたら良いのだろうと、ふと思った。うまい例えで説明したい。
さあ例えるぞ。
プログラムを書く=服選び、バグ=体調を崩す、とするよ。
俺みたいなウンコード量産の動けばいいやと思ってるエンジニアは、例えば朝起きたときに、暑かったらタンクトップで外へ飛びだし、寒かったらタンクトップにダウンで外へ飛びだす人だと思ってほしい。一日の気温の変化や外出先のカフェが暑いとか寒いとかを全く考えてない。だから大抵の場合は大丈夫だが、気温が大きく変化したり、エアコンが効きすぎてるところにいくと体調を崩す。
できるエンジニアはタンクトップの上にカーディガンを羽織る。ダウンの下には腕まくりできる前開きシャツを着て、体温調節しやすくしてる。だから体調を崩さない。
できるエンジニアは着回ししやすい(いい感じに抽象化された)シャツや無地Tシャツを持ってる。着回しが利くので、無駄な買い物が減る。またファション雑誌を定期的に読んでトレンドを掴み、また白シャツGパンというような王道パターンを抑えている(デザインパターンの理解)。
できるエンジニアはファッションチェックをするのがうまい(コードレビュー)。俺のようなウンコード量産エンジニアが頑張って考えた寒さ対策のコーデが、「半袖Tシャツを5枚重ね着する」だったとしよう。できるエンジニアは優しく、Tシャツのコーデを否定せず厚手の素材のTシャツを勧めてくれ、さらに長袖シャツやカーディガンの紹介もしてくれるのだ。
できるエンジニアは良いコーデを思いつくと、Instagramに投稿し、ハッシュタグを着ている服のブランドにする(オープンソース活動)。世界中のオサレな人たちがそれをライクし、自分流にアレンジしたりする(githubのスター、fork)。彼らはコメント欄で「もっとこうしたほうがオシャレで機能性も高い」というような議論をしている。(pull requestでの議論)。
できるエンジニアは定期的に服を修理したり、クリーニングに出したりして服を長持ちさせる(リファクタリング)。俺みたいなウンコード量産エンジニアは靴に穴が空いていてもそのままで、雨が降ったときに、ぐちょぐちょになってしまう。
以上、思いつきの例え話でした。ツッコミどころがあっても多めに見てね。