(dev)juginon-blog

勉強したこと、趣味のこと。

基本情報技術者試験を受けた

こんにちは、就活が無事終わりましたじゅぎのんです。就活に関しても記事はあげようかなと考えていますがかなり長くなりそうなのでまた今後。

今回は3/1,2に受けてきた基本情報技術者試験についてレポートしていこうかなと思います。

結果

先に結果を挙げると、まだ正式な合格通知はきていないものの、午前試験は86.25点、午後試験は全体正答率91%取れたのでおそらく合格したんじゃないかなと思います。

改めて結果通知がきたら公開しようと思います。

※ 5/10 追記

先日合格発表があり、無事合格していました。

また、郵送で午後試験の得点が通達され、91.00点という結果でした。

全体正答率も91%だったので、意外と点数は均等配分なのかも…?

きっかけ

なぜM2になる今更、応用情報やスペシャリストではなく基本情報を受けたのか?

他に資格を持っていないからとか、もともと去年受けようと思ってたらコロナの影響で中止になったからというのも理由としてはあります。

2020年の抱負の記事に書いている通り、プログラミングに関する大きな目標として基本情報に合格することを挙げていました。

実はその時4月ごろに試験を申し込んでいて、春休みで勉強を少しづつやっていたんですが(卒業旅行にも参考書を持って行ったりしてた)残念ながらコロナウイルスの影響で2020年の前半の試験はなくなりました。

秋に優先で申し込みができる権利みたいなものをもらっていましたが、その頃にはモチベーションがだいぶ下がっていて受ける気にならず、結局申し込まないまま時はすぎていきました。

ではなぜ今受けたのかというと、就活の面接で自分の基礎知識のなさに気付かされたからです。

後に書くであろう就活レポートにも書く予定ですが、とある企業の二次面接での出来事です。

面接官:「Webに関する知識ってどれくらいありますか?」

じゅぎのん:「そうですね、大学で学んだことは大体基本情報技術者の範囲にはカバーしてると思います」

面:「なるほど、ではHTTPについて説明できるだけ説明していただけますか?」

じ:「(ファッ!?)えーーっと…そうですね、ブラウザがWebサーバーと通信するときのプロトコルなんですが…すいません、それ以上のことについてはあまり説明できることがありません」

面:「HTTPSとHTTPの違いについてはどうですか?」

じ:「暗号化されてるんだろうなー、くらいはわかるんですがそれ以上は…」

面:「なるほど、わかりました。Reactとか結構がっつり書いていてとてもいいと思うんですが、こういったWebに関する基盤になる知識もあるともっといいかなって思いますよ!」

じ:「そうですね…ありがとうございます」

結局この面接には通り、その企業からは内定をいただけたんですが「自分にはこんな基礎知識もなかったのか…」と思い知らされることになりました。

面接を受けたのが11月の下旬で、その後12月頃に就活が終わったら受けようと決意、3月の初めに受験という流れです。

実際基本情報を勉強したことでWebに関する知識(特にネットワークやセキュリティ)に関してはかなりついたかなと思っています。

基本情報って聞くと結構「なんで今更そんなの受けるの?応用情報ならまだわかるけど金の無駄でしょ」とか言われることが多いんですが、エンジニアとしての基礎知識を完璧に網羅できている人ってそう多くないと思います。

もちろん国家資格だし、エンジニア志望でもしっかり勉強しないと普通に落とされる試験なことに間違いはないと思うのでバカにするような資格ではないよな、と受けてみて改めて思いました。

使った参考書・教材

僕が勉強に使った参考書や過去問はこちら。

教本

過去問

教本は常に持ち運んで、大学でも勉強する機会がとても多かったので電子書籍で購入し、iPadで読みながらノートを書いていました。

また、よく参考書としてあげられるキタミ式や「かんたん合格」と謳われる教本

こういった参考書を使わなかった理由は、上でも言ったようにWebの基礎知識を一応すべて網羅できるように一周しておきたかったからです。

基本情報技術者試験に合格する」ことを目的とするというよりかは、「Webに関する知識を最低限覚える」ことを目的として受けていました。

