Ruby on Rails Developer Roles

Ticketsolve

# Introduction
We are currently going through an exciting evolution of our platform. We are moving from a traditional RoR architecture to a modern 'single page application', exposing our application as a set of API's consumed by Ember to provide a rich interactive experience.
We have migrated our customer-facing ticket selling application to Ember and our ticket scanning application to Ember, with great success. We are currently working on rebuilding the backend of our platform with the immediate focus been on our 'Point of Sale'. We are now looking to add to our team to accelerate the creation and rollout of this change across the remainder of our platform. This covers the CRM, reporting/analytics and configurations aspects of our backend.
Over the last few months, we have grown the front end, Ember team. We are now looking to expand our server team with new people to cover Ruby and Ruby on Rails server development. Ideally, this person will have RoR experience. In terms of experience, we are open to both junior and experienced developers - the main requirement is talent and enthusiasm.
# Skills & Requirements
- 2+ years experience developing web applications
- Experience with programming Ruby/Rails required with the role focused on server development
- Understanding of front-end technologies: JavaScript, HTML5, CSS, SASS, Ember preferred, but not required 
- Experience with Chef and Terraform a bonus
- Strong programming skills with a focus on clean design, well-refactored code and automated testing  
- Comfortable working as part of a remote team 
# Technologies we use
- Ruby on Rails is our primary server framework evolving towards pure API server
- Ember is our primary front end development framework
- JSONAPI::Resources, http://jsonapi-resources.com/, is how we are building our API's
- MySQL / Redis / Elastic are our primary storage engines
- All our servers are Ubuntu based managed through CHEF
- Deployed on AWS using terraform for managing infrastructure
- GitHub for source code management and process support
- Travis for continuous integration
# How we work
We run a lightweight process that focuses on feature-based delivery on a weekly basis. Our coordination and communication are mostly through daily 'catch-up meetings' and use of appropriate tools such as Trello for backlog management, Slack for communication and Git(GitHub) for source control and feature deployment through PRs and Milestones.
From a coding perspective, we place a strong emphasis on clean, minimal, well-refactored code backed up by a robust suite of automated tests. We make use of peer review for all design and development work.
In general, we strive for an approach that empowers and trusts individuals to 'do the right thing', and as a team, we try and keep each other true to this.
# Remote working
Our development team works as a remote team with members in Berlin, Malmö, Barcelona, Singapore and Taiwan. Our wider organisation has people based in United Kingdom and Dublin. Dublin is our headquarters and main office space - with core Support team and Sales and Marketing team.
Remote working has become part of our company DNA. We believe that it offers a lot of advantages to both Ticketsolve and employees. This means that you should be comfortable working as part of a remote team. If this is new to you, don't worry, it was for us at the beginning as well. We now have lots of experience helping people settle in - so keep an open mind and imagine a working day with no daily commute!
Important to note that timezones are a consideration for us with remote working. Our experience is that European and Asian time zones are preferable, as it allows for collaboration at reasonable times. 
# Recruitment process
We are initially looking for resumes and portfolio examples of your work, e.g. GitHub repositories, blog articles, etc. If you do not have anything suitable, we can provide a problem piece to work together on. Please submit resumes to shanly@ticketsolve.com with the subject 'Job Application'. Please note that due to the volume of applications we will not respond to all applications, but instead make contact when there is a potential fit.
From there, we filter down and do a series of remote interviews. These are usually 'work' focused, i.e. looking at code together, pair programming, for example. Our preference is for candidates to talk to as much of the team as possible so that we, team and candidate, can make the best decision possible. If appropriate and makes sense, we will also look at facilitating face to face meetings as well.
After this stage, we will be in a position to make a formal offer.
Subscribe Now