Ruby on Rails Developer
Contract Opportunity
We are looking for a Ruby on Rails developer responsible for managing the interchange of data between the server and the users. Your primary focus will be development of all server-side logic, definition and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements built by your team into the application. Therefore, a basic understanding of front-end technologies is necessary as well.
Responsibilities
- Design, build, and maintain efficient, reusable, and reliable Ruby code
- Integration of data storage solutions
- Integration of user-facing elements developed by front-end developers with server side logic
- Identify bottlenecks and bugs, and devise solutions to these problems
- Help maintain code quality, organization and automatization
- An understanding of best practices and a commitment to following them.
- ... Ability to work through new and difficult issues and contribute to libraries as needed.
- Work with modern tools including Jira, Slack, GitHub, Google Docs, etc.
- Be part of a community of developers that share knowledge and help each other as problems arise.
Skills
- Experience with Ruby on Rails, along with other common libraries such as RSpec and Resque
- Good understanding of the syntax of Ruby and its nuances
- Solid understanding of object-oriented programming
- Good understanding of server-side templating languages
- Good understanding of server-side CSS preprocessors (such as SASS)
- Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3
- Familiarity with concepts of MVC, Mocking, ORM, and RESTful
- A knack for writing clean, readable Ruby code
- Ability to integrate multiple data sources and databases into one system
- Understanding of fundamental design principles behind a scalable application
- Able to create database schemas that represent and support business processes
- Able to implement automated testing platforms and unit tests
- Proficient understanding of code versioning tools (e.g. Git, Mercurial or SV