戦略としては単純で、章ごとにいつまでにその章を終わらせるか目標を立て、教本が終わり次第過去問を解き始めるといった感じでした。

僕が使っていた教本の各章はこんな感じの内容でした。

1章: 基礎理論(数学に関する知識・アルゴリズム

2章: コンピュータシステム(メモリ・OS)

3章: 技術要素(DB・ネットワーク・セキュリティ)

4章: 技術開発(システム開発プロセス)

5章: プロジェクトマネジメント

6章: サービスマネジメント

7章: システム戦略

8章: 経営戦略

9章: 企業と法務

午前問題対策

はじめの章から順番に勉強していき、時間がなくなり次第過去問をやるようにしたため、最後のストラテジ系はかなり駆け足になってしまいました。

その分、1~3章の部分は純粋にページ数が多かったのもあり(3章までで教本の半分)、かなり細かいところまで勉強することができました。

実際、ストラテジ系は問題を解くというよりかは単語の意味を覚えているか、日本語がきちんと理解できるかを問われているような感じがしたのであまり勉強せずともある程度の点数は取れるんじゃないかと思います。

勉強していて僕が特に覚えることに苦労したポイントはこちらです。

RAIDの種類が覚えられない

RAIDとは、ディスク装置を複数台用いて高速または信頼性の高いディスク装置を実現する技術です。

全部で7つ種類があって、それぞれ名前がつけられているわけではなく単純に「RAID0,RAID1,...RAID7」と書かれているだけなのでかなりややこしいです。

過去問では「RAID0の特徴は…」とか問われるので、ちゃんと覚えておかないと死にます。

なんとか覚える方法はないかなと調べたところ、この記事の覚え方が一番しっくりきました。

reject.tokyo

RAID0,1,5の3種類しか問われないとのことだったので、0と1は記事のように数字の形で覚え、RAID5だけは「パリティビットがある」という覚え方をしました。

DRAMSRAMの違いが覚えられない

RAMとROMの違いはわかるけど、DRAMSRAMの違いが覚えられなくて苦労しました。

特に、「リフレッシュが必要なのはどちらか」と言われたときにパッと思いつくことができなくてミスった覚えがあります。

こちらも調べたところ、この記事の覚え方が一番しっくりきました。

egoro.seesaa.net

かなり昔の記事ですが、みんなやっぱり覚えるの苦労してるんですね。

SQL文が覚えられない

DBの章ではSQLによるデータベース操作の記述が一気に説明されて、初めてSQL文をしっかりみるときはかなり混乱しました。

これに関しては午後過去問のデータベースの問いをやるのが一番覚えられました。問題として出てくるとどういった処理をしているのかが比較的簡単に読み取れたので、ここは覚えることに固執しないでさっと流す程度でいいと思います。

他にも、「秘密鍵と共有鍵の違いがわからない」「ディジタル署名方式がよくわからない」「ネットワークの通信方式がよくわからない」とか疑問はかなり多かったですが、一つ一つきちんと理解することで知識として定着させました。

午後問題対策

午後問題の対策は完全に過去問をやりまくるだけでした。

実際に過去問に手をつけたのは本番の1週間半前くらいからで、かなり短い間でやりました。

購入した過去問には1年分の予想問題と3年分の過去問題が収録されていて、とりあえずその過去問をすべて2周しました。

午後問題はとても文章量が多く、かなり集中しないと全然理解できないので本番と同じ時間と集中力で挑む必要があります。

だらっとしながら問題を解いていたら答え合わせでほとんど間違えていて「やべぇ午後で落ちるかもしれん…」みたいな気持ちになりましたが、集中して解いていくと意外と解くことができました。

また、戦略としては問2~問5の選択問題でどれを選ぶのかが重要になってくると思います。

とりあえず全問解いてみて当日もざっと目を通していけそうな部分から手をつけていました。

当日実際に問題を解いてみた感想としては、過去問は4年分を2周すれば十分対策になるかな、という感じでした。

ほぼ過去問そのままで出題された問が一つあり、そこに関してはかなり過去問があってよかったと感じましたが、それ以外の問に関しては問題の内容はかなり違くて純粋なアルゴリズムの知識が必要でした。

ここに関しては暗記をするというよりかは解き方を固めておく必要があるものなので、数回過去問を解くことで身についていくかなと感じます。

あとは当日やった戦略として、集中力の続く・時間に余裕がある一番最初にアルゴリズム問題とpythonの問題を解き、その後に残った時間をいい感じに分割して残りの大問を解いていきました。

こういった一つ一つの大問に使う時間とかもしっかり練習の段階で決めておければだいぶ楽になるんじゃないかなと思います。

受験当日

令和2年度秋期以降の基本情報技術者試験がCBT方式での実施になることが、IPA情報処理推進機構)より発表されています。

