
どうも、こんこんです(´・ω・`)
現在Web系エンジニアとして働いています。
自分が未経験の時にも疑問になった。
ネット上でよく見る「エンジニアを目指したいです。どんなPCを購入したほうがいいですか?」という質問に勝手に答えていこうと思いました(´・ω・`)
結論、PCのスペックはもちろん高いほうがいい。
しかし、それで終わったらおもしろくないので、その質問が出るということは自分が目指すエンジニアの業務内容を把握できていないからなんだと思いました。
基本的にはプログラムは自身の環境依存です(クラウドやサーバ側での処理はそちら側での処理なので別です)
目指すエンジニアの業務内容を今一度、確認して独学だとしても必要なスペックを考えてみましょうという超ざっくりな対策も話していきます。
目指すエンジニアの業務内容を今一度、確認してみよう

PCのスペックは高いほうがいいです。
スペックは高いほうが処理速度も速いですし資金に余裕があるなら高スペックでもいいでしょう。
ですが、目指しているエンジニアの業務内容によって独学で勉強する内容も変わりますよね。
無駄にハイスペックなPCを購入したくない、資金に余裕がないというのであれば自身が目指すエンジニアの業務内容の理解を深めることによって、ある程度は必要スペックが調べてわかるようになるはずです。
目指すエンジニアの使用言語はどんな言語?
自分の業務はWeb系といっても使用言語は様々です。
複数の言語が絡み合うことでサイトは作られています。
今も新しい技術が生み出されていますので一概に、この言語を使っているとはいえない時代になっています。
えり好みもありますし、仕事で仕方なく使う場合など用途は無限大です。
使用する言語はコンパイルするかしないのかによってもスペックは大きく違ってきます。
目指すエンジニアはコンパイルする言語を使用するのか

コンパイルとはWindowsでいうexeファイルなどを作る作業をいいます。
コンパイラ言語を使用するのであれば学習でもコンパイラを使うことが多いと思いますので、処理速度などが必要になります。
スペックが低いとexeファイルなどの作成時間が遅かったり、弊害がでます。
プログラミング言語でいえばC,C++が代表例です。
主に組み込み系エンジニアなのであれば扱います。
個人でやるのであれば、そこまで大規模にはならないとは思いますがコンパイラ言語をやるのであればスペックはある程度は必要になるでしょう。
今はなかなか高性能なPCが多いので個人の独学程度で扱う小規模のプログラムをコンパイルする程度なら、よほどの低スペックを選ばなければコンパイルにかかる時間には困らないとは思います。
もしコンパイル作業を行うプログラミング言語を使用するエンジニアを目指すのであればスペックをしっかりと確認していきましょう。
コンパイルをしない言語

インタプリタまたはインタープリタ言語、他にもあった気がしますがそこは置いておいてWeb系などがよく使う言語としてインタプリタ言語と呼ばれるコンパイルをしない言語があります。
処理速度はコンパイルする言語に比べて落ちますが、比較的に学習しやすい分類になっています。
コンパイル言語ほどPCのスペックはいりません。
勿論、PCスペックは高いほうがいいに決まっています。
ですが、インタプリタ言語を扱うエンジニアなら、よほど安い低スペックでないのであれば気にするレベルではないです。
仮想環境などは構築をするのか
仮想環境を立てるのであるならハイスペックでないとキツイですよ。
最低Corei7以上メモリ16GB以上,SSD500GB以上のノートパソコンでこのくらいのスペックが欲しくなります。
現在だとメモリは最低8GBないとストレスになるかもしれません。
同時並行処理などができないとカクカクしてイライラしたりします。
まとめ
いかがでしたか。
超ざっくりな説明になってしまいましたが、必要スペックが知りたいならまずエンジニアの業務内容に合わせるところから始めましょう。
- 目指すエンジニアの業務内容を確認
- コンパイルする言語なのか
- コンパイルしない言語なのか
- 仮想環境は立てるのか
細かくするとキリがないので、とりあえずはここを意識すればいいと思います。
どのエンジニアになるのかも購入するのも自己責任ですので、しっかりと自分が目指すエンジニアの業務内容に合わせて選びましょう。