資格試験は転職に役立つか

Rails技術認定試験がスタート、合格者に聞いた

2011/08/29

 Ruby on Railsの基礎知識を問う認定試験、「Rails 3技術者認定ブロンズ試験」が、2011年7月から始まった。ベータ試験の段階で受験し、すでに合格している株式会社イオレの小川伸一郎さんに、受験の感想を伺った。

 小川さんは、RailsでWebサービスを開発するエンジニアであると同時に、エンジニア採用を担当することもあるという。受験者であり、また面接担当者として資格試験についてのご意見も聞いた。

※@ITは本試験の運営委員会にメンバーとして加わっています。

プラグイン開発で実力磨き

 現在、私は株式会社イオレという社員30人ほどの会社で、Ruby on Railsを使った開発をしています。私自身は、最初に勤めた会社ではPerlでCGI開発をしたり、PHPを使った受託開発も経験してきましたが、最近はRubyばかりです。

photo01.jpg 株式会社イオレ 技術開発部 小川伸一郎さん。ケータイ向けRailsプラグイン「jpmobile」の開発者。子どもの頃からMSX、X68000などでプログラミングに親しむ。大学では物理学を専攻し、大阪市立大学で博士号を取得。在学中から資格試験には熱心で、情報処理1種、2種、ネットワークスペシャリスト試験、プロダクションエンジニア試験などの資格を取得。「試験好きなのかも。私は自分が試されていると思うと、やる気が出る」と笑う。最近は幅広いスキルや知識を得たいと経営や財務、会計を勉強中

 Railsはバージョン1、2、3系と、どれも使っています。Railsはバージョンを上げたほうがメモリリークが減ったり、処理が高速化したりすることが多いのですが、セキュリティ以外のアップデートは、かかる手間の割に得られるメリットが小さいので微妙なんですよね。

 ケータイでもPCでも使える「らくらく連絡網」というのが弊社の代表的なWebサービスです。現在、全国27万団体、500万ユーザーにご利用いただいています。無料で使えるサービスもあるため、学校や幼稚園の連絡網として、あるいは大学生のサークルの同報連絡手段として幅広くお使いいただいています。

 こうしたサービスの開発に携わっているからというのもあって、日本のケータイのキャリア向けの絵文字やHTMLが扱えるRailsのプラグイン「jpmobile」の開発者をしています。元々は別の方が作成されたライブラリなのですが、今は私が開発の中心です。プラグインのメンテナンスのためには、Ruby on Railsの内部構造についても知っていないとダメなので、Railsのソースコードは結構読んで、調べています。だから、Rails認定技術者試験を受けたときも、特別な勉強はしませんでした。

 Railsの試験って難しいですよね。私は先日、Ruby技術者認定試験のシルバーを取得しましたが、Rubyだと標準クラスについて問うということができますよね。でも、Railsだと「そもそも基本って何だろう?」と考えると非常に範囲が広い。あまり細かいことを聞いても現実的じゃないですし、落としどころが難しいですよね。

 Rails認定技術者試験は、今年2月にあったベータ試験から受験しています。ベータ試験ということで第1回目は難易度にバラツキが大きかったですが、2回目は精度も良く、問題のバランスが取れている、というのが感想ですね。

