【未経験】暇な学生が3週間で基本情報技術者受かった話【CBT方式】

#1. はじめに
IPAの基本情報技術者試験(FE)のエントリというのは世の中に溢れかえっているので,あまり需要はなさそうなのですが，ほとんどのものは以下の3つに分類されると思います．

1. 完全未経験かつ文系
2. 実務経験ありだがCS(=computer science)出身ではない
3. 実務経験ありなし関係なしにとりあえずCS出身である


私は上記のどれにも当てはまりません．
言うなれば

・CS出身ではないので情報工学の知識0かつ業務未経験であるが，なんとなくアルゴリズムと少しのプログラミング言語は知ってる

でしょうか．

具体的には，理系ではあるが情報工学専攻ではなく，少しアルゴリズムをかじっている程度であり，出題範囲の知識はアルゴリズム以外全くありません．
このような方は，Atcoderなどなんとなく趣味でやってる学生などでは多いのではないでしょうか．
競技プログラミングをしているが，情報工学の知識は全くありませんタイプ．

私自身は競プロをやっておらず，好奇心でアルゴリズムを学んだだけですが，上記と同じ属性と捉えてよいと思います．そのような経歴の方の記事は見受けられなかったので，私がここに書くことで参考になればということで書いています．(果たしてそのような方々が基本情報技術者を欲しいと思うのかは不明…)

また，令和2年度からはこれまでの筆記方式からコンピューターで行われるCBT方式に変わったことと，配点が変わったということで，新しい受験レポも含めてお伝えできればいいなと考えています．

#2. 自分のスペック
まずは簡単なスペック

・大学院を留年して暇になった人(ニートとも捉えられる？，(コロナのせいと思いたい泣))
・学部及び大学院の専攻は金属工学で講義ではCとC++を習ったきり，情報工学に関して何もなし(2進数の計算方法すら知らなかった)
・アルゴリズムとデータ構造についての理解はある(ソートや木構造，DFS,BFS,DP法など有名なやつのみ)
・↑の勉強をpythonで行ったのでpythonへの理解あり


#3. 試験概要
##試験内容
| 　　       |    問題形式 | 時間|   合格得点 |
|:---------:|:---------------:|:------------------:|:------------------:|
| 午前    |   小問80問 |      150分 |60%|
| 午後    | 大問11問から5問選択| 150分 |60%|

となっており，午前は4択形式，午後は長文を読んで穴埋めや内容に沿った選択肢問題があります．
記述問題は一切ありません．

午後は13問から5問選択して解きます．わかりづらいですが，
こんな感じ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1070085/c82ebd24-85f3-1ffc-f4d1-0a2cd9e64790.png)
引用：試験要綱・シラバスなど　試験要綱Ver4.4より（IPA：独立行政法人情報処理推進機構

選択とはいいつつも，情報セキュリティとアルゴリズムが必須で，選択の余地があるのはソフトウェア開発(=プログラミング)の中から1問と，問2～問5のたくさんあるやつらから2問選んで，合わせて5題です．

ちなみにさらにめんどくさいことに問2～問5は書いてある分野が全て出題されません．〇×3と〇って書いてあるように上の分野からどれか3つ，下の分野からどれか1つが出題されます．(つまり勉強していったのに出題されてねえよ～みたいなのが起こり得る)

ソフトウェア開発(=プログラミング)からはC, java, python, アセンブラ言語，表計算が選べます．全て出題されます．

また配点は情報セキュリティが20%，アルゴリズムとソフトウェア開発がそれぞれ25%，あとの選択問題二つが15%ずつで合わせて100%となります．

##変更点(令和2年から)
過去と比較しても特に意味はないと思うので今後に関することのみ述べます．
全て午後試験についてです．

・pythonが追加されました．
pythonができる方にとっては嬉しい反面，過去問がないというデメリットがあります．

・問題数が減ったらしいです．
過去問演習の時に気を付けた方がいいですね．

・配点が変わったらしい
アルゴリズムとソフトウェア開発の配点が高くなったらしいです．私のような属性の方には大きなメリットです．

#4. 勉強期間
タイトルにもあるように3週間です．というか，勉強初めて3週間目に受けたので実質2週間半かもしれません．
ただし，休学中の身でありバイトがない日は一日10h～勉強していたので純粋な勉強時間だけでいくと，恐らく150h～200hほどとなり，そこまで他の受験者と変わりはないと思います．

#5. 勉強方法

