まったりいんふぉまてぃくすめもらんだむ

主にプログラミング関係のメモに使うかもしれないしそうでないかもしれない

国家公務員試験総合職受験日記 二次試験 -- 記述試験編

さて、一次試験から約1ヶ月後に行われる二次試験。これを潜り抜ければひとまず国家公務員試験には合格となり、官庁訪問に参加する権利(3年間有効)が得られる。院卒区分では二次試験は記述試験・人物試験・政策課題討議試験の3つからなり、まず記述試験が行われ、その1週間後ぐらいに人物・討議試験が行われる。ちなみに、試験当日の話のときにまた触れるが大卒程度の試験では討議試験の代わりに論文試験が課される。

ということで、今回は5/26に行われた記述試験の方について書きます。以降の内容は試験の性質上ほとんど情報系の場合の話になってしまうので、他の分野の人はごめんなさい。

試験概要

二次の記述は大問2問・3時間30分。一次の専門と同じように用意された多数の科目の中から2科目を選択し解答する。例えば情報系なら情報工学(ハードウェア)・情報工学(ソフトウェア)といった具合。

ところで、ほとんどの科目は1科目につき1問しか大問が用意されていない中、情報工学はHW・SW共に1科目2問が用意されている。なので、自分の専門分野が1科目1問の場合はその問題が激ムズだったときのために保険として3,4科目を勉強しておくべきだと思われるが、HW・SWはそれぞれ解けそうな1問を選べるので僕はこの2科目の勉強しかしなかった。情報系で良かった。

とはいえ僕の研究分野はハード・ソフトどちらも専門ど真ん中というわけでもないし、HWの方は院試でもほとんど使わなかったので触るのはたぶん学部3年のとき以来。他専門の事情はよく知らないけど、もしかしたらどの専門でも授業で少し触った程度の範囲でなら3,4科目を選べるようになってるのかもしれない。

情報工学(ハードウェア・ソフトウェア) 傾向と対策

さてさて、ここからは情報系学生の選択科目となるであろうHW・SWについてもう少し詳しく。二次対策をするにあたってまた大学の就職事務から過去問を可能な限り手に入れてきたんだけど、各年度のトピックを適当にまとめてみるとこんな感じだった。例年問題番号5がHW、6がSW。

H24
5A
順序回路(電卓の回路)
ウェアハウススケールコンピュータ
スーパーコンピュータ

5B
記憶装置
  スタック、レジスタ・ウィンドウ
  RAID1,5,6
  NASとSAN
  Key-Valueストア
  HDDとSSD
  次世代不揮発性メモリ
  ノーマリーオフ・コンピュータ

6A
パケット通信
  セグメント分割、ウインドウ制御

6B
アルゴリズム(ゲーム)


H23
5A
論理回路、コンピュータアーキテクチャオートマトン(ロボット制御の回路)

5B
パケット通信におけるスイッチ方式
  ストア・アンド・フォワード方式、カットスルー方式
ルータとパケット
二分木の経路探索
IPアドレスの枯渇と解決策

6A
二分木、順序木、赤黒木

6B
メールシステム


H22
5A
パイプラインプロセッサ
  分岐予測
  FPGAとASIC

5B
入出力装置
  ポーリング
  パケットネットワークインタフェース
  入出力デバイス割り込みとDMA転送

6A
文脈自由文法、XML

6B
データベース
  階層型とリレーショナル型
  SQLインジェクション


H21
5A
プロセッサ、キャッシュ
クラウドコンピューティング、マルチコアプロセッサ、電子マネー

5B
論理回路(LED)

6A
ネットワーク制御(OSPF)

6B
クイックソート


H20
5A
MIPS、記憶階層、キャッシュミス、
入出力装置(ポーリングと割込み)、データ転送(DMA)

5B
順序回路設計

6A
最大フロー問題

6B
プログラミング


H19
5A
記憶階層
  TLB、仮想アドレス

5B
論理回路

6A
文脈自由文法

6B
アルゴリズム(ハノイの塔)


H18
5A
高速化技術
  スーパーコンピュータ
  グリッドコンピューティング

5B
論理回路

6A
オートマトン

6B
画像処理


H17
5A
コンパイラアセンブリ

5B
コンピュータアーキテクチャ

6A
プログラミング(マインスイーパ)

6B
プログラミング(文字列検索)

HWは論理回路に関する応用問題の出題確率が圧倒的に高い。標準〜ちょっと難しいレベルの組合せ回路・順序回路の設計を実際にやらされる。それとプロセッサ・記憶装置・入出力装置などのコンピュータアーキテクチャに関する知識問題も出やすい。だいたいの年はこの2つの両方、少なくとも片方から問題が出ているので必ず押さえておくべきだろう。あとはスパコンだのクラウドだのSSDだのと最近の技術について説明させられることもあるので要チェック。勉強する範囲はわりと絞りやすそう。

反面SWはネットワーク・データベース・木構造オートマトンアルゴリズムなど幅広い分野から出題されてて的が絞りにくい感じ。その分問題文に説明が長々と書かれてて、基礎だけ踏まえてればあとは与えられた情報からその場で考えて解く、みたいな問題が多い気がする。

