Ruby on Rails開発者のスキル

公開されました。 最終更新日
Ruby on Rails開発者

Ruby on Railsの開発者候補を調達するための苦労は尽きませんでしたね。これには、開発者コミュニティで永続的な関係を築くことも含まれていたかもしれません。また、GitHubプロジェクトを調べて、誰が最高のコミットをしているのかを見つけることも必要だったかもしれません。他の開発者からの紹介だったかもしれません。どのようにして候補者を見つけたとしても、次はあなたが募集しているポジションに合った候補者を見つけなければなりません。

しかし、問題があります。技術的なインタビューは、現在の開発者が製品の開発に使える貴重な時間を奪ってしまうのです。前進し続けるためには、できるだけ少ない数の面接を行いたいものです。そして、解決策があります。

Ruby on Railsの開発者スキルをスクリーニングすることで、仕事ができない人を排除する必要があります。これにより、全員の時間を節約することができます。しかし、どのようにして無資格の候補者を排除し、適切な候補者が面接を受けることができるようにするのでしょうか?この記事では、あなたが必要とするスキルを持った人材を見つけるために、Ruby on Rails開発者に何を探すべきかについて知っておく必要があることをすべてお伝えします。

1.RubyとRuby on Railsとは?

RubyとRuby on Railsは別物なので、これは興味深い質問です。Rubyは動的な解釈型プログラミング言語です。1995年にリリースされ、Perlの影響を受けています。 つまり、Pythonと簡単に比較することができます。

Ruby on Railsとは?

Ruby on Railsはフレームワークです。Rubyのオリジナルリリースから10年後にリリースされ、Ruby言語の中で最も広く使われているフレームワークとなっています。主にWebアプリの構築に使用されるWeb指向で、MVCのパターンに従っています。

Rubyはプログラミング環境の中でも、ほとんどの開発が一つのフレームワークを使って行われているという点でユニークな存在です。だからといって、Rubyで使われている他のフレームワークやライブラリがないわけではありません。単純にRuby on Railsが言語で行われている開発の大部分を占めているということです。その結果、この記事ではRuby on Railsのスクリーニングに焦点を当てていますが、Rubyの方が一般的ではありません。

Rubyは、実はシンプルさと生産性を重視して作られた汎用言語です。このような目的を念頭に置いて、その構文は非常に読みやすく、書きやすいものとなっています。そのため、サーバーサイドのスクリプト言語としての利用に加え、フロントエンドのアプリケーションでの利用という2つの用途に適しています。

Ruby on Railsは何に使われていますか?

Ruby on Railsは主にWebアプリケーションやモバイルアプリのバックエンドのコーディングに使用されます。これらの分野では多くの利点があります。一つは、オープンソースであることです。開発者の広大なコミュニティがあり、それを使用して更新しています。また、時間とコストを重視しているため、ビジネスアプリケーションに最適です。最後に、テストとコードの品質を保証し、高品質なコードのみが提供されることを意味します。

もしあなたが何らかのWeb開発をしているのであれば、Ruby on Railsは今日のRubyで最も人気のあるフレームワークの1つです。その理由の一つは、Rubyとそれに付随するRuby on Railsが比較的習得しやすいことです。コーディングを始めるのも簡単で、一度始めてしまえばスキルアップも容易です。また、Rubyに付属している読みやすさから、他人のコードを理解するのが格段に楽になります。

2.IT採用担当者が知っておくべきRuby on Rails開発者のポイントとは?

おそらく最も重要なことは、純粋なRubyとRuby on Railsの間には違いがあるということです。つまり、純粋なRuby開発者を採用するのとRuby on Rails開発者を採用するのは同じではないということです。他にもSinatraのようなRubyフレームワークはありますし、これらは開発者にとっては便利です。しかし、これらのライブラリは多くの機能を実行するので、Sinatraを知っている純粋なRuby開発者がRuby on Railsを深く理解していることを期待してはいけません。

Rubyではライブラリのことをジェムと呼び、ジェムの管理システムは目を見張るものがあります。スケールアップも容易で、完全に標準化されているところまで成熟しています。

宝石のシステムを知っておくと良いと思いますし、どれが いちばん人気.とはいえ、Rubyの知識とあなたが選んだフレームワークの知識が最も重要であることを忘れてはいけません。また、言語の最新バージョンに精通していることも重要です。Rubyはかなり安定していますが、候補者はRubyとRailsの最新バージョンに精通している必要があります。

環境の変化の頻度

Ruby on Railsが安定している理由の一部は、環境が定期的に変化することです。約2年に1度、Railsの新バージョンが登場します。通常は新機能もありますが、バックワードの互換性が高いのが普通です。その上、約1年ごとに新しいバージョンのRubyが出てきます。

