システムエンジニア(SE)になりたいと考えたとき、どこかで知識やスキルを得る必要があります。
このとき、国に認可された学校やプログラミングスクールに通うことで、体系的に学ぶことは可能です。
しかし、中には学費が払えなかったり学校に通う時間がなかったりして、独学を強いられることもあり得ます。独学は大変ですが、ここで何でも自分で調べる癖が身についたら、SEになった後の苦労が減るのも事実です。
そこでこのページでは、「独学でSEを目指す人の理想的な勉強法」について解説します。
Contents
とにかく手を動かしてプログラミングを覚えること
独学でSEになりたいなら、まずはプログラミングを学ぶ必要があります。必要な機能を洗い出す用件定義や、ソフトウェアの設計などは独学が難しいのですが、プログラミングならパソコン一台でできるのです。
また、プログラミングを覚える際は、実際に手を動かして覚えるのが最適といえます。
これは、野球のバッティングに例えると分かりやすいでしょう。野球の理論書ばかり眺めていても、バッティングは上達しません。
実際に打席に立って、何度もバッティングにチャレンジすることで、バッティングが上達するのです。
プログラミングも同様に、作りたいものを設定して、手を動かし続けることでスキルが体得できます。
なお、プログラミングを含むITスキルを身につけたいなら、以下の3つの学習手段を意識してください。
- 書籍
- インターネットサイト
- IT資格
それぞれ、学習方法を解説します。
1.書籍
(僕が学生時代に頑張っていた証拠です。最近はC言語を学ばない学校も増えたとかなんとか…。)
書籍による独学は、SEを目指す上で欠かせない学習方法です。書籍はとあるテーマについて学ぶべきことが体系的にまとめられており、1から学習するのに親切な教材といえます。
また、有料で販売されている書籍は、無料で手に入る情報よりも情報の正確性が高いところもポイントです。
プログラミングの入門書なら、開発環境の構築方法やインストールCDが用意されていることもあり、初心者でも始めやすいでしょう。
ただし、書籍というのは、最新情報や膨大なライブラリ(最初から用意されている汎用性の高いプログラムの集まり)を掲載するのには向いていません。
そこで、書籍を独学の基本としながらも、後述するインターネットを活用する必要があります。
2.インターネットサイト
インターネットも、独学でSEを目指す上で欠かせないツールです。ネット上で検索すると、大抵どのようなプログラミング言語でも、それを学べるサイトがあります。
結論からいうと、インターネットのWebサイトの情報は、玉石混淆です。
個人の有志が作っている趣味のサイトから、広告収入を目的として作っているものまで、多様性があります。
独学したいのであれば、「初心者向け書籍 + わからないところが出たらネットで検索」という組み合わせが王道です。
また、自分が実現したい機能を探すときは、書籍を使うよりもネット検索の方が便利といえます。
例えば、ExcelVBAで最終行が何行目か知りたいとします。このとき、「Excel マクロ 最終行」と検索すれば、有志が作ったサイトがヒットするでしょう。
そこで書かれていることを理解して実践すれば、プログラミングスキルが向上するのです。
なお、近年では、企業が提供しているプログラミング学習が登場しています。このような学習サイトでは、文字情報だけではなく、動画などを活用してわかりやすく解説しているのが特徴です。
例えば、ドットインストールというサイトでは、基本的なプログラミング言語の使い方が網羅されており、自分が学びたい分野の学習を進められます。
(ドットインストールのサイト内。クリック一つで人気言語を学べる)
このように、インターネットを活用することで、プログラミング学習を加速化できるのです。
3.IT資格
(当サイト管理人ヤマダも、過去に頑張ってIT資格を取得しました!)
IT資格を取得するのも、SEになるために必要な学習です。普遍的なITリテラシーを身につけることで、どのような業界に入っても適合しやすくなります。
このとき、最もポピュラーなIT資格が、IPAが主催する国家資格の「情報処理技術者試験」です。
SE未経験者であれば、初心者向けの「ITパスポート試験」と技術者としての基礎能力を証明する「基本情報技術者試験」の合格を目指すのが王道といえます。
なお、ITパスポート試験以外の情報処理技術者試験は半年に一度(一年に一度)しか開催されず、テストで失敗が続けば、「数年間学習したのに何の成果も得られなかった」という状況に陥る可能性もあります。
そのため、「ITパスポート試験」に合格した時点でIT業界への転職を真剣に検討すると考えてください。資格の泥沼にはまってIT業界への挑戦が遅れてしまっては、本末転倒です。
独学でSEを目指すなら、「基本情報技術者」に合格していれば、十分すぎる知識が身に付いていると考えてください。
独学でSEを目指す人間にとって効率的な学習法とは?
独学でSEを目指すとき、最も気になるのが「効率的な学習法」です。独学で目指すということは、すでに社会に出ている場合も多く、もしそうなら隙間時間で学習する必要があります。
ここで、ノンビリと学習していると、転職のチャンスを逃してしまいます。プログラミング未経験だと採用される可能性は減りますが、あまり歳を重ねてしまっても、採用から遠ざかるのです。
そこで、以下の2点を意識して学習を進めてください。
- 作りたいものを先に決める
- 通勤時間にテキストを読む
「常に効率よく知識やスキルを習得する」ことを念頭に置いて、学習を進めましょう。
1.作りたいものを先に決める
作りたいものを先に決めるのは、効率的にプログラミングを習得するときに必要な考え方です。
「こういう機能があるんだなぁ…」と機能一覧を眺めるよりも、「自分が実装したい機能はどうすれば実現できるか?」を考えて試行錯誤した方が、頭に定着しやすいからです。
実際に、現場のプログラマーは皆、後者の考え方で仕事をしています。比較的簡単といわれているExcelVBAですら、実際に取り組んでみると、覚えきれないほどの標準関数(あらかじめ用意されている機能)があるのです。
このような事実からも、細かい関数まで暗記するのではなく、作りたい機能を実現するのに最適な関数を探して実装するのが最適といえます。
- 入門書を一冊読んで、掲載されているサンプルプログラムを完成させる
- 自分が作りたいプログラムを考えて、調べながら実装してみる
この順番で学習すれば、効率的な学習になるのです。
2.通勤時間にテキストを読む
通勤時間にテキストを読むのも、効率的に学習する方法です。人間の最も集中できる時間がおよそ15分程度なので、通勤時間は学習のゴールデンタイムといえます。
IT業界で働いているからこそいえることですが、ほとんどの同僚は、移動時間ではゲームやネットサーフィンをしています。自己投資ではなく、消費(浪費)に費やしているのですね。
だからこそ、あなたが通勤時間の30分程度を学習に費やすだけで、「0.5時間 × 245日 = 122.5時間」の学習時間が確保できるのです。
あなたが仮に、SE未経験者だとしても、怖じ気づく必要がないことを理解して頂けたのではないでしょうか?
また、移動中にはプログラミングよりも、IT資格のテキストを読むのが最適です。ここで、「IT資格のテキストは分厚くて、持ち運びに適していない」と感じることがあります。
このとき、テキストを裁断して1章分だけクリップで止めて、鞄に入れておいてください。すると、かさばらずに持ち運べて、暇なときにサッと取り出して学習できます。
(分厚いテキストも、1章だけならこの程度。)
こうして工夫を重ねれば、「時間がないからSEになれない」というライバルがいる中、あなたはSE転職を成功させられるのです。
ある程度知識が身についたら迅速に未経験可の求人に応募すること
未経験からSEになるとき、具体的にどれくらいの学習が必要か、未経験者にはわかりづらいものです。そこで、20代でSEに挑戦すると仮定したときの学習の目安をお伝えしておきます。
結論からいうと、以下の要件を満たせば、転職活動を開始してもよいでしょう。
- ITパスポート試験合格(基本情報技術者に合格していれば最高!)
- 簡単なプログラムを2~3個
ITパスポート試験は、月1~3回受けられる試験であり、難易度も優しいため、数ヵ月あれば合格できます。
基本情報技術者は、半年に一度の試験ですが、合格していたら「未経験なのに、かなりやる気がある」と判断される試験です。SEとしての本気度を示すなら挑戦したいところですが、働きながら取得する人が大半です。
次に、「簡単なプログラムを2~3個」ですが、これは現状のスキルで思いつくレベルのもので構いません。
例えば、Windowsに標準で付属している電卓と同じ機能を持つ電卓ソフトウェアを開発したり、Webサイトから自動的に画像を収集するツールを開発したりするなど、何かしらの形になるプログラムを残せるかが重要です。
本格的なソフトウェアは、一人で独学するよりも現場で仕事をした方が、はるかに習得しやすいといえます。そのため、あくまで「プログラミング未経験者」から「実務未経験者」になるまでを独学していると考えてください。
ここで、十分独学してから転職活動を行うと考えてしまうと、年齢の問題でチャンスを失ってしまいます。
どれだけ長くても、独学開始から一年以内には転職活動を開始してください。