- エンジニアになりたいけど、何から勉強したら良いのか分からない
- 現場で活躍するために、何を勉強したら良いか知りたい
未経験でも、初心者でも、エンジニアとして最初に勉強する内容は同じです。それは最新技術ではなく、どこの現場でも使う以下のような技術です。
- DB
- Linux
- プログラミング言語
陳腐化しない技術を学ぶことで、それが技術力の基礎となり、どんなプロジェクトでも活躍できるのです。
この内容は「自分のチームに配属された新人の人たちには必ず話す内容」で、自分が困った経験を元に、「どんな技術分野を学んだら良いか」を考えて出した内容です。そのため、ある程度の信頼性はあるかと思います。
また、学習順については、順不同です。どれか一つを完璧にしてから、次に進むというよりも、少しずつ勉強をした方が、挫折率は下がるかと思います。
この記事は以下のような人に読んでもらいたいと思っています。
- 未経験からエンジニアを目指すが、何を勉強したら良いか分からない人
- 未経験からエンジニアになったが、プロジェクトで役に立てずに悩んでいる人
- エンジニアの基礎力を身に着けたいと思っている人
当てはまる人は、ぜひとも最後までお読み下さい。
DB(データベース)
1つ目はDBです。
DBの知識はアプリ開発で不可欠です。私自身、DBを使用しないプロジェクトは経験がないです。
最初は「SELECT、INSERT、UPDATE、DELETE」といった基本的なSQLの文法から、「WHERE条件、テーブル結合、集約関数、CASE文」あたりを最初に学ぶと良いと思います。
特に以下の書籍が、SQLの書き方を学ぶ上では、オススメです。
SQLを初めて書くという人にピッタリ
もうちょっとレベルの高いSQLのことが書かれているのが、以下の書籍。
SQLをある程度書けるようになった人が、レベルアップするのに、ピッタリ
- 初心者レベルから中級者レベルに無理なく、到達できる
- 複雑なSQL文が書けるようになるので、現場で活躍できる
- SQLは陳腐化しにくいので、一度学べばずっと使える
- SQLが完全に未経験だと、理解できない
- イラストが少なく、文字が多め
それである程度、SQLの書き方を学んだら、DBの設計とかインデックスの付与やパーティション設計、実行コストの計測の仕方と言った、パフォーマンス効率について理解を深めると、プロジェクトでは重宝されると思います。
パフォーマンス効率の仕方など、DBのプロになるのに、ピッタリ
- DBの論理設定、物理設定のベストプラクティス、アンチパターンを理解できる
- SQLの基礎が分かれば、読んでいける。平易な文章だが、深い内容。
- 陳腐化が起こりにくいので、知識を一度習得したら、長く使える
- DBが完全初心者の場合は、他の書籍がおすすめ。
ただ単にSQLが書けるという状態ではなく、いくつかのSQLの書き方を知っているけれども、「大量のデータを処理するためには、こういう書き方をしたらいい!」ということにまで頭が回るようになると、周りの人からの高い評価も得られるようになります。
Linux
2つ目はLinuxです。個人的には、Linuxは自動化ツールを作成する時に、特に重宝します。
以下のように、何かとLinuxのコマンドの書き方を知っていると、便利な場面に仕事をしているとよく出会います。
- プロジェクトでちょっとした定例作業を自動化
- デプロイのためのツールを作る
- Dockerfileを書く時のコマンド
自分は、よく使うコマンドをシェルにして、自動デプロイをやったり、ちょっとした便利ツールを作ったりという用途で、Linuxのコマンドの知識をよく使います。
ということで、プロジェクトで活躍するためには、「Linuxのコマンド」を学んでおいて、損はないと思います。
特にLinuxのコマンドの使い方を学ぶには、以下の書籍がオススメです。
- Linux初心者でも安心。簡単な文章で丁寧に解説
- 「なぜ?」に深堀りしているから、応用力が付きやすい
- Linuxは陳腐化しにくいので、一生使えるスキルになる
- コマンドを自由自在に使えるようになりたいなら、他の書籍が必要
ちょこちょこっと、皆の役に立つようなツールを作れると、チームメンバーから感謝されたり、すごいと尊敬を集めることが出来ます!
プログラミング言語
3つ目はプログラミング言語です。
やっぱり、何か動くものが出来ると嬉しいです。何か好きな言語か自分が就きたい仕事でよく使われる言語を一つ覚えておくと、大雑把には他の言語でも考え方が同じなのでオススメです。
敢えて言うならば、オブジェクト指向の言語の方がいいかと思います。
文法を学ぶのも大切ですが、「それよりもシンプルなコードを書くとか、パフォーマンス効率とかそういうところに速く目が向く」と良いです。そういう良いコードを書く技術は、今あなたが学んでいる他の言語を書く時でも、同じく必要となる考え方となります。
その点については以下の書籍で学ぶのがオススメです。
- プログラミングのベストプラクティス集として、辞書的に使える
- 一つの項目が2ページで説明されているから、空き時間に読みやすい
- 若手のエンジニアに指導する時に利用できる
- 具体的なコード例がないので、初心者の場合、考え方が分かっても、実践方法が分からない時がある
- ソフトウェア・エンジニアのプロの姿勢が学べる
- プロとしてのモノの考え方が身につく
- 現場にマネしたい先輩や上司がいないなら、絶対に読むべき
- ある程度、経験を積んでいないと、理解・納得できない項目があるかも
初心者エンジニアが最初に勉強すべき3つの技術分野を学んで、現場で活躍しよう
ここまで、エンジニアとして現場で活躍出来るように、最初に勉強すべき技術を3つ紹介させて頂きました。
- DB
- Linux
- プログラミング言語
最初は周りのレベルについて行けずに、しんどい思いをすることもあるかと思いますし、業務外でも勉強をする必要も出てくるかと思います。
しかし、エンジニアになったのであれば楽しいエンジニア人生を送って欲しいと心から思います。
どうしても、エンジニアとして働くのがしんどくなったら以下の記事も是非ともご参考にして頂けたらと思います。
あなたが楽しく仕事が出来ることを祈っております!
ここまでお読みいただき、ありがとうございました。
\ 更新の励みになるので、ポチッとしてね /
他にもスキルアップやキャリアアップの役に立つ情報が満載です。他の記事も読んで、ゆっくりしていってね!
コメント
コメント一覧 (3件)
[…] エンジニアになったばかりで、コンピュータ・サイエンスのことがまだあまり分からないという方には、間違いなくオススメできる名著です。 関連記事 未経験からエンジニアを目指す人に勉強して欲しい3つの技術分野 […]
[…] 関連記事 未経験からエンジニアを目指す人に勉強して欲しい3つの技術分野 […]
[…] 関連記事 未経験からエンジニアを目指す人に勉強して欲しい3つの技術分野 […]