エンジニア(ここでは主にプログラマー)に必要な知識や経験って、ざっくりベース、カテゴリ、実行環境というレイヤー分けられると思ってて、それぞれに対してはだいたい以下のような定義で考えている。 ①ベース コンピュータサイエンス(CS)などの理論的なもの低レイヤー②カテゴリ フロントエンド / バックエンド / クライアントアプリなど③実行環境 特定のプログラミング言語や開発環境やツール、フレームワークやライブラリなど最近の潮流で言うと、③の部分から入る人が多いと思う。 ③は比較的習得が楽なこともあって、初心者がプログラミングを始める際には一番コストパフォーマンスが高い。中身はブラックボックスであってもなんとなく動くものは作れるので、自己満足にしろ仕事にしろ成果として見えるものにはなる。 ただし、流行り廃りが速く、手を動かし続けないとキャッチアップしていけない。 ①は習得するのに時間かかる。その
![エンジニアの能力と今どきの難しさ](https://cdn-ak-scissors.b.st-hatena.com/image/square/69980d9b7085eb040a687f25778af7b219a588c8/height=288;version=1;width=512/https%3A%2F%2Fmiro.medium.com%2Fv2%2Fresize%3Afit%3A1200%2F1%2AQE7e63Ml5dg89c421Qlsng.png)