Schedule a 30 minute appointment with a client advisor today. Start
Complimentary job description

Ruby Developer

Our complimentary job description template is a perfect starting place to help you write a good posting for work. Copy and paste it and reuse any way you want.

Punch offers four divisions of services: design, engineering, staffing, and demand

Ruby Developer

We are looking for a Ruby developer responsible for building Ruby applications, including anything from complex groups of back-end microservices to command line utilities and data processing scripts. Your primary responsibility will be to design and develop these applications, and to coordinate with the rest of the team working on different layers of the infrastructure. Thus, a commitment to collaborative problem solving, sophisticated design, and building quality products is essential.

Responsibilities

  • Design, build, and maintain efficient, reusable, and reliable Ruby code
  • Ensure the best possible performance, quality, and responsiveness of the applications
  • Identify bottlenecks and bugs, and devise solutions to these problems
  • Help maintain code quality, organization, and automatization.
  • {{Add other responsibilities here that are relevant}}

Requirements

  • Good understanding of the syntax of Ruby and its nuances
  • Solid understanding of object-oriented programming
  • Understanding of functional programming style in Ruby
  • Skills for writing reusable Ruby libraries that may be used in expressive ways
  • Familiarity with concepts of MVC, Mocking, ORM, and RESTful
  • Experience with popular web application frameworks {{such as Rails, Lotus, etc depending on project requirements}}
  • Familiarity with command-suite libraries, such as {{such as Thor and GLI, depending on project requirements}}
  • Knack for writing clean, readable Ruby code
  • Experience with both external and embedded databases
  • Understanding of fundamental design principles behind a scalable application
  • Able to create database schemas that represent and support business processes
  • Implementation of automated testing platforms and unit tests
  • Proficient understanding of code versioning tools {{e.g. Git, Mercurial or SVN}}
  • Familiarity with development aiding tools {{such as Bower, Bundler, Rake, etc}}
  • Familiarity with continuous integration
  • {{Make sure to mention other frameworks, libraries, or any other technology relevant to your project}}
  • {{List education level or certification you require}}

Location

San Francisco, California USA

Type

Full time

Written by Punch

Released under a Creative Commons Public Domain

Find developers today

Hire a Punch engineer

Punch offers four divisions of services: design, engineering, staffing, and demand. Our four divisions form the core of our People Forward Approach.

Contact us
Find developers today