{"id":933578,"url":"https://alion.io/job/bimm-ruby-on-rails-developer","title":"Senior Ruby on Rails Developer","company":{"id":669565,"name":"BIMM","domain":"bimm.com","url":"https://alion.io/company/bimm","size_band":null,"is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"Greenhouse","truth_index":null},"role":"Backend","role_family":"Backend","seniority":"senior","employment_type":null,"work_mode":"hybrid","remote_scope":null,"remote_scope_basis":null,"remote_working_hours":null,"hiring_geo_confidence":"structured","locations":["Toronto, Canada","Canada"],"countries":["CA"],"hiring_countries":[],"hiring_countries_total":0,"salary":null,"salary_estimate":{"min_usd":75000,"max_usd":135000,"period":"year","method":"role_seniority_country_remote_cell","sample_n":255},"experience_years_min":5,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Auth0","optional":false},{"name":"Capybara","optional":false},{"name":"Datadog","optional":false},{"name":"Devise","optional":false},{"name":"Git","optional":false},{"name":"Hotwire","optional":false},{"name":"Magic","optional":false},{"name":"Minitest","optional":false},{"name":"New Relic","optional":false},{"name":"PostgreSQL","optional":false},{"name":"Rest API","optional":false},{"name":"RSpec","optional":false},{"name":"Ruby","optional":false},{"name":"Ruby on Rails","optional":false},{"name":"Sidekiq","optional":false},{"name":"Stimulus","optional":false},{"name":"Tailwind CSS","optional":false},{"name":"Algolia","optional":true},{"name":"Amazon S3","optional":true},{"name":"AWS","optional":true},{"name":"Brakeman","optional":true},{"name":"Cloudflare","optional":true},{"name":"ElasticSearch","optional":true},{"name":"Fastly","optional":true},{"name":"Heroku","optional":true},{"name":"OpenSearch","optional":true},{"name":"OWASP Top 10","optional":true},{"name":"Typesense","optional":true},{"name":"ViewComponent","optional":true}],"status":"closed","first_seen_at":"2026-08-25T13:44:32Z","employer_posted_date":"2026-10-14","last_verified_at":"2026-11-02T17:47:04Z","board_verified":false,"closed_at":"2026-11-02T17:47:04Z","days_open":69,"trust":{"level":"not_scored","repost_count":null,"flags":[],"days_open":69},"description":"BIMM is booming, so we’re looking for an experienced Senior Ruby on Rails Developer on contract to join our team! \nLocal candidates (GTHA) will be asked to join us at BIMM HQ (Distillery District) 2 days per week. We are open to remote candidates across Canada - you will be required to work on EST hours. \nWho we are \nBIMM is a Toronto-based agency that lives at the intersection of data, technology, and creativity to provide clients with high-performing campaigns and digital products that shape connected customer experiences. We’ve helped our clients implement fully integrated CRM customer journeys, built robust digital experiences, and created national loyalty programs with decades of experience in sectors of automotive, financial, telco and retail. \nWe are creative realists, which means our ideas and solutions are grounded in the realities of our clients’ business. We believe big ideas are nothing without big results (and flawless execution); high-performing agencies deliver high-performing campaigns, products, and experiences; and the best solutions happen when we collaborate with clients as partners. \nOur Technology department is a 50+ person distributed team of Developers, QA, and Architects delivering amazing digital products on a leading-edge technology stack. \nThis is an existing vacancy, not a made-up role - this one’s already got a desk waiting. \nAbout the engagement \nYou will join a multi-year program modernizing the digital platform of a major media and entertainment client. The platform is a large Ruby on Rails 8 application that serves a high-traffic public website, doubles as the editorial CMS, and acts as the integration hub for the client’s ticketing, event-management, and CRM systems. \nThe work spans a website refresh, a significant uplift to the CMS authoring experience, hardening of fragile third-party integrations, a new API layer supporting a companion mobile app, and security and performance work ahead of a hard seasonal traffic peak. It is a mix of greenfield feature work and careful, high-stakes work inside an established codebase you did not write. \nThis is not a rewrite. We are extending and strengthening a working Rails application, not replacing it. \nWho we’re looking for \nYou are a Rails developer in the deepest sense you reach for the framework’s conventions rather than around them, and you are comfortable with server-rendered HTML as a first-class architecture rather than a legacy compromise. You have shipped real features with Hotwire and you can explain why Turbo Frames and Streams are the right tool for a given interaction instead of reaching for a client-side framework by reflex. \nYou are at your best in a codebase with history. You read before you write, you can trace an unfamiliar data flow end to end, and you know how to make a meaningful change in an area with thin test coverage without breaking things around it. You treat a flaky third-party integration as an engineering problem with a real solution rather than an unavoidable fact of life. \nYou have a clear understanding of security and build it into any of your services. Although you have full support of your teammates, you can participate in the research and solution to complex problems. At the same time, you know when to ask for help and don’t let pride or ego get in the way, because after all, you are part of a team. \nYou take initiative and communicate proactively in a distributed team working across time zones, writing clearly and flagging problems early matters as much as the code. We are looking for people who bring curiosity and an appetite for figuring things out. Is this you? \nResponsibilities \nApplication development \nBuild and extend features across a Rails 8 monolith models, controllers, background jobs, and server-rendered views. \nImplement rich, interactive front-end behavior using Hotwire (Turbo Drive, Turbo Frames, Turbo Streams) and Stimulus, styled with Tailwind CSS. \nContribute to a shared component and view-partial library that keeps a large template surface consistent and maintainable. \nCMS and content authoring \nExtend an in-house Rails CMS broaden rich-text editing coverage, introduce reusable content snippets, and move hard-coded page regions into editable configuration. \nHelp design and build a component-based page builder, including the underlying content model and migration of existing authored content. \nWork directly with editorial and marketing stakeholders to understand how authoring actually happens before designing for it. \nIntegrations and data flow \nBuild and harden integrations with third-party event-management, ticketing, and CRM platforms REST APIs, webhooks, and scheduled syncs. \nReplace brittle or manual reconciliation processes with resilient, idempotent integrations that include retry and backoff, dead-letter handling, and automated reconciliation. \nDesign and operate Sidekiq workflows with attention to concurrency, ordering, and failure modes. \nInstrument integrations so failures surface early and are diagnosable without guesswork. \nAPI layer for mobile \nDesign and build a versioned API layer on the existing Rails stack to support a companion mobile app and downstream data consumers. \nHandle authentication, authorization, rate limiting, pagination, and consumer-facing documentation from the outset. \nCollaborate with mobile engineers on contract design and on serving native-specific view variants where the app renders server HTML. \nPerformance, scale and resilience \nProfile and optimize application and database performance against sharp, predictable seasonal traffic peaks. \nImplement caching strategies that hold up when pages contain personalized content - fragment and Russian-doll caching, and edge-cacheable shells with dynamically loaded personal regions. \nSupport the introduction of a CDN and automated scaling in front of the existing PaaS hosting. \nContribute to load testing ahead of known peak events. \nSecurity and quality \nHelp prioritize, execute, and validate security remediation across an existing codebase, and build securely in all new work. \nWrite meaningful automated tests unit, request, and system-level and raise coverage in the areas you touch. \nParticipate in code review as both author and reviewer, and contribute to technical acceptance criteria on tickets you pick up. \nRequirements \n5+ years building and shipping production Ruby on Rails applications, including substantial time in a large existing codebase you did not originally write. \nProduction experience with Hotwire Turbo Drive, Turbo Frames, Turbo Streams and Stimulus. \nRecent Rails 7 or Rails 8 experience, with a working understanding of what changed and why. \nStrong PostgreSQL skills schema and index design, query optimization, reading EXPLAIN output, and finding and fixing N+1 queries. \nBackground job design with Sidekiq or equivalent idempotency, retry semantics, failure handling, and queue isolation. \nThird-party API and webhook integration experience, ideally with upstream systems you do not control and cannot fully trust. Examples: ticketing platforms, CRMs such as HubSpot or Salesforce, event or content management systems. \nAutomated testing in a server-rendered stack RSpec or Minitest, request specs, and system or integration tests with Capybara. \nTailwind CSS and fluency in semantic, well-structured HTML. \nAccessible front-end development to WCAG 2.1 AA, including keyboard navigation, focus management, and correct use of ARIA where markup alone is insufficient. \nAuthentication and authorization experience session and token handling, passwordless or magic-link flows, OAuth2/OIDC concepts, and role-based access control. Familiarity with a hosted auth provider (SuperTokens, Auth0, Clerk) or Devise. \nObservability practice: structured logging, metrics, and APM tooling (New Relic, Datadog, Scout, or Skylight), and comfort defining what \"healthy\" looks like for a service. \nGit and pull-request based collaboration, with clear commit history and review-ready changes. \nProfessional fluency in written and spoken English, and the ability to work with at least four hours of daily overlap with Eastern Time. \nNice to have \nDeployment on a managed PaaS: Heroku or comparable plus AWS S3 for asset storage. \nHotwire Native (formerly Turbo Native) on iOS or Android: path configuration, bridge components, or native screen integration. This is a significant differentiator for this engagement. \nCMS and content modelling in Rails Action Text or Trix, ViewComponent or Phlex, block-based or component-based page builders. \nSearch infrastructure PostgreSQL full-text search at scale, or Elasticsearch, OpenSearch, Typesense, or Algolia, including faceted filtering and relevance tuning. \nHigh-traffic or event-driven traffic patterns ticket on-sales, launches, or seasonal spikes and load testing ahead of them. \nCDN and edge caching alongside personalized content Fastly, Cloudflare, or similar. \nSecurity remediation experience Brakeman, bundler-audit, dependency triage, and familiarity with the OWASP Top 10 in a Rails context. \nRails and Ruby version upgrade work, including dependency and gem migration in a large application. \nAnalytics and marketing instrumentation GA4, Google Tag Manager, conversion and funnel event tracking, consent handling. \nDomain exposure in media, entertainment, live events, ticketing, or membership and subscription products. \nWhat’s in it for you? \nWork Life Balance with BIMM days: Spend your birthday any way you’d like, as long as it’s not at the office. Extra day off to enjoy every summer holiday and a week-long end-of-year break. Boo-yah! \nBenefits: We offer a comprehensive health & dental benefits plan with an Employee Assistance Program. BIMMers are also given extra $$$ to put towards wellness or health-related needs. Did we mention our RRSP with matching? A lil BIMM bonus to build your bank. \nCulture: Our squad is fun, friendly and entirely egoless. Our social committee plans BIMM bashes,Tasty Thursdays and quarterly outings like candle making workshops, board game nights, Jays games and cooking classes. Our summer and holiday parties are quite memorable as well! Having Fun Everyday is one of our core values. \nWe believe in working & meeting with purpose. We observe a hybrid working model in our beautiful dog-friendly office located in the Distillery District, stuffed with snacks. \nBelonging: Our dedicated DEI committee provides thought-provoking insights which are reflected in our work; They also organize engaging awareness activities and events to showcase BIMMER’s professional talents and personalities. What talents might you bring? :) \nGrowth: BIMM is part of kyu collective which gives our employees access to the network’s resources, training, offices, and more. We also prioritize your personal and professional development with opportunities like on-site Lunch n’ Learns, conferences and online courses. Love 2 Learn\nBIMM is committed to providing an environment that is inclusive and accessible. We are an equal opportunity employer and consider all applicants for employment without discrimination. Please let us know if accommodation for the recruitment/interview process is required and we will work with you to make sure your needs are met. \nAI in recruitment \nWhile we are exploring ways to best utilize AI in our hiring processes, BIMM currently does not use AI-enabled tools in our hiring process. All candidates are screened by humans, and approved by humans. \nThe range of annual base salary for full-time employees for this position is below. Please note that base pay offered may vary depending on factors including your city of residence, job-related knowledge, skills, and experience.\nTotal compensation range:\n$80,000—$130,000 CAD","description_format":"text","description_chars":11771,"description_truncated":false,"requirements":{"experience_years_min":5,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"English","level":"All levels","optional":false}]},"benefits":["Hybrid work","Professional development"],"hiring_locations":[{"name":"Canada","iso":"CA","kind":"country"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Creative Agencies","Digital Marketing"],"lifecycle":[{"event":"open","at":"2026-09-15T13:07:47Z"},{"event":"close","at":"2026-11-02T17:47:04Z"}],"visa":[],"liveness":null,"pay":null,"html_url":"https://alion.io/job/bimm-ruby-on-rails-developer","json_url":"https://alion.io/job/bimm-ruby-on-rails-developer.json","meta":{"generated_at":"2026-11-06T08:16:12Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":14837,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-11-07T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":669565},"rest":"https://alion.io/mcp/rest/get_company?id=669565"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fbimm-ruby-on-rails-developer"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fbimm-ruby-on-rails-developer"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fbimm-ruby-on-rails-developer"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/bimm-ruby-on-rails-developer\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fbimm-ruby-on-rails-developer"}],"agent":{"mcp":"https://alion.io/mcp/jobs","mcp_open":"https://alion.io/mcp/open","next":[{"tool":"get_job","arguments":{"id":933578}},{"tool":"search_jobs","arguments":{"company":"bimm.com","detail":"compact"}},{"tool":"match_people","arguments":{"job_id":933578},"note":"people open to offers who fit this vacancy"}],"note":"The same data through MCP tools: https://alion.io/mcp/open needs no sign-in (compact searches, postings, people); https://alion.io/mcp with an Alion account has everything. Docs: https://alion.io/developers"}}