会場を指定するとそれぞれの会場で受験可能な日にち・時間を指定することができ、午前・午後でそれぞれ好きな日にち・時間を指定することができました。

僕は3/1に午前試験、3/2に午後試験を受けるように設定しました(午前と午後を同日にすることもできました)。

僕が申し込んだ会場はとても小さく、受付にいくと左右に仕切られたPCルームがあり、それぞれの部屋に大体10台くらいコンピュータが置いてありました。

持ち物をすべてロッカーの中にしまい、準備ができるとPCの前に通されます。

受験開始のボタンを押してからはモニター上に試験問題が出され、その回答をマウスでクリックして進んでいくという流れでした。

紙の方がいい・CBT方式の方がいい二つの意見に別れると思いますが、正直どちらでも変わらないかなと思います。

CBT方式だと設問ごとにフラグを立てることができて見直しをするのが楽だったり、マークシートの判定漏れとかが確実にないという安心感もあったので僕はCBT試験の方が好きです(多分)。

午前試験はどの過去問をやっても6割は確実に超えていたので普通に解きすすめればよかったんですが、謎に緊張してマウスを動かす手が震えていました。

問題が進むにつれてだんだん慣れていき、大体1時間くらい残してすべての問題が終わったと思います。

途中退室もできたようですが自分は一応時間ギリギリまで見直しをしていました。

試験が終わった後、受付に戻って確認をとって午前試験は終了しました。

携帯の電源をつけるとメールですでに午前試験の結果が届いていて、午前試験に関しては100点満点中何点だったか・それぞれの分野で何%点数を取れていたかがわかりました。

紙の試験だと結果がくるまで1ヶ月はかかると思うので、結果がすぐわかるというのもCBT試験のいいところだなと思います。

午後試験も同様の方式で行い、試験が終わった後に送られる結果には点数ではなくそれぞれの大問で何%点数をとれていたかのみがわかります。

今回の結果としては、午前試験で86.25点、午後試験で全体の91%をとることができました。

午後試験は設問の難易度によって配点が変わるため確定で合格とは言えませんが、さすがにこれで落ちていたら納得できないです。

感想

資格の試験を受けるのは大学3年のTOEIC以来ですが、国家資格というのもありかなりしっかりした体制で試験が行われているなと感じました。

やっぱり基本情報とはいえしっかり範囲全体を勉強していないと合格はできないレベルの問題が設定されていて、たしかに「高度 IT 人材となるために必要な基本的知識・技能をもち,実践的な活用能力を身に付けた者」になれそうと思いました(小並感)。(でも正答率60%で合格ってちょっとボーダー低すぎではとは思った)

あとは情報学の内容しか出てこないので、純粋に自分の興味で勉強を進めることができたので勉強していて苦痛に感じることがまったくなかったのもよかったです。

TOEICとか真剣に勉強しても絶対こんな点数取れないと思うので。

正式な結果は4月下旬に出るとのことなので、楽しみに待っていようかなと思います。

応用情報とかスペシャリスト系も挑戦してみようかな…(研究しろ)

f:id:ogijunchang:20210310135513j:plain

そういえばノンシュガー単独ライブ行ってきました。新曲5曲アツすぎだろ…

月川ちりのオタクになりました。