{"id":9755,"date":"2026-10-20T18:31:00","date_gmt":"2026-10-20T18:31:00","guid":{"rendered":"https:\/\/mawahebna.com\/?post_type=awsm_job_openings&#038;p=9755"},"modified":"2026-10-20T18:31:02","modified_gmt":"2026-10-20T18:31:02","slug":"senior-ruby-on-rails-backend-developer-rmg-riyadh","status":"publish","type":"awsm_job_openings","link":"https:\/\/mawahebna.com\/ar\/job\/senior-ruby-on-rails-backend-developer-rmg-riyadh\/","title":{"rendered":"\u0645\u0637\u0648\u0631 \u0623\u0648\u0644 \u0631\u0648\u0628\u064a \u0623\u0648\u0646 \u0631\u064a\u0644\u0632 Backend (SENIOR RUBY ON RAILS-backend developer)"},"content":{"rendered":"\n<div class=\"mjbar\" dir=\"rtl\" lang=\"ar\">\n<p class=\"mjbar-intro\">\u062a\u0639\u0644\u0646 \u0634\u0631\u0643\u0629 RMG \u0639\u0646 \u0641\u0631\u0635\u0629 \u0639\u0645\u0644 \u0644\u0645\u0637\u0648\u0631 \u0623\u0648\u0644 \u0641\u064a \u0645\u062c\u0627\u0644 Ruby on Rails \u0648TypeScript \u0628\u0645\u062f\u064a\u0646\u0629 \u0627\u0644\u0631\u064a\u0627\u0636. \u064a\u0631\u0643\u0632 \u0627\u0644\u062f\u0648\u0631 \u0639\u0644\u0649 \u062a\u0637\u0648\u064a\u0631 \u0648\u0635\u064a\u0627\u0646\u0629 \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u0648\u064a\u0628 \u0627\u0644\u0622\u0645\u0646\u0629 \u0648\u0627\u0644\u0645\u0648\u062b\u0648\u0642\u0629\u060c \u0645\u0639 \u062f\u0639\u0645 \u0648\u0627\u062c\u0647\u0627\u062a \u0645\u062a\u0639\u062f\u062f\u0629 \u0627\u0644\u0644\u063a\u0627\u062a.<\/p>\n<h2 class=\"mjbar-h2\">\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0648\u0638\u064a\u0641\u0629<\/h2>\n<ul class=\"mjbar-facts\">\n<li><strong>\u0627\u0644\u0634\u0631\u0643\u0629:<\/strong> RMG | \u0631\u064a\u0646\u0627\u062f \u0627\u0644\u0645\u062c\u062f<\/li>\n<li><strong>\u0627\u0644\u0645\u062f\u064a\u0646\u0629:<\/strong> \u0627\u0644\u0631\u064a\u0627\u0636 (Riyadh)<\/li>\n<li><strong>\u0627\u0644\u062f\u0648\u0644\u0629:<\/strong> \u0627\u0644\u0633\u0639\u0648\u062f\u064a\u0629 (Saudi Arabia)<\/li>\n<li><strong>\u0646\u0645\u0637 \u0627\u0644\u0639\u0645\u0644:<\/strong> \u0641\u064a \u0627\u0644\u0645\u0648\u0642\u0639 (On-site)<\/li>\n<li><strong>\u0646\u0648\u0639 \u0627\u0644\u062f\u0648\u0627\u0645:<\/strong> \u062f\u0648\u0627\u0645 \u0643\u0627\u0645\u0644 (Full Time)<\/li>\n<li><strong>\u0627\u0644\u0645\u0633\u062a\u0648\u0649:<\/strong> \u0645\u062a\u0648\u0633\u0637 \u0625\u0644\u0649 \u0623\u0648\u0644 (Mid-Senior level)<\/li>\n<li><strong>\u0627\u0644\u0645\u062c\u0627\u0644:<\/strong> \u0647\u0646\u062f\u0633\u0629 \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0627\u062a (Software Engineering)<\/li>\n<\/ul>\n<p class=\"mjbar-notice\">\u0627\u0644\u0648\u0635\u0641 \u0627\u0644\u0643\u0627\u0645\u0644 \u0644\u0647\u0630\u0647 \u0627\u0644\u0648\u0638\u064a\u0641\u0629 \u0648\u0645\u062a\u0637\u0644\u0628\u0627\u062a\u0647\u0627 \u0648\u0625\u062c\u0631\u0627\u0621\u0627\u062a \u0627\u0644\u062a\u0642\u062f\u064a\u0645 \u0639\u0644\u064a\u0647\u0627 \u0628\u0627\u0644\u0644\u063a\u0629 \u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629\u060c \u0648\u0647\u064a \u0645\u0639\u0631\u0648\u0636\u0629 \u0623\u062f\u0646\u0627\u0647 \u0643\u0645\u0627 \u0648\u0631\u062f\u062a \u0645\u0646 \u0635\u0627\u062d\u0628 \u0627\u0644\u0639\u0645\u0644 \u062f\u0648\u0646 \u0623\u064a \u062a\u0639\u062f\u064a\u0644 \u0623\u0648 \u062a\u0631\u062c\u0645\u0629.<\/p>\n<\/div>\n<div class=\"mjbar-en\" dir=\"ltr\" lang=\"en\">\n<h3>Job Summary<\/h3><p>This role involves designing, developing, and maintaining secure and reliable web applications using Ruby on Rails and TypeScript, focusing on REST APIs, databases, background jobs, and responsive user interfaces.<\/p><h3>Responsibilities<\/h3><ul><li>Develop and maintain Ruby on Rails applications with clean and modular code.<\/li><li>Design, implement, and document REST APIs.<\/li><li>Create database schemas, handle migrations, and optimize queries and indexes.<\/li><li>Implement authentication, session management, and role-based access control.<\/li><li>Build background jobs using Sidekiq or Active Job for notifications, reporting, and integrations.<\/li><li>Develop responsive interfaces with reusable, strongly typed TypeScript components.<\/li><li>Integrate frontend with Rails APIs, managing authentication, loading states, validation, and error handling.<\/li><li>Support multilingual interfaces including Arabic RTL and English LTR.<\/li><li>Write automated tests using RSpec or Minitest, review code, and mentor junior developers.<\/li><\/ul><h3>Must haves<\/h3><ul><li>Minimum 5 years in web development.<\/li><li>At least 3 years of experience with Ruby on Rails.<\/li><li>At least 2 years of hands-on experience with TypeScript.<\/li><li>Strong knowledge of Ruby, OOP, and MVC architecture.<\/li><li>Experience with PostgreSQL or MySQL databases.<\/li><li>Proven experience developing REST APIs and integrating third-party services.<\/li><li>Experience with RSpec or Minitest and Git-based workflows.<\/li><li>Strong knowledge of JavaScript, TypeScript, HTML, and CSS.<\/li><li>Prior experience working on government projects.<\/li><li>Based in Riyadh, Saudi Arabia, working onsite.<\/li><li>Arabic speaker.<\/li><\/ul><h3>Nice to haves<\/h3><ul><li>Experience with Hotwire, Turbo, Stimulus, SSO, or enterprise identity.<\/li><li>Familiarity with CI\/CD pipelines.<\/li><li>Knowledge of Next.js, Storybook, Figma, or Tailwind CSS.<\/li><li>Experience with enterprise or government applications with demanding requirements.<\/li><\/ul>\n\n<div class=\"mjb-apply-buttons\" style=\"display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:32px 0 16px\"><a class=\"mjb-apply-btn\" href=\"https:\/\/www.linkedin.com\/jobs\/view\/4481733360\/?utm_source=mawahebna&amp;utm_medium=job_board&amp;utm_campaign=linkedin_bridge\" target=\"_blank\" rel=\"nofollow noopener\" style=\"display:inline-block;background:#ff670f;color:#000;border:1px solid #333333;border-radius:4px;padding:15px 30px;font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;text-align:center\">Apply Here<\/a><a class=\"mjb-browse-btn\" href=\"https:\/\/mawahebna.com\/ar\/jobs\/\" style=\"display:inline-block;background:#ff670f;color:#000;border:1px solid #333333;border-radius:4px;padding:15px 30px;font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;text-align:center\">Browse Other Jobs<\/a><\/div><blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>We refresh listings regularly, but some roles close early on the source platform.<\/p><\/blockquote>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u062a\u0639\u0644\u0646 \u0634\u0631\u0643\u0629 RMG \u0639\u0646 \u0641\u0631\u0635\u0629 \u0639\u0645\u0644 \u0644\u0645\u0637\u0648\u0631 \u0623\u0648\u0644 \u0641\u064a \u0645\u062c\u0627\u0644 Ruby on Rails \u0648TypeScript \u0628\u0645\u062f\u064a\u0646\u0629 \u0627\u0644\u0631\u064a\u0627\u0636. \u064a\u0631\u0643\u0632 \u0627\u0644\u062f\u0648\u0631 \u0639\u0644\u0649 \u062a\u0637\u0648\u064a\u0631 [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":9754,"template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"class_list":["post-9755","awsm_job_openings","type-awsm_job_openings","status-publish","has-post-thumbnail","hentry","city-saudi-arabia","job-location-riyadh","job-category-software-engineering","workplace-type-on-site","job-type-full-time","company-name-rmg--","seniority-level-mid-senior-level"],"uagb_featured_image_src":{"full":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"thumbnail":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"medium":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"medium_large":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"large":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"1536x1536":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false],"2048x2048":["https:\/\/mawahebna.com\/wp-content\/uploads\/2026\/10\/rmg-d8b1d98ad986d8a7d8af-d8a7d984d985d8acd8af-logo.jpg",100,100,false]},"uagb_author_info":{"display_name":"","author_link":"https:\/\/mawahebna.com\/ar\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"\u062a\u0639\u0644\u0646 \u0634\u0631\u0643\u0629 RMG \u0639\u0646 \u0641\u0631\u0635\u0629 \u0639\u0645\u0644 \u0644\u0645\u0637\u0648\u0631 \u0623\u0648\u0644 \u0641\u064a \u0645\u062c\u0627\u0644 Ruby on Rails \u0648TypeScript \u0628\u0645\u062f\u064a\u0646\u0629 \u0627\u0644\u0631\u064a\u0627\u0636. \u064a\u0631\u0643\u0632 \u0627\u0644\u062f\u0648\u0631 \u0639\u0644\u0649 \u062a\u0637\u0648\u064a\u0631 [&hellip;]","_links":{"self":[{"href":"https:\/\/mawahebna.com\/ar\/wp-json\/wp\/v2\/awsm_job_openings\/9755","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mawahebna.com\/ar\/wp-json\/wp\/v2\/awsm_job_openings"}],"about":[{"href":"https:\/\/mawahebna.com\/ar\/wp-json\/wp\/v2\/types\/awsm_job_openings"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mawahebna.com\/ar\/wp-json\/wp\/v2\/media\/9754"}],"wp:attachment":[{"href":"https:\/\/mawahebna.com\/ar\/wp-json\/wp\/v2\/media?parent=9755"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}