【フルリモート/週5/Ruby】全国数万店舗が利用するBtoB予約・顧客管理SaaSのバックエンド開発およびRailsモダナイゼーション
作業内容
【フルリモート/週5/Ruby】全国数万店舗が利用するBtoB予約・顧客管理SaaSのバックエンド開発およびRailsモダナイゼーション ### お任せしたいこと [役割]バックエンドエンジニアとして、全国のサロン、クリニック、飲食店など数万店舗が日々の業務基盤として利用する「BtoB予約・顧客管理SaaS」のRuby on Railsを用いた機能追加、およびレガシーコードの継続的なリファクタリングをお任せします。 [役割に対して求める成果]複雑な予約枠の在庫管理や、店舗ごとの細かなカスタマイズ要件(キャンセルのルール、スタッフの指名条件など)を満たす新機能を、既存のクリティカルなロジックを壊すことなく安全に実装すること。また、数年にわたる運用で「Fat Model」「Fat Controller」と化したコードベースに対し、RSpecでテストを保護しながらService ObjectやForm Object等を用いて段階的にリファクタリングを進め、システムの保守性を劇的に改善すること。 ### 具体的な業務内容 ・Ruby on Railsを用いた、SaaSプロダクトのバックエンドAPIおよびWebアプリケーションの詳細設計、実装、テスト ・ActiveRecordの複雑なクエリによって引き起こされるN+1問題の特定・解消、およびMySQLのインデックス最適化やスロークエリの改善 ・数千行に肥大化したUserモデルやReservationモデルの責務を見直し、ビジネスロジックを適切に分離する実践的なリファクタリング ・RubyおよびRuby on Railsのメジャー/マイナーバージョンの定期的なアップデート作業と、それに伴う影響調査・Gemの依存関係解決 ・RSpecを用いた単体テスト・リクエストスペックの拡充によるデグレ(回帰バグ)の防止と、テスト実行時間の短縮(並列化など) ・カスタマーサクセス(CS)部門から報告される、予約データの不整合や特定条件下でのエラーに関するログ調査(Datadog等を利用)、原因特定、および修正 ・他社SaaS(LINE連携、決済代行サービス、会計ソフトなど)との外部API連携機能の堅牢な実装 ・PdM(プロダクトマネージャー)やフロントエンドエンジニアと連携した、画面表示や状態管理に最適なAPIインターフェースの設計 ### 必須スキル・経験 ・Rubyを用いたWebアプリケーションの開発実務経験(3年以上) ・Ruby on Railsを用いた実務経験(2年以上) ・RDBMS(MySQLまたはPostgreSQL)を用いたデータベース設計、および基本的なSQLの記述・チューニング経験 ・Git/GitHubを用いたプルリクエストベースでのチーム開発経験 ### 歓迎スキル・経験 ・RSpec等を用いたテストコードの記述、およびテスト駆動開発(TDD)の経験 ・Service Object、Form Object、Decoratorなどのデザインパターンを利用した、Fat Model/Controllerの解消経験 ・Ruby、またはRuby on Railsのバージョンアップ対応を主導した経験 ・Sidekiq等を利用した非同期処理、バッチ処理の開発・運用経験 ・AWS(ECS, RDS, ElastiCache等)を利用したインフラ環境の基礎的な理解、または運用経験 ・BtoB SaaS、または予約・決済が絡む複雑な業務システムの開発経験 ### 開発・業務環境 開発言語:Ruby 3.x フレームワーク:Ruby on Rails 7.x データベース:MySQL, Redis インフラ:AWS (ECS Fargate, RDS, S3等), Docker テスト・CI/CD:RSpec, GitHub Actions 監視・ツール:Datadog, Sentry, GitHub, Jira, Slack, Zoom ### プロジェクトチームについて プロダクト開発部のバックエンド(Rails)チームへの配属となります。「とにかく早くリリースする」ことよりも、「加盟店の営業を止めない安定性」と「将来の拡張に耐えうるコード品質」を重視する実直なカルチャーです。影響範囲が見えづらい複雑な仕様改修を行う際は、チーム内で設計方針のレビューを丁寧に行い、独りよがりな実装(オレオレ設計)にならないよう相互に助け合いながら開発を進める体制が整っています。 ### 求める人物像 ・「すべてを最新の言語で書き直す」というスクラップ&ビルドの思考ではなく、現在進行形で売上を生み出しているRailsアプリケーションに敬意を払い、日々の開発の中で少しずつコードを綺麗にしていく(ボーイスカウトルール)ことにやりがいを感じる方 ・ActiveRecordの便利なメソッドに頼り切るのではなく、裏側で発行されているSQLを意識し、データ量が増えてもパフォーマンスが劣化しない設計ができる方 ・ビジネス側の要望(店舗からの機能追加リクエスト)の背景を理解し、エンジニアの視点から「既存のデータモデルを活かしてよりシンプルに実現できる代替案」を建設的に提案できる方 ### 仕事の魅力 店舗の「予約」や「売上」という、ビジネスの生命線を直接的に支えるため、自分の書いたコードが数万店舗の業務効率化にダイレクトに貢献する手触り感を得られます。Railsエンジニアが必ず直面する「Fat Modelの解消」「N+1問題の根絶」「安全なバージョンアップ」といった実践的な技術課題にチームで取り組むことで、エンタープライズ領域における高度なRuby on Railsの設計・運用スキルを着実に磨くことができます。 ### 働き方 #### リモート環境 **[フルリモート]** 基本的にフルリモートで働いていただけます。
稼働条件
週5日 / フルリモート
契約形態
業務委託(フリーランス)
開発環境
Ruby、Ruby on Rails
募集回数
1回
職種・ポジション
スキル
企業名
株式会社Kaizen Tech Agent
サービス/プロジェクト名
詳細スケジュール/リリース時期
現場責任者の雰囲気
開発体制の詳細
詳細は面談でお伝えします。ご相談ください。
一部の情報は非公開の場合があります
案件について詳しく聞いてみませんか?
知りたい内容を選んでください(複数選択可)