Rubyはオープンソースの言語であり、オンライン上には何千ものオープンソースやフリーのジェムが存在します。また、この言語をサポートする巨大なコミュニティもあります。特にRuby on Railsのクールな点の1つは、その特徴の1つを使用するためにフレームワーク全体を持つ必要がないということです。その代わりに、フレームワーク全体を使わなくても、必要なモジュールをRubyアプリケーションにインポートすることができます。

Ruby on Railsの開発者を探す際には、候補者がRuby on Railsを使った実際の商用利用経験が少なくとも1年以上あることが重要です。なぜなら、個人プロジェクトとRuby on Railsを使った商用プロジェクトでは大きな違いがあるからです。もちろん、候補者がPHPのLaravelやPythonのDjangoのようなフレームワークに精通していれば、スピードを上げるためにそれほど多くの経験を必要としないでしょう。特にRuby on Railsのオープンソースプロジェクトに貢献した候補者は貴重です。

スクリプト言語としてRubyを使っている開発者を探すだけなら、Linuxやネットワークなどのシステムの基礎も知っておく必要があります。

3.審査段階でRuby on Railsのスキルを検証するには?

選考は難しいプロセスです。使うメッセージによっては、候補者と採用担当者の双方にとって有益なものになることもあれば、双方にとって時間のかかる悪夢になることもあります。以下に、Ruby on Rails開発者のスキルをスクリーニングするのに役立つヒントをいくつかまとめました。

3.1.履歴書によるRuby on Railsスキルの技術審査

何らかのスキルテストを行う前に、候補者が商用アプリケーションのRuby on Railsでどれだけの経験を持っているかを確認することが重要です。また、候補者が他の言語を知っているかどうかも見ておきましょう。他の最新のMVCフレームワークを知っている候補者は、学習曲線が緩やかになる可能性があるからです。また、候補者がオープンソースプロジェクトに貢献したことがあるかどうかもチェックする価値があります。Ruby on Rails や他のフレームワークを使わずに Ruby を使ったことがある開発者は、言語の純粋な基礎をより深く知っていることが多く、これは大きな資産となります。

Ruby on Rails技術 - IT採用担当者向けRuby on Rails開発者用語の基本的な用語集

Ruby on rails 開発者用語集

画像の出典。写真提供元 アーロンの重荷 に於いて アンスプラッシュ

ここまで読んでくださった方は、おそらくgemsやSinatraなどの新しい語彙をいくつか覚えたことでしょう。たとえこれらが初めてであっても、候補者が何に精通していて何ができるのかを真に理解するためには、Ruby on Railsに関する語彙を正しく身につけることが重要です。ここでは、Ruby on Railsのために知っておくべき重要な語彙のリストを紹介します。

Rubyフレームワーク Ruby on Rails、シナトラ
アプリケーションサーバー ユニコーン、プーマ、パッセンジャー、シン
宝石のテスト Rspec、シナトラ、カピバラ、キュウリ、ファクトリーボット、VCR
Ruby バージョンマネージャ Rbenv, RVM
オーアールエム ORM Mongoid, ActiveRecord
コードレビュー Rubocop, SimpleCov, RubyCritic, rails_best_practices
認可 Devise、OmniAuth、CanCan、APIまたはWSグレープ、WashOut
バックグラウンドジョブの処理 シデク、レスク

もちろん、これらは基本中の基本に過ぎません。ここからは、Ruby on Rails開発者を審査する上で重要な情報について詳しく見ていきましょう。

名前を入れ替えて使うことはできますか?

RoRはRuby on Railsの略です。Ruby on RailsをRailsと短縮して聞くこともしばしばあります。ここで注意しなければならないのは、Ruby on RailsはRuby環境と特別な関係があるということです。他の言語のフレームワークとは異なり、Ruby on Railsについて語られることは、Ruby単体について語られることよりも頻繁に耳にします。

どのような資格があり、価値があるのでしょうか?

上級者向けのRuby協会認定などの資格を見かけることがあるかもしれません。正直なところ、それらを求めている企業を見たことがありません。私の考えでは、コミュニティで積極的に活動したり、投稿を書いたり、Ruby on Railsについてのトークを準備したりすることは、候補者が持っているどの資格よりも価値があると思っています。

後輩候補者と訓練生では少し違います。正式な経験が全くないよりは、学位を持っているか、少なくともブートキャンプの卒業証書を持っている方が良いでしょう。同時に、最も重要なのは彼らのスキルであり、彼らが持っている卒業証書ではありません。

他にCVで探すべきものは?