「資格を取ろうという姿勢を評価する」

 選択式の試験では実務能力は測れない、という批判が良くありますよね。でも、資格試験って1つの基準ですからね。その基準が作れないということはないと思います。

 もちろん、Linux関連資格のLPICを持っていてもカーネル開発はできないかもしれませんし、Java認定試験のSJPを持っていても、落ちないJavaアプリが作れるかというと、必ずしもそうではないでしょう。だけど、LPICもSJPも、それぞれ1つの基準となっていますよね。

 私自身、弊社の技術部長とともにRailsエンジニアの採用担当もしているので良く分かるのですが、履歴書が送られてきたときに最初に何を見るかというと、まずは実績と資格です。両方あれば、書類審査は通します。どちらか一方であれば、実績のほどを見ますが、それ以外にも勉強会やその他の活動を考慮します。何もなければ普通は書類で落としてしまいます。でも、少なくとも資格があれば、勉強したっていうことが分かりますし、資格を取ろうとしたという姿勢を評価しますね。

 Railsに限りませんが、面接で怪しいなと感じるのは仕事でしか使ったことがない人です。「どんな勉強会に出たことがありますか?」と聞いても、勉強会に出る意味が分からないというタイプの人や、そもそも興味がないという人です。

 残念ながら、日本ではプログラマって「仕方なくなるもの」であるケースも少なくないんですよね。よく言われる多重下請け構造の孫の孫というような下請けだと、毎日システムがコアダンプを吐くような現場があるというようなことも聞いたことがありますが、それが現実です。自ら勉強する意欲があるエンジニアばかりではないのです。そうすると設計と実装の間に大きな隔たりができてしまう。設計側が期待するものと、コーディングする現場のギャップを埋めるのがJavaやOracleの資格試験、という面があると思います。「これぐらいは分かっていてほしい」という基準ですね。

 これは、現在の日本のRails開発の現場でも実は当てはまります。PHP開発をしていた受託業者が、誰かの発案でRailsを採用する。でも、現場はプログラミングに熱意も意欲もあるわけでもないので、コントローラが1000行もあってモデルに何も書いていないとか、ビューにロジックやSQLが一杯埋めこまれている、あるいはヘルパーを全然使っていない……という間違ったアプローチを続けていることがある。そういった、その現場でしか通用しないスキルで“実績”を積んでしまっているエンジニアも少なくないのです。MVCとかオブジェクト指向って、理解できるまでそれなりにハードルが高いんですよね。

 そういう現実があるので、基準となる資格試験があれば、採用する側には良い指標になると思います。「これだけは知っておいてほしい」ということが抑えられていれば、現場でのOJTでも効率が全然違います。

Rubyは今後、日本の受託開発で普及する?

 RubyやRailsの認定試験が登場したことで、企業側からすれば採用基準が1つできることになります。これは、Rubyという言語を企業が選びやすくなるということでもあります。そういう意味では、RubyやRailsの認定試験が普及していくのは、Rubyのエコシステムにとって間違いなくプラスのことだろうと思います。

 ただ、例えば小さな受託案件でPHPを代替していくのかというと、それは難しいと思います。

 小さな会社や事務所のホームページ制作で、ちょっとした動的な機能を付ける程度の案件だと、全部で予算が50万円とかですよね。これではRailsは使えません。

 PHPなら月額500円の安価な共用サーバで動きます。主だったモジュールも入っています。Railsは、VPSサーバや専用サーバなどのroot権限がある環境で、デーモンが使えないと実運用上は厳しいです。それに、そうしたroot権限のあるサーバだと、サーバ管理者が必要になりますが、ふつう、そんな人員は発注側にはいません。50万円の案件なのに、サーバ保守契約で月額5万円も取れませんよね。

 Ruby採用は、Javaのリプレースのほうが現実味があると思います。Javaで設計・実装できることで、Rubyでできないことはないでしょう。ただ、運用という面だと難しい面もあります。例えばアプリケーションサーバや、一部のC拡張ライブラリがメモリリークを起こしていたりすることがあります。そういう場合、消費メモリを監視して、一定値を超えたら朝5時にサーバプロセスを再起動するようなスクリプトを5行とかで書いたりするわけですが、「いざとなったらこのスクリプトを実行して下さい」といってお客さんに納品はできませんよね。

 スケーラビリティについても同様で、NginxとUnicornを複数並べてパフォーマンスを監視しながら運用するといったことは、自社サービスなどではできても、受託開発だと難しいと思います。

 Railsは新規の自社開発サービスなどには向いていると思いますし、今後はそうした方面で採用が増えるのかもしれません。

(@IT 西村賢)

情報をお寄せください:

Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

「ITmedia マーケティング」新着記事

「ECプラットフォーム」 売れ筋TOP10(2024年3月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

GoogleがZ世代のローカル検索でInstagramやTikTokに敗北 なぜこうなった? これからどうなる?
Googleは依然として人気の検索サイトだが、ことZ世代のローカル検索に関しては、Instagra...

DE&Iに関する実態調査 「公平」と「平等」の違いについて認知度は2割未満
NTTデータ経営研究所がNTTコム オンライン・マーケティング・ソリューションと共同で実施...