1. 雑記帳
  2. 2024-02-01 エンジニアにとっ..
2024-02-01 07:20

2024-02-01 エンジニアにとって大事な価値観

スケールさせる、抽象化する

サマリー

彼らはITを使う目的は、スケールさせるためと正確さを保つためだと言っています。エンジニアとしては、スケールさせることと抽象化が重要だと考えていますが、細かなカスタマイズや個別最適化は望ましくないとしています。

00:02
おはようございます。2月1日、木曜日、朝です。
今日は、ITを何のために使うかを、少し整頓したいと思います。
ITを使う目的
ITを何のために使うかというと、
スケールさせるために使う、正確さを保つために使うということに尽きるんだと思います。
正直に言うと、ITでできていることで、ネットワークに絡まないものは、
人間でもできると思います。
例えば、ZoomとかLINEとかで遠く離れた人と話をするというのは、
これはもちろん人間で代用できるものではないんですけど、
例えば、情報を記録するとか集計するとか、繰り返し同じ作業をするとか、
そういったことで、人の手で代わりにやることはできると思います。
そうやって考えると、スケールさせるというのがとても大事な考え方じゃないかなと思います。
スケールさせないのに、ITを使って個別最適化して細かいケースをどんどん出していくというのは、
ITの使い方としてはあまり望ましくなくて、
エンジニアとしてもあまり得るものが少ないんじゃないかなと思います。
例えば、たくさんのリクエストを捌くとか、データベースのパフォーマンスをチューニングするとか、
あとは、正確に情報を取得できるようにロゴを設計するとか、
データのモデルを使いやすいように最適化、最適に設計するというのは、
エンジニアとしての仕事として汎用性があると思います。
この汎用性があるというのは、すぐさま同じことを他のところでやるというわけではないんですけれど、
その経験が他のところで生きるということですね。
それで考えると、一個一個の会社やケースに合わせて細かく作り込んでいくというのは、
あまりプラスにならないんじゃないかなと思っています。
もちろんそれが多くの人に使われるサービスであれば、スケールという要素もあるし、悪くないと思うんですけれど、
5人、10人が使うようなもので、たくさんのケースを細々と分けていくというのは、
あまり良い経験になるようには思えません。
会社の中でなぜITエンジニアが特別視されるかというと、
マネージャーとか管理職とかと同じようにスケールさせることができるからなんだと思っています。
マネージャーとか管理職は、たくさんの人に関わってアウトプットをスケールさせていくという意味で、
パフォーマンスをスケールさせていきます。
ITエンジニアはコンピューターの力を使って処理をさばいたりすることでスケールさせていきます。
そうすると、ITエンジニアにとってスケールさせたりとか、拡大させる要素の少ないものはあまり好ましくないんじゃないかなと思っています。
スケールと抽象化の重要性
さっき話が綺麗に分けれていなかったんですけど、
そうやってスケールさせていくという要素と、あとは抽象化させていくという要素があるんだと思います。
抽象化させるというのは、細々したものを捨て去って、コアになる部分だけ取り出してそれをデータのモデルとするだったり、
処理のモデルとして実装するとか、そういったところを考えていて、
そうするとスケールしないものを抽象化せずそのまま実装するというのは、
手を動かしている状態に近くてエンジニアとしてはあまりプラスにならないんじゃないかなと思います。
もちろん自分が使う側の人間でそれに合わせて作り込んでいくのであればその限りじゃないんですけど、
そうじゃなくて、お客さんに提供するものを作るエンジニアとして何かものを作っていくと考えると、
あまり良いような感じがしません。
今日話したいことは以上です。
07:20

コメント

スクロール