Are you a Ruby developer?

Polyglot programming: As we’ve said, most of the codebase is in Clojure. Most of the remaining is in Ruby and Ruby on Rails. We’re looking for experienced Ruby developers who know how to deal with large code-bases in languages such as Ruby or Python. Should also be interested in learning Clojure, and indeed seeing it used in a live production environment. Previous experience with large Java systems is an advantage. Previous experience with Smalltalk, Haskell, or any other such interesting language is a huge bonus.You should know your way around JavaScript, jQuery, and cross-browser issues.

Metaprogramming: You should know what it means to abstract away recurring patterns in code. You should know Ruby’s meta-programming features like the back of your hand. You should be able to write extremely DRY code, and know how to create DSLs in order to create highly flexible systems.

Testing: We value test-driven design and development, and you should too. We use RSpec, but you should know and understand what “design for testability” means. We also use Selenium for functional testing, and you should be familiar with its quirks and eccentricities. You should know how to create a maintainable and fast regression suite – both at the unit and at the functional level.

Integration: Our Ruby/Rails system integrates with our Clojure system. While integration patterns is a very useful subject to know, you shouldn’t be scared to try out novel techniques for this problem; for instance, we use generated (executable) Clojure DSL code to communicate between systems. You should be prepared for life on the bleeding edge.

Think your Ruby skills are up to the challenge? Join the Runa team!