これらのスキルの他にも、候補者の履歴書には候補者のスキルを示す情報があります。

  • グッドプラクティスを実践していることで知られる企業
  • コンピュータサイエンスの学位
  • 優れたGitHubなどのオープンソースのプロフィール
  • 候補者が読んだ本
  • データベースの問い合わせに関する知識
  • その他、Git、Docker、Kafka、一部のJavaScriptフレームワークなどのツールや技術

3.2.電話/ビデオ技術面接時のRuby on Railsの面接質問

あなたが履歴書の画面を行ったら、それは電話の画面を行うことが有用であることができます。長くなりすぎないようにしましょうが、正式な面接に候補者を招待すべきかどうかについて多くのことを伝えることができます。彼らは正確なコーディングスキルを明らかにするものではありませんが、彼らは候補者の環境の理解と技術へのアプローチを照らすことができます。

Ruby on Railsの面接質問

Q1: Rails 4とRails 5で何が変わったのか?

なぜこれを聞く必要があるのか。 上級職の候補者や、2年以上Railsで仕事をしてきたと主張する人は、Rails 5が追加した機能のうち、少なくともいくつかを知っている必要があります。

Q2:Ruby on Railsでは、どこにロジックを書いていますか?モデル、ビュー、それともコントローラ?何か代替案はありますか?

なぜこれを聞く必要があるのか。 "Fat Model, Skinny Controller "はRuby on Railsの基本的なモットーなので、Rails受験者なら誰でも知っているはずです。しかし、より上級の候補者は、Skinny Models, Skinny Controller, Fat Servicesを好むと答えるべきです。

Q3: rspecとminitestの主な違いは何ですか?

なぜこれを聞く必要があるのか。 Rubyでは、テストはほぼ強制的に行われます。しかし、テスト用の大きなライブラリは2つあります。優秀な受験者はそのうちの1つを知っているでしょうが、優秀な受験者は現職で使っているライブラリだけでなく、両方を使って遊んだことがあるでしょう。彼らは主な違いを説明できるはずです。

Q4: これらのメソッドを持つクラスがあるとします。

  • def factorial(number): #numberの階乗を返します。
  • def fibonacci(n): n 番目のフィボナッチ数の値を計算します。

どのようなユニットテストを書きますか?

なぜこれを聞く必要があるのか。 もう一つのテスト問題ですが、この場合は、テストを書く能力をテストする以外に、問題を引き起こす可能性のあるエッジケースをブレーンストームの候補者がどれだけうまく考えているかを学ぶということです。

Q5: あなたは、新しいページの新機能のためのコードとチケットをテストしました。それを本番環境にデプロイした直後に、新しいページがロードされることを検出しましたが、1分かかりました。あなたは何を見ますか?

なぜこれを聞く必要があるのか。 おそらく私のお気に入りの質問ですが、Ruby on Railsに特化した質問ではありませんが、候補者とその人が実際に問題に直面した経験について多くのことを教えてくれます。もし彼らが完全に途方に暮れているのであれば、おそらく大きなプロジェクトを管理したことがないのでしょう。また、回答内容やカバーしている側面からも、DevOps、JS、データベース、バックエンドなどの経験を多く知ることができます。あなたが探しているシニアの候補者は、あなたが見るべき5つ以上の場所を教えてくれます。

Q6: なぜRuby on Railsを選んだのですか?

なぜこれを聞くべきなのか:今では十数種類のフレームワークから選べるようになっているので、Railsのポジションに応募した人がそのフレームワークから始めたことを知っておくといいでしょう。

Q6: RailsはRubyに何を追加するのか?

なぜこれを聞くべきなのか:Ruby on Railsへの愛着が強いRubyですが、フレームワークの付加価値が何なのか、何が核になっているのかを知っておくと良いでしょう。

3.3.オンラインコーディングテストによるRuby on Rails開発者スキルの技術的スクリーニング

履歴書の画面では、Ruby on Rails開発者が何を知っていて、何を経験しているかを知ることができます。追加の電話画面では、特定の状況にどのように対処するか、またトリビアに答えられるかどうかを知ることができます。これらはどちらも便利なツールですが、候補者の実際のコーディング能力を知ることはできません。Ruby on Rails開発者のコーディング能力を判断するには、おそらくオンラインのコーディングテストが最良の方法でしょう。しかし、すべてのテストが同じように作られているわけではないので、正しいテストを選ぶことが重要です。

アルゴリズムテストは伝統的なものですが、まだ不十分です。これらのテストでは、受験者の環境に関する知識を実際にテストすることはできません。これはRuby on Rails開発者にとって特に問題です。誰かがRubyでアルゴリズムを書けるかどうかを知るだけでは十分ではなく、必要に応じてRuby on Railsフレームワークを使用できる必要があります。アルゴリズムの問題を解決する方法は限られています。さらに、盗作の懸念は、開発者がGoogleやStack Overflowのような通常のリソースを呼び出すことができないことを意味します。

