1/16(土)に受けてきましたので、そのお話。
受験の理由
前回&今回のプロジェクトでは、期間と予算を決めて請負開発で契約して、その範囲でアジャイルっぽく回している状態です。アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~ でいうところの、日付主導型のプロジェクトですね。プロダクトバックログ(ストーリーポイント記入済み)を見せて、「だいたいこの辺までできそうですけど、未確定ですよー」「ちゃんと基本機能は動くシステムは作るので、そこは信頼してくださいねー」と話をする感じ。RFP とか出してくる顧客には絶対に通用しない手ですけど、それはさておき。
日付主導型のプロジェクトで問題なのは、実装するフィーチャが未確定な点です。もともと顧客の信頼が得られているケースではいいのですが、前回のように新規顧客の上、ベロシティが低い(=開発のパフォーマンスが出ない)と「本当にちゃんと開発やっているの?」と誠意か能力のどちらかは疑われるわけです。
前回&今回は Rails によるシステム開発なので、顧客の信頼を少しでも得られるようにチームメンバ全員でこの資格は取っておくことにしました。そういう状態にしておけば「今回のメンバーは全員 Ruby の資格を持っているし、我々のパフォーマンスが低いわけではない」と言えるようになるし、今後受注する際にも有利に働くでしょうという、政治的な理由。
本当は Ruby より Rails の資格があればいいんですけど・・・Rails はバージョンによって動作が変わりすぎなので、現実的ではないんでしょうね。
勉強っぷり
私はもともと Ruby はちまちま使ってる&Rails の開発を業務で数カ月行ったレベル。さらに最近チーム内の勉強会で、改めて たのしいRuby 第2版 Rubyではじめる気軽なプログラミング をひととおり読んだばかりなので、文法に関する知識はそれなりにある状態です。
それっぽい試験対策としては、以下の本を一通り読みました。
RUBY技術者認定試験 公式ガイド (ITpro BOOKs)
- 作者: 伊藤忠テクノソリューションズ,Rubyアソシエーション,ITpro
- 出版社/メーカー: 日経BP社
- 発売日: 2009/03/25
- メディア: 単行本
- 購入: 49人 クリック: 595回
- この商品を含むブログ (43件) を見る
誤記がいくつかあるので、
正誤表のチェックもお忘れなく。(ここに載ってない誤記もあったのでコメントしておきました。。)
練習問題については、まずは 【解説】まつもと ゆきひろのRuby検定 - ITpro EXPO検定---ITpro EXPO 2008:ITpro これをやりました。この時点で 80点 とか。
その後問題集の巻末に練習問題(二回分)をやって、それぞれ正答率は 86%、82% とか。
さらに Ruby認定試験対策問題 総合問題 をやって(これは 1、2 問間違えたかな)最後に Ruby認定試験対策問題 を 1/3 くらいやったところで試験本番。
試験
10:00 からの試験で、「集合時刻(9:45)に遅れた場合は受験できません」とのことだったんだけど、道に迷ってしまって試験会場に到着したのが 9:52 とか。「本当は受けられないんですけど、次の時間でよければどうぞ」とのことで、10:45 から試験でした。次の会を見ていた感じだと、10 分前から受験説明が開始されていたみたいですが・・・とにかく集合時刻に遅れないよう気を付けましょう。
90 分の試験ですが、対策書と同じような問題がたくさん出るので、だいたい 20 分くらいで終了して。得点は 94/100 点で、合格点は 75 点なので、あっさり合格。
問題のレベルは、練習問題よりもほんの少し簡単でした。例えば練習問題では、配列のインデックス指定について
- [start..end] と [start...end] の違い
- [start, length] の指定
- 負数を指定した場合の挙動
が一度に聞かれたりしましたが、これが一つずつ問われるような形でした。
あとはマニアックな問題も出されます(例えば○○メソッドに空文字を渡した場合どうなるか〜)が、この類の問題はせいぜい数問なので、落としても合格圏内に入れるでしょう。他の方も言っているように、まず対策書の問題をしっかり解いた上で、基本クラスのメソッドを一通り押さえておくと良いと思います。
感想
「○○オブジェクトに存在しないメソッドは?」なんて問題が出るので、Ruby の文法は好きだけどメソッドのエイリアスが嫌いな私としては、あまり好きではないタイプの試験でした。ハッシュのキーを確認するのに Hash#member? なんて使わないし知らないよ、みたいな。でも机上デバッグなんかをする場合は必要になる知識なので、役に立たないことはないと信じてます。