基本情報技術者試験を受けてみた
自分一人でアプリを開発したりする上で、資格なんて意味ないと思っていたが、実際に何ひとつ取っていないのに意味がないと決めつけるのも良くない。と言うことで、実際に試験を受けてみた。ちなみに勢いで応用情報技術者試験も申し込んでしまったので、後戻りはできない。
もうひとつの理由は、AtCoderをやってみて、数学の知識がないと解けない問題があったりで、勉強の大切さに気づいたということもある。
ちなみに一回だけ資格を取ったことがあって、Azureの資格で「MCP 70-533 Implementing Microsoft Azure Infrastructure Solutions」というもの。ランサーズのキャンペーンで無料だったからというのもあって取ってみたが、この資格はもう廃止されているので存在しないようだ…。
自分のスペック
40歳おじさん、高卒(定時制卒)で、今までろくに勉強してこなかった。20歳からフリーランスで、個人アプリ開発と知り合いから受託案件をいただいて生き延びていた感じだ。
いろいろなことに興味があったので、電子工作、YAMAHAルータ買ってネットワーク構築して自宅サーバ、スマホ・Web・Windowsアプリ開発なんかをやってきた。すべて独学なので広く浅くといった感じで、その時に興味あることを調べながらやってきた。
果たしてこんな低スペおじさんでも取ることができるのか、という点でも参考になるかもしれない。
勉強方法
最初に思ったのは、どうやって勉強したらいいのかさっぱり分からないということである。みんな思うのは、効率の良い勉強法で楽をしたいということ。
まずは、どんな問題が出るの見てみるために、過去問道場というサイトで問題を解いて見ることにした。出題範囲は、ネットワークやアルゴリズムなどの技術系から経営やマネジメント・会計など幅広い。
いくつか解いてみた感想は、
- 経営やマネジメントについては、正直さっぱり分からないが、問題文からある程度は予測できるような感じではある。
- ネットワークやアルゴリズムなどは、今までの知識で何となく分かる。
- 会計は、今まで自分で確定申告をやっていたのもあって、何となく分かる。
- 問題文を読んでから理解するまでに時間がかかる。
過去問からある程度出題される傾向があるということで、過去問道場を中心に勉強することにした。このサイトは、問題の解説も出てくるのでまじですごいです…。
結果的に、自分は過去問道場のみでしか勉強しなかった。
勉強時間
科目Aは、過去問道場のおすすめで選択した問題を2000問ほどやった。最初は、試験の問題文に慣れていないせいで、文章が頭に入ってこず、理解するまで時間がかかった。何回か解いているうちに、問題文を読むのに慣れてくるし、同じ問題も出題されるのですぐ解けるようになる。
計算問題は、計算式を覚えた上で何度が反復してようやく覚えられる始末…自分って数学苦手なのかもしれない。
分からない問題は、4択なので消去法で限定していくことである程度絞れる。
科目Bについては、ほとんどがアルゴリズムとプログラミングのため、特に対策しようがないと思ったので、一部公開されている過去問(令和7〜5年度と新制度サンプル)を解いて長文問題に慣れることを意識した。セキュリティ問題もいくつか出るが、問題をよく読めば出来そうだと感じた。
- 科目Aの勉強は、8月くらいからスタートして1日100問くらいを目安にやっていたが、1000問くらいでモチベ下がりやらなくなる。
- 9月になり、応用情報の試験が近づいて流石にやばいと思い始めて再開する。なんとか9月中旬くらいで、2000問終わる。正解率は70%ほどだった。
- 科目Bの勉強は、試験日3日前くらいから始めて、科目Aで間違っていた問題を復習しながら同時並行でおこなった。
- 科目Aの勉強が終わったところで、電卓が使えないことに気づく。メモ用紙をもらえるようで、手作業で計算する必要があるので、慌てて筆算の練習をする。
試験当日
CBTということで、好きなタイミングで試験を受けられるので、勉強が終わりそうな9月22日に受けることにした。3日前くらいに申し込んだせいか、取れる会場や時間が限られていたのでもう少し早めに申し込んでおけばよかったかもしれない。
移動中に間違った箇所を過去問道場で、復習しながら向かう。CBTはAzureの資格で一度受けたことはあるが、その時より大きめの会場で少し緊張する。
一度試験を受ける部屋に入ると出るのが面倒なようだ。ちなみに私は喫煙者なので、途中でタバコが吸えないのが地味にきつい。おそらくどこの会場も喫煙所なんてものはないので、喫煙者は注意が必要だ。
割り当てられた場所は、部屋に入ってドアの真横である。10分おきくらいに出たり入ったりするのが地味にきつい。部屋はガラス窓になっており、ドアの横が書類を置くスペース?になっているようで、スタッフがチラチラと視界に入ってきてまったく集中できない…。
そしてここで緊急事態発生。勉強した過去問がほとんど出題されず、見たことがない問題ばかりである。過去問道場でやった問題は、体感的に5問くらいだろうか…。終わったと思いつつ、消去法で適当に答えていく。
想定外の事態で異常に疲れたまま、科目Aが終わる。科目Bとの間は、10分休憩できるので、落ち着こうと自分に言い聞かせる。
メモ用紙を回収するためにスタッフが入ってきて、退室するかと聞かれたが、再入場するのが面倒なので、部屋の中で休憩しようと思い、退室しない旨を伝える。すると、退室しない場合は、休憩なしでこのまま受けることになるとのこと。流れで休憩なしで受けることになってしまった…。
疲労困憊の状態で科目Bに突入だ。全部解くくらいの気持ちで、1問目から解いていく。途中で難しい問題にドハマリしてしまい、悪いクセで意地になって解き始めてしまった。気づくと残り30分ほどになっており、想像以上に時間が経つのが早い…。半分くらいしか解いてないので、慌ててセキュリティの問題を解いていく。簡単な問題を探して、流し読みで適当に解答していく…。
終了の時刻が来ると、完全にオワタの放心状態である。CBTはすぐに結果が見れるので、神に祈りつつ確認すると、奇跡的に合格点に達していた。
結果、科目Aは720点、科目Bは660点であった。かなりぎりぎりで、はっきり言ってラッキーだっただけである…。
受けてみた感想
今回試験を受けてみて分かったことは、
- 科目A、過去問はあまり出ないので、2000問もやる必要はなかった。直近5、6年分ぐらいやって問題になれることが重要。
- ちゃんと参考書を買って、シラバスの内容を正しく勉強する方が結果的に効率が良いかもしれない。
- 科目B、難しいと思った問題は後回しにして簡単な問題から解くこと。セキュリティ問題を先にやっておいていいかもしれない。
- アルゴリズムやプログラミングが苦手な人は、AtCoderをやると良さそうな気がした。
基本情報の勉強をしてみて、普通に難しいと思ったので舐めてると普通に落ちると思った。かなり幅広い知識が問われるし、ここで勉強したことが役に立つこともありそう。ただ、この資格がなくても普通にコードを書いて開発することもできるし、逆にあったからと言ってスキルがあることの証明になるかと言ったら微妙な感じもする。
私は会社で働いたことがほぼないので、SIerや業務系のシステム開発をしている場合は、また違った感想なのかもしれないが…。会社で資格取得費用を出してくれたり、資格手当がもらえるのであれば、積極的に取るべきだとは思う。
以上、応用情報技術者試験に挑むに続く…。