僕の場合

試験勉強

上記の分析を踏まえ、僕はコンピュータアーキテクチャの知識がほとんど抜け落ちていたのでとりあえずひと通り復習することにした。教科書は研究室に置いてあったパタヘネ(第2版)。鉄板ですね。

コンピュータの構成と設計 第4版 上 (Computer Organization and Design: The Hardware/Software Interface, Fourth Edition)

コンピュータの構成と設計 第4版 上 (Computer Organization and Design: The Hardware/Software Interface, Fourth Edition)

コンピュータの構成と設計 第4版 下 (Computer Organization and Design: The Hardware/Software Interface, Fourth Edition)

コンピュータの構成と設計 第4版 下 (Computer Organization and Design: The Hardware/Software Interface, Fourth Edition)

評価〜入出力装置あたりを、重要そうな用語をチラ裏にまとめつつ難しい部分は読み飛ばしてさらっと流した。読んでみた感じわりと試験の内容とマッチしてたので良かったんじゃないかと思う。

論理回路は実際に手を動かさないと本番で出来なさそうなので、学部で勉強したときのノートと教科書を脇に置きつつ簡単そうなやつから過去問を触って練習した。あとスパコンだのなんだのに関する説明はネットに転がってるのでぼちぼち調べながらチラ裏にまとめた。ソフトは何が出るか分からんのであんまりやる気が起きなかったから、過去問の中から気になったところをちょっと調べるぐらいしかしなかった。

二次試験の問題は一次と違い解答が公表されていないので、同レベルの解説付き問題集がほしいなと思い情報系院試問題集とかIPAの試験問題集とかをちょっと調べてみたけど、あんまり出題分野がうまく被ってなさそうだった。とはいえ、結果的には買わなくても大学時代の遺産とネットの情報で十分だったと思う。

当日

さすがに今回の会場は自転車で10分とはいかず、電車で1時間ぐらいのところにある大学。試験時間が8:50〜13:20と無駄に長いのが気になってたんだけど、試験の前に性格検査をやるためだった。この性格検査、人物試験の参考にするということで普通に民間でやるような答えにくい感じのやつかとおもいきや、「毎日のように死にたいと思う」「私はどうやっても幸せになれないと思う」「気が狂いそうになることがある」みたいな極端な質問が並ぶヤバい感じの検査だった。まぁ答えやすくてよかったんだけど、性格検査というよりかは頭のおかしい人をあぶり出すためのテストなのかと思った。で、15分ほどで性格検査が回収されたあと記述試験。

さて今年の情報系科目、HWは5Aがプロセッサ・記憶装置に関する用語説明、5Bが論理回路でプロセッサの命令デコーダ設計。用語の方は全体的によく分からない感じだったのでスルーして(パタヘネ読んだ意味……)、論理回路の方を解くことにした。こっちは問題がクソ長い分必要な情報はだいたい書いてくれてるだろうという読み通り、難易度自体はそんなに高くなかった。ただ1問目からアセンブリ言語の人力アセンブルをやらされてすごい時間と体力を削られた。あと小問4,5がVerilogを読み書きする問題だったんだけど、ときどき見かけたときなんとなく読めてたからちゃんと文法を勉強してなかったので、クリティカルな使い方をされて問題自体は簡単だったのに落としてしまった。Verilog考えた奴許さない。ということで出来は6,7割というところかなぁ。

SWは6Aがプログラミング(Nクイーン問題)、6BがRSA暗号でド真ん中ストレートという感じ。プログラムを書かされる問題はH21以来か? 僕はmodとか全然わからないのでプログラミング一択。とはいえC言語もNクイーンも数年ぶりに触るのでなかなかスムーズにいかず、HWにだいぶ時間を取られてたのもあり半分解いて難しい部分に目を通す前に時間切れ。解いたところは全部合ってると思いたいので出来は5割ちょうどぐらいかな? 2問で3時間半だから時間余るかと思ったらそんなことはなかった。

院卒組は記述が終わったら即解散。結局3時間半フル稼働だったので終了時点でわりとヘロヘロだったんだけど、なんと学部卒はその後休憩を挟んで2時間の論文試験が同日中に行われるのだからご愁傷様としか言いようがない。さらに人物試験は学部卒→院卒の順で行われるらしいので、人によっては記述試験の2日後に人物試験ということもあるとか。一次の基礎能力試験も学部卒のほうが問題多いし、総合職試験は院卒より学部卒のほうが大変なワケのわからん試験である。ちなみに院卒は翌週の水曜日にメールで人物試験の場所と日時が指定される。

というわけで二次記述の結果はだいたい5〜6割とまたしてもボーダーと平均の間ぐらいのところを低空飛行する結果。といっても当然正確な答え合わせはできないし点数は相対評価で出るので自分の出来栄えだけからは結果は読めないんだけど。結果は合格発表のときのお楽しみ。


次回、人物・政策課題討議試験編。これまでの就職面接経験1回(しかも不採用)の俺氏の運命やいかに!?