おそらく、開発者のRuby on Railsコーディングスキルをスクリーニングするための最良の方法は、次のようなものでしょう。 ワークサンプルテスト.これは、候補者が仕事の初日に受けるようなタスクを与えます。候補者には、できるだけ自然な環境でタスクを完了させてください。これは、候補者が通常使用するすべてのリソースを使用できることを意味します。これには、RailsやSinatraのようなフレームワークやライブラリ、Stack OverflowやGoogleのような他のリソースが含まれます。そして、すべてのエッジケースで彼らが作成したソリューションの有効性、彼らのビジネスロジック、彼らのコードの品質を評価することができます。

最新情報をチェック Ruby on Rails開発者の給料.

著者 - アルベルト・ロサノ・バウティスタ

Ruby on Rails開発者 アルバート・ロザノ

アルバートは、FCMトラベルソリューションのCTOを務めています。 フランス そして スイス.そこでは主にRuby、Ruby on Rails、React、Elixirなどのフレームワークやテクノロジーを使用しています。以前は、フィンテック企業のNovicapで働いていました。それ以前は、レジャー市場の多国籍企業であるLivingSocialとLetsBonusで働いていました。

FCM FR & CHはバルセロナにテックラボを持ち、Albertが開発チームを率いています。彼らはプロバイダーやクライアントとの統合をサポートしています。また、旅行業界向けの新製品の設計・開発も行っています。

4.DevSkillerは、オンラインのRuby on Rails開発者のコーディングタスクを使用する準備ができています。

作業サンプルテストは簡単ですが、作成には時間がかかります。また、テストの結果を評価するのにも時間がかかることがあります。幸いなことに、DevSkillerにはあらかじめ作成されたRuby on Railsのタスクが多数用意されています。抽象的な概念や学術的な概念を扱うのではなく、Rails開発者が日々取り組んでいる実際のタスクを候補者に与えます。

ルビーオンレール
シニア
テストされたスキル
持続時間
75 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビーオンレール

プログラミングタスク - レベル: ハード

Ruby | Ruby on Rails | OnTheClock in the mine - タスクで説明した2つのエンドポイントを実装します。

ルビーオンレール
ジュニア
テストされたスキル
持続時間
70 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビーオンレール

コードギャップ

知識評価 ルビー, ルビーオンレール

プログラミングタスク - レベル。簡単

Ruby on Rails|ゲーム・オブ・チェアーズ|文字の重複を防ぐ - テレビ番組のデータを作成して整理する - ゲーム・オブ・チェアーズ

ルビー
ミドル
テストされたスキル
持続時間
40 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビーオンレール

プログラミングタスク - レベル。中程度

Ruby|Ruby on Rails|フライトマネージャーアプリ|座席予約・フライト解析 - 座席予約・フライト解析などのフライトデータ管理アプリに不足している機能を実装します。

ルビー
ジュニア
テストされたスキル
持続時間
70 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビー, ルビーオンレール

プログラミングタスク - レベル。簡単

Ruby on Rails|テレビ番組「ゲーム・オブ・チェアー」のデータを作成・整理します。

ルビー
ジュニア
テストされたスキル
持続時間
51 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビー, ルビーオンレール

プログラミングタスク - レベル。簡単

Ruby|Ruby on Rails|Anonymizer - 3つのコンテンツアノニマイザー(電子メール用、Skypeユーザ名用、電話番号用)を実装します。

ルビー
ミドル
テストされたスキル
持続時間
119 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビー, ルビーオンレール

プログラミングタスク - レベル。中程度

Ruby|Ruby on Rails|クックブック - SQLite3データベースを利用した検証ルールの追加とレシピ検索機能の実装。

ルビー
ジュニア
テストされたスキル
持続時間
54 分以内
評価
自動
テストの概要

選択問題

知識評価 ルビー, ルビーオンレール

プログラミングタスク - レベル。簡単

Ruby|Ruby on Rails|コメントチャレンジ - コメント用の関連付けを追加し、ブログ記事のインデックスアクションを実装しました。

シェアポスト

技術者の採用についてはこちら

ラーニングハブに登録すると、有益な情報をメールで受け取ることができます。

シームレスにコーディングスキルを検証&開発

DevSkillerの製品をご覧ください。

セキュリティ認証とコンプライアンス。お客様のデータの安全性を確認します。

DevSkillerのロゴ タレントブーストのロゴ タレントスコアのロゴ