We are currently looking for a Sr. Ruby Developer to work on and lead our current and future infrastructure tools. The goal of our Deployment and Infrastructure Automation projects are to provide zero downtime deployments of all Applications in the fastest, safest, and most repeatable way for our Customers. These projects depend heavily on Ruby in an environment that doesn’t use Rails or ActiveSupport for Process Orchestrations.
The ideal candidate:
• Is self-directed and has shared collective ownership for design decisions
• Uses the best tools for the job, be those open source or otherwise
• Comfortable in a semi-paired programming environment
• Strongly favors TDD and BDD development methodologies
• Up to date with current tools and techniques
• Comfortable working in an agile environment
• Handle working in a fast paced environment
• Act as a role model that others can lookup to for guidance.
Comfortable working in an Apple MacBook development environment
Responsibilities/Deliverables that the resource will be responsible for:
- Software and API Development and Design
- Working in Simi-Paired Programming Environment
- Unit testing and QA
- Deployments / Releases of own tools
- Work with infrastructure provisioning tools such as Chef, Vagrant, Kitchen, and Fog.
- Learning and keeping up with latest trends in automation patterns and practices.
What would a normal day for this position look like??
- Heads down doing developing and design.
- Collaboratively working with, reporting to, and taking direction from current Sr. Ruby Developer
- Status update meetings
What are the MUST have skills that you are looking for in a candidate?
- Experienced Ruby Ninja - Writing ruby without the need of Rails or ActiveSupport dependencies.
- 5+ Years Professional Ruby Developer Experience or Equivalent Development Experience.
- Strong Knowledge of Object Oriented Programming and Design Patterns
- Strong Knowledge of MVC Architectural Patterns.
- Strong Knowledge of working with and creating web services.
- Strong Knowledge of Client / Server Communications
- Strong Knowledge of Concurrent and Parallel programing concepts.
- Experience with Automating one or more of the following: OpenStack, Openshift, AWS, or other Cloud Providers
- Understanding of Deployment Automation concepts and patterns
- Continuous Integration
- Experience with Fog gem (Bonus)
- Experience with Message Queuing Technologies - (Bonus)
- Chef or Puppet (Bonus)
What are the soft skills that you feel candidates must-have in order to be successful in this role?
- Ability to Listen
- Ability to offer ideas on technical direction
- Team Player
- Desire to contribute to overall direction of project