How to Interview Your Ruby on Rails Developer

We at RubyGarage want to share our knowledge about how to interview a Ruby on Rails developer. Since our main purpose is to sell great code, we require great coders. This article will come in handy for a Chief Technical Officer who needs to test a Ruby on Rails programmer but isn’t sure what questions to ask the Rails interviewee. Ruby on Rails developers may also be interested in these questions. This article is a guide for how to interview a Ruby on Rails developer.

We’re not going to include all the questions you could ask, as that would take more than one article. For example, we decided to omit questions about code idioms and cunning expressions in Ruby. Also, we don’t want to give away all the questions which we might ask during an interview with a Ruby on Rails developer. We don’t want a Ruby on Rails developer to simply look for answers on the Internet, as our main purpose is to ensure that we check the developer’s grasp of the language and framework. We merely want to see how a Ruby software engineer expounds his or her knowledge of the domain.

Now let’s chalk out the structure of a Ruby on Rails interview. The article will be divided into several parts since we usually check separate domains of knowledge. Here is the structure we typically use:

  • Ruby questions;
  • Ruby on Rails questions;
  • A pair programming task;
  • A home task.

Now it’s time to start asking questions to your Ruby on Rails developer to find out what they know!

Ruby questions to test a web developer

Why do we ask Ruby-related questions to a Ruby on Rails developer? Because the Rails framework is written in Ruby. This means that when we write code for Ruby on Rails, we’re using Ruby. The main issue we encounter with Ruby on Rails programmers is actually that they don’t completely understand the basics — the programming language itself. We want to hire forward-thinking software engineers who will create high-quality code, and so we want to assess their Ruby competence.

Our Ruby questions usually concern the Object Oriented Programming paradigm and object oriented design patterns. Class hierarchies, encapsulation, inheritance, and polymorphism are key concepts that every Ruby on Rails web developer should know well. If a programmer correctly answers a list of questions similar to the ones below, then we move forward. If they can’t answer them satisfactorily, then the interview is already over.

  • What is a class?
  • What is the difference between a class and a module?
  • What is an object?
  • How would you declare and use a constructor in Ruby?
  • How would you create getter and setter methods in Ruby?
  • Describe the difference between class and instance variables?
  • What are the three levels of method access control for classes and what do they signify?
  • What does ‘self’ mean?
  • Explain how (almost) everything is an object in Ruby.
  • Explain what singleton methods are. What is Eigenclass in Ruby?
  • Describe Ruby method lookup path.
  • Describe available Ruby callbacks. How can we use them in practice?
  • What is the difference between Proc and lambda?

Read rest of article at https://rubygarage.org/blog/how-to-interview-your-ruby-on-rails-developer.