[キタミ式イラストIT塾 基本情報技術者 令和03年](https://www.amazon.co.jp/%E3%82%AD%E3%82%BF%E3%83%9F%E5%BC%8F%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88IT%E5%A1%BE-%E5%9F%BA%E6%9C%AC%E6%83%85%E5%A0%B1%E6%8A%80%E8%A1%93%E8%80%85-%E4%BB%A4%E5%92%8C03%E5%B9%B4-%E3%81%8D%E3%81%9F%E3%81%BF%E3%82%8A%E3%82%85%E3%81%86%E3%81%98/dp/4297117819/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=%E5%9F%BA%E6%9C%AC%E6%83%85%E5%A0%B1%E6%8A%80%E8%A1%93%E8%80%85&qid=1612168910&sr=8-1)

様々な方が支持している定番本のこの本を買って読みました．
個人的にはあんまり好きではなかったです．

というのも，支持理由が
>'マンガがたくさんありわかりやすい'
>'色がたくさん使われており，見やすい'

といったもので，

私自身は，わかりやすさよりも情報量を求めていたので，そこに関しては微妙でした．
ただし試験に受かるための情報量としては十分であり，午前，午後含めてこれ一冊(ただしアルゴリズムとソフトウェア開発は除く)で十分だと思います．

##午前試験
二番煎じですが，様々な方がおっしゃられている通り，上記の参考書と過去問道場(無料で過去問を解くことができるサイト)だけで十分です．というのも午前試験は出題のほとんどが過去問の流用です．なのでとにかく過去問道場をやればやっただけ点数が上がります．

ちなみに具体的に私は

参考書で〇章を読む　→　過去問道場でその章の問題を参考書を参照しながら解く 
→ 日にちを置いて参考書なしでもう一度解く

のサイクルをそれぞれの章に対して行うことで，脳に焼き付けました．それぞれの章への
使用時間は10hほどだと思います(テクノロジー系が重たかった)

##午後試験
基本情報技術者試験では，午後試験が一般的には難関だと捉えられております．

しかしながら上記で述べたように午後試験の配点がアルゴリズムとソフトウェア開発だけで50%を占めるようになり，アルゴリズムをかじったことがある方にとってはかなり簡単になったと思います．

ということで私は午後試験は確実に出題される情報セキュリティのみ過去問を全問解いて，あとは勉強せずに受けました．

選択問題2問はその場で選べば大丈夫だと思います．マネジメント系から1問選択して，もう一問はテクノロジー系からでいいと思います．特に両者とも午前試験の知識から逸脱したものは一切出題されないようです．

つまり私のような属性(アルゴリズムやプログラミング言語に触れたことがあるよおって人)にとっては，かなり基本情報技術者試験のハードルが下がったと思います．




#6 CBT方式 & 受験レポ
これまでの試験方式で受けたことがあるわけではないので単純な比較はできませんが，受験者にとってはかなり楽な試験になったのではないでしょうか．

##・メリット
###午前試験，午後試験が別々の日に受けられる
これはなかなか大きなメリットではないでしょうか．従来，一日に行われていたものを別の日に受けれるってことは，例えば午前の勉強を詰め込んで午前だけ受けて，また違う日程で午後の勉強を詰め込んで午後だけ受けに行くことが可能になりました．

###好きな時間に受けれる
テストセンターが開いてる限りどんな時間でも受けれます．
もはや午前も午後も関係ありません．私はどちらも違う日の午後に受けました(テストのある日の午前中にテスト内容を脳にできる限りインプットしてから)．

###テスト結果がすぐわかる
テスト受け終わってすぐにメアドに結果が来ます．公式の結果とはなりませんが，すぐに合否が判定できます．ただし午後の配点は一律ではないため，純粋に60%を超えていても仮に60%付近であれば，合格かはわからないそうです．私は60%を優に超えていたため，合格と判断しました．

##・デメリット
###問題用紙がない(＝図に書き込めない)
これ普通にかなりのデメリットだと思います．特にアルゴリズムで上から動作を追っていく際にコンピュータ上では一切書き込みができなかったのでいちいち紙に書き起こしてたらかなり時間を使ってしまいました．

###

#7 試験勉強を通じて思ったこと
巷ではweb系ではいらないとか，実務に関連していないから意味がないなどの意見も見られますが，私自身はCS出身ではないものとして情報工学を学ぶことのできる非常によい経験になったと思っています．

恐らく上記のような方々は優秀で，既に情報工学であったりそのような関連した知識があるのだと思います．

世の中にある資格のほとんどが，ゴール(=目的)は資格獲得であり，途中経路への意識の低さが見られると思います．この観点でいくと合格しても何か特別な業務に臨めるわけでない基本情報技術者試験は役に立たない資格の烙印を押されてしまうかもしれません．

ただ，ゴール(=目的)を資格獲得ではなく「情報工学を広範に学ぶ」をしたときに，基本情報技術者試験はそのゴールへ自分を近づけてくれる有意義なツールに成り得ると思います．

そういった考えのもと，受けてよかったなと思いました(プロジェクトマネジメントなども勉強おもしろかった)