Title: Sr. ROR Engineer
Work Mode: Remote
Requirement: Immediate
We are looking for a skilled Ruby on Rails Developer to join our dynamic team and help us build robust and scalable web applications.
As a Ruby on Rails Developer, you will be responsible for developing, testing, and maintaining various components of our Rails applications while adhering to best practices and industry standards.
Responsibilities:
- Utilize your expertise in Ruby on Rails to design, develop, and maintain web applications.
- Manage dependency using Bundler and ensure smooth integration of third-party libraries and gems into the projects.
- Write efficient and optimized Active Record queries for database operations.
- Implement background job processing using Sidekiq to handle time-consuming tasks.
- Utilize caching techniques such as Rails built-in caching, Redis, and memcached to enhance application performance.
- Handle concurrency and distributed database operations with Makara to ensure high availability and reliability.
- Manage database seeding and migrations for data and schema updates.
- Stay updated with the latest Gems and Gemfile dependencies and manage them effectively.
- Implement design patterns to create scalable and maintainable code.
- Demonstrate a clear understanding of the differences between proc and lambda.
- Work with ERB view templating engine and create reusable Partials for a modular approach to front-end development.
- Implement error tracking using HoneyBadger to identify and resolve issues promptly.
- Proficiently use IDEs like RubyMine/VSCode for efficient development and debugging.
- Utilize Redis as an in-memory data store for caching and other data-intensive operations.
- Apply memoization techniques to optimize performance and reduce redundant computations.
- Leverage metaprogramming to create dynamic and flexible code structures.
- Understand the method lookup process in Ruby to improve code efficiency.
- Implement and work with MVC components like ActiveRecord for effective data management.
- Utilize Object Relational Model (ORM) principles to interact with databases efficiently.
- Optimize the performance of Ruby on Rails applications to ensure smooth user experiences.
- Apply patterns like Single Table Inheritance (STI) and Polymorphic Associations for database schema design.
- Implement publisher/subscriber eventing using Pusher to facilitate real-time communication between clients and servers.
- Familiarity with Rails basics and adherence to Rails conventions as per .
- Effectively manage Rails Routes and Serialization for seamless API development.
- Utilize Rake for task automation and management within the Rails framework.
- Work with Ruby version managers like rbenv, asdf, or RVM for project-specific Ruby environments.
- Conduct unit testing using RSpec to ensure the quality and reliability of the code.
- Understand variable scoping to maintain code clarity and avoid unintended side effects.
Requirements:
- Bachelor's degree (BE/BTech) in Computer Science or related field (or equivalent experience).
- Proven experience as a Ruby on Rails Developer with a strong portfolio of successful projects.
- In-depth knowledge of Bundler, Active Record, Sidekiq, Redis, memcached, and other relevant tools and technologies.
- Familiarity with design patterns, metaprogramming, and distributed database operations.
- Strong understanding of Ruby version management, unit testing, and Rails conventions.
- Excellent problem-solving and analytical skills.
- Ability to work both independently and collaboratively in a team-oriented environment.
- Strong communication and interpersonal skills.