シンクロ・フード エンジニアブログ

https://tech.synchro-food.co.jp/

飲食店ドットコムを運営する、株式会社シンクロ・フードの技術ブログです

フィード

記事のアイキャッチ画像
Rails アプリケーションのフロントエンドを webpack から Rspack に移行しました
シンクロ・フード エンジニアブログ
はじめに こんにちは。開発部の竹内です。 弊社のプロダクトの1つである モビマル におけるフロントエンドビルドツール刷新の取り組みについてご紹介します。具体的には webpack から Rspack への移行を行いましたので、手順や結果をお伝えしたいと思います。 既存のプロジェクトの構成 モビマルはRailsアプリケーションとして構築されており、Reactで書かれたフロントエンド部分はwebpackでバンドルされ、app/assets/ディレクトリに出力されていました。その後、アセットパイプラインを通して利用するというワークフローになっていました。 ですが、この構成には以下の課題がありました。…
18時間前
記事のアイキャッチ画像
手続き的なCSVパーサーをDSLで宣言的に書き換えて保守性を改善した話
シンクロ・フード エンジニアブログ
こんにちは。開発部 HR事業管理開発チームの田中です。 主に求人飲食店ドットコムの社内・代理店向け管理機能を担当しています。 今回は、チームで開発・保守しているCSV一括処理機能を技術的に改善しましたので、そのときのことについてお話しします。 なぜCSV一括処理の改善をしたのか 「求人飲食店ドットコム」に掲載される求人情報やその他関連情報は、シンクロ・フードの営業メンバーや提携している代理店の方々によって日々大量に作成・更新されています。 そのため、管理システムの入力フォームから一件ずつデータを入力するよりも、CSVファイルに情報をまとめて入力し、一括でデータを操作する方が効率的に業務を進めら…
20日前
記事のアイキャッチ画像
「ふりかえりカタログ」の振り返り手法をチームで実践してみました
シンクロ・フード エンジニアブログ
こんにちは、開発部会員企画開発チームの日比野です。 今回は、私たちのチームで導入したいくつかの振り返り手法についてご紹介します。 背景 私たちのチームでは週次で KPT(Keep, Problem, Try) を用いた振り返りを行っていましたが、次第に意見が出にくくなり、チームとして取り組むべき課題も挙がりにくくなるという問題を抱えていました。 この状況を改善するため、私たちは新しい振り返りの手法を試してみることにしました。 ふりかえりカタログ 「何か新しい振り返りのやり方はないか?」と探していたときに見つけたのが、こちらの「ふりかえりカタログ」です。 qiita.com このサイトには目的や…
2ヶ月前
記事のアイキャッチ画像
RubyKaigi2025に参加した弊社メンバーで感想を話し合いました
シンクロ・フード エンジニアブログ
開発部・アプリ基盤チームの深野です。 今回、弊社から自分を含む3名が松山で開催されたRubyKaigi2025に参加して色々なセッションを聞いてきました。 その3名で印象に残ったセッションのことや参加しての感想などを話し合ったものを文字起こしして、再構成したものが今回のブログになります。 なお、弊社はSilver SponsorとしてRubyKaigi2025に協賛させていただきました。 自己紹介 竹内: シンクロフード3年目の竹内と申します。普段は主にモビマルというキッチンカー関連のサービスの開発を行っています。Rubyに関しては、高校生くらいの時からやっていて、もう20年くらい前から触れて…
2ヶ月前
記事のアイキャッチ画像
本番環境 DB の個人情報マスキングフローを Jenkins から StepFunctions に移行しました
シンクロ・フード エンジニアブログ
初めまして、SRE チームの 辻井 です。 先日、本番環境 DB の個人情報マスキングフローを Jenkins から Step Functions に移行しました。 今回はその対応や検討の経緯を紹介させていただきたいと思います。 背景 本番環境 DB の個人情報マスキングフローでは、最初に本番環境 DB のクローンを作成し、マスキングした後に社内公開しています。 (なお、本稿では上記フローで作成する DB を クローン DB と呼称させて頂きます。) そもそもクローン DB は何を目的に作成している? クローン DB が作られている理由は2つあります。 理由1: サービス指標などの分析のため、…
2ヶ月前
記事のアイキャッチ画像
parallel_testsを使ってCIの実行時間を改善しました
シンクロ・フード エンジニアブログ
こんにちは、シンクロ・フードの中川です。 今回は、弊社で運用している Rails アプリケーションにおける、CI での RSpec 並列実行のための parallel_tests 導入と、その結果について紹介します。 背景 弊社ではGitHub Actions を使って Rails アプリケーションの自動テストを実行しています。しかし、テストケースの増加に伴い、CI の実行時間が長くなり、開発サイクル全体の速度を低下させるという課題がありました。 そこで、RSpec を並列で実行できる parallel_tests という gem を導入し、CI の速度改善を行うことにしました。paralle…
3ヶ月前
記事のアイキャッチ画像
2025年3月時点のシンクロ・フードの技術構成
シンクロ・フード エンジニアブログ
シンクロ・フードの越森です。 以前、2022年8月に技術構成を紹介する記事を書きましたが、2025年3月末時点での代表的な技術構成をお伝えする記事を書きたいと思います。 求人票にも書いたりしていますが、ここではより詳しく説明をしたいと思います. 言語・フレームワーク Ruby & Ruby on Rails Java & Seasar2 PHP & Lumen Express.js React, TypeScript 3年前から変わったこととしては、M&Aによりサービスを譲受したことで PHP & Lumen、Express.js のシステムが増えました。 PHP & Lumen のシステムに…
5ヶ月前
記事のアイキャッチ画像
生成AIを利用して物件登録にかかる時間を大幅削減した話
シンクロ・フード エンジニアブログ
はじめまして。開発部の小関と髙木です。 今回は弊社のサービスである「飲食店ドットコム 店舗物件探し」の機能として、生成AIを活用した物件登録補助機能を提供することになったので、開発の進め方と実装した機能についてお話できればと思います。 飲食店ドットコム 店舗物件探し まず、弊社のサービスである「飲食店ドットコム 店舗物件探し」について紹介いたします。本サービスは、飲食店が得意な物件探しサイトとなっており、店舗に強い不動産会社と提携することで、多数の店舗物件や居抜き物件を掲載しております。掲載されている物件には、最寄駅や賃料など物件情報が満載となっております。 機能開発の背景とプロジェクトの流れ…
5ヶ月前
記事のアイキャッチ画像
DevOpsの変更リードタイムの可視化システムを作成する
シンクロ・フード エンジニアブログ
こんにちは、2024年新卒入社、開発部の岡塚です。現在は主に求人飲食店ドットコムなどの開発に携わっています。 弊社の新卒エンジニア研修ではWeb開発技術の基礎からシステムの設計・開発までがカリキュラムとして組み込まれています。今回はその中でもシステムの設計・開発を学ぶ「システム設計研修」で私が開発を担当したテーマであった「変更リードタイム可視化機能」について紹介します。弊社の新卒研修については、以下の記事で詳細に紹介されています。 tech.synchro-food.co.jp 背景 弊社では開発生産性向上活動の一環としてFour Keysを用いた生産性計測が行われています。生産性可視化の取り…
5ヶ月前
記事のアイキャッチ画像
クロスブラウザテストツールに LambdaTest を導入しました
シンクロ・フード エンジニアブログ
こんにちは。開発部の竹内です。 Web開発において、異なるブラウザやデバイスでの表示・動作確認は欠かせません。しかし、物理デバイスでの確認には限界があり、すべての環境を網羅するのは困難です。より効率的にクロスブラウザテストを実施するために、クラウドベースのテストツール LambdaTest を導入しました。本記事では、その導入の背景や運用、課題について紹介します。 背景 開発時に Web ページのクロスブラウザでの確認が十分にできていないことがありました。特に iOS や Android といったモバイル環境の確認は開発者が私物のデバイスを使って行っており、以下のような課題がありました。 確認…
5ヶ月前
記事のアイキャッチ画像
Railsで稼働しているWebサービスをサブディレクトリから新規ドメインに移行しました
シンクロ・フード エンジニアブログ
開発部の光永です。 店舗デザイン.COM・求人@インテリアデザイン・内装建築.com・グルメバイトちゃんなどのサービスの開発に携わっています。 弊社が運営しているサービスの1つであるグルメバイトちゃんで新規ドメインに移行するという開発が行われました。1つのRailsアプリケーションで2つのドメインを利用する形となっていて、あまり見ない例だと思うので、開発の内容や、リリースの手順を紹介します。 グルメバイトちゃんについて まず初めにグルメバイトちゃんがどんなサービスなのか紹介します。 グルメバイトちゃんは2023年から弊社で開発をしている新規サービスです。ショート動画を使ってアルバイト募集をする…
5ヶ月前
記事のアイキャッチ画像
プッシュ通知一括送信をFCM Topic送信に置き換えた話
シンクロ・フード エンジニアブログ
はじめまして、開発部の濱野です。 普段は飲食店ドットコムや求人飲食店ドットコムといった弊社の「飲食店と求職者のマッチングサービス」に関わるサービスや業務システムの開発に携わっています。 今回はFirebase Cloud Messaging(以下FCM)のBatch Send API廃止に伴い、プッシュ通知の一括送信機能をFCM Topicへ移行した経緯と移行時の対応方針や検討したことを紹介します。 背景と課題 弊社では求人飲食店ドットコムのAndroid/iOSアプリを作成しており、ユーザの操作に伴って送信される通知のほか、メールマガジンのような一度に大量の通知を送信する機能にFCMを活用し…
6ヶ月前
記事のアイキャッチ画像
アプリのローディングUIをスケルトンビューに変える対応で試行錯誤した話
シンクロ・フード エンジニアブログ
はじめまして、モバイルアプリチームの佐々木です。普段は主に求人飲食店ドットコムアプリ(以下、求人アプリ)のiOS開発を担当しています。 「求人飲食店ドットコム」では飲食店専門で求人情報を掲載しており、アプリで求人情報の閲覧から応募、応募先とのやりとりまで行えます。 今回は、初めて調査からリリースまでを一貫して担当した、求人アプリのローディングUIを変更する対応でスケルトンビューを導入したので、その過程で悩んだことや学んだことについて共有します。 スケルトンビューとは そもそもスケルトンビューとはどのようなものかご存知でしょうか? アプリやウェブサイトでデータを読み込んでいる間にページのレイアウ…
7ヶ月前
記事のアイキャッチ画像
Lambda(Ruby) + Slack スラッシュコマンドで社内ジョブをクラウド化
シンクロ・フード エンジニアブログ
初めまして、SREチームの柴山です。 今回は 社内サーバーで動いていたデプロイ補助ツールを、 Lambda+Slack でクラウド化した際の作業を備忘録として共有します。 背景 このツールはオンプレミスの社内サーバー上の Jenkins のジョブとして用意され、都度ウェブブラウザからジョブを実行して実行結果をジョブのログとして確認していました。 この度オンプレミスの社内サーバーを廃しクラウドに移行するにあたり、 Slack からも見れるようにしたいとの要望があり、本対応を行いました。 構成概要 処理の流れは以下のようになっています。 ユーザーがスラッシュコマンドを実行 Slack から 認証用…
8ヶ月前
記事のアイキャッチ画像
Slackを活用したチームの課題解決と共有プロセス
シンクロ・フード エンジニアブログ
こんにちは、開発部の椿です。 飲食店ドットコムやモビマルなどのサービス開発・運用保守を担当する「会員企画開発チーム」のチームのリーダーを務めています。 今回は、チーム内で実践している「問題・課題をチーム全体で解決していく」という運用方法についてご紹介します。 運用を始めた経緯 最初のきっかけ 私たちのチームでは毎月バグの振り返り会を開催し、バグ抑制のための対策立案とその振り返りを行っています。 この過程で、技術不足に起因するバグを抑えるため、問題のあるコードをメモし、チームのコーディング規約としてまとめていく方針を立てました。 発展 まず、Slackに問題のあるコードをメモしていく運用を開始し…
9ヶ月前
記事のアイキャッチ画像
Kaigi on Rails 2024に参加しました
シンクロ・フード エンジニアブログ
アプリケーション基盤チームの深野です。 普段は社内の開発環境の整備やいくつかのアプリケーションのRuby/Railsのバージョンアップなど、SRE的な業務のインフラ寄りでない部分を主に行っています。 弊社では、業務時間内の扱いとして勉強会や技術カンファレンスに参加できる制度があるため、Ruby Kaigi 2024に続いて人生で2回目の大規模な技術カンファレンスとしてKaigi on Rails 2024に参加してきました。 Ruby Kaigi 2024とは異なり、Kaigi on Rails 2024は弊社は特にスポンサードなどはしていないのですが、快く送り出していただけました。 Kaig…
10ヶ月前
記事のアイキャッチ画像
社内サーバー上のJenkinsジョブからAWS Codeサービス群にデプロイ処理を移行しました
シンクロ・フード エンジニアブログ
はじめまして、SRE チームの佐藤です。 SREチームの業務として、サービス信頼性向上のためのインフラの構築/改善や保守業務や、開発業務効率向上のためのCI/CD整備等に携わっています。 先日、社内サーバー上のJenkinsジョブで実装されていたビルド/デプロイの仕組みをAWS Code サービス群やAWS Step Functionsを利用した新構成へ移行しました。 今回はその対応や検討の経緯を紹介させていただきたいと思います。 移行の背景 既存構成 シンクロ・フードで提供しているサービスは基本的にRuby on Railsで構築されているのですが、昔から使っているシステムではJava (S…
1年前
記事のアイキャッチ画像
シンクロ・フードのエンジニアが書籍購入補助制度を利用して2023年度に購入した書籍ランキングTOP5を紹介します
シンクロ・フード エンジニアブログ
こんにちは、シンクロ・フードの越森です。 昨年、書籍購入補助制度を利用して2022年度に購入した書籍を紹介する記事を書いていますが、今年も2023年度(2023年4月〜2024年3月)に購入した書籍のランキングを紹介してみようと思います。 tech.synchro-food.co.jp 2023年度の購入書籍 2023年度の1年間で購入された書籍数は195冊で、エンジニアは35名在籍していることから1人当たり5.6冊購入している計算になります。 2023年度の購入書籍ランキングTOP5 次に2023年度に購入された書籍のランキングTOP5は以下になります。 順位 書籍名 購入冊数 1位 システ…
1年前
記事のアイキャッチ画像
求人@インテリアデザインのRailsリプレースが完了したのでリプレースの効率とバグの傾向を分析してみた
シンクロ・フード エンジニアブログ
はじめまして、開発部の大沼です。 求人インテリア・内装建築・グルメバイトちゃんなどのサービスの開発に携わっています。 2019年から始まった求人@インテリアデザイン(以下求人インテリア)のRailsへの移行プロジェクト(以下Railsリプレース)が完了したので、それについてお話ししたいと思います。 Railsリプレースの報告と共に他サービスでリプレースを行っていくときの参考になればと思い効率とバグの傾向を分析することにしました。 求人インテリアとは 求人インテリアは2005年にサービスを開始しているインテリアデザイン業界に絞った専門求人サービスです。 以前はJavaとSeasar2を使用して開…
1年前
記事のアイキャッチ画像
担当サービス体験会をやってみた
シンクロ・フード エンジニアブログ
こんにちは。開発部の飛澤です。 求人飲食店ドットコム関連サービスの開発・運用保守を担当している開発チームのチームリーダーをやってます。 普段は飲食店ドットコムや求人飲食店ドットコムといった弊社の「飲食店と求職者のマッチングサービス」(※以下求人事業)に関わるサービスや業務システムの開発に携わっています。 今回はチーム活動の一環として、担当サービス体験会を実施したのでその感想などをお伝えしたいと思います。 担当サービスについて 弊社の飲食店向けサービス「飲食店ドットコム」は、飲食店の出店・開業から運営、退店までをサポートする経営・運営支援プラットフォームです。私たちの開発チームは、「飲食店運営」…
1年前
記事のアイキャッチ画像
突撃!隣のキーボード 2024年
シンクロ・フード エンジニアブログ
こんにちは。 開発部の四之宮です。 エンジニアブログ界で定番となっているであろう「突撃!隣のキーボード」ですが、弊社では記事にしたことがなかったので、この度記事にしてみました。 弊社開発部ではフルリモート制度が導入されており、日本国内であればどこからでもリモートワークで勤務可能となっています。 そのため、自宅の開発環境に投資する社員も増えていますが、まずはキーボードに投資する方も多いのではないでしょうか? そこで、エンジニアを対象にアンケートの実施と、数名にこだわりについて語っていただきました。 アンケート結果 弊社のエンジニアを対象に、使っているキーボードについてのアンケートを実施しました。…
1年前
記事のアイキャッチ画像
Railsアプリケーションで使われているモデルをRSpecを使って自動的に機能ごと一覧化する
シンクロ・フード エンジニアブログ
こんにちは。開発部の竹内です。 飲食店ドットコムやモビマルといったサービスで Ruby on Rails での開発に携わっています。 Railsアプリケーションで使われているモデルをRSpecを使って自動的に機能ごと一覧化する対応を行いましたので、それについてお話ししたいと思います。 背景 コードを修正するにあたり、既存の機能に影響がないか・整合性があるかを調べるのは重要です。ですが私が所属する会員企画開発チームでは影響範囲の確認が漏れてバグや仕様上の不整合が発生することが多く、課題となっていました。 そのため機能ごとにどのモデルが使用されているかが分かるドキュメントを整備し、影響範囲の調査や…
1年前
記事のアイキャッチ画像
Aurora MySQL v3 (MySQL 8.0 互換) へのアップグレード対応
シンクロ・フード エンジニアブログ
はじめまして、SRE チームの村山です。 今回、弊社の主要サービスで使用している Aurora MySQL のアップグレードを行いましたので、対応内容や得られた知見についてご紹介したいと思います。 背景 弊社で使用している Aurora は、2022 年 10 月に Aurora MySQL v1 (MySQL 5.6 互換) から Aurora MySQL v2 (MySQL 5.7 互換) へとアップグレードしております。その際の対応については、以下の記事をご覧ください。 tech.synchro-food.co.jp その後も v2 を使用していましたが、2024 年 10 月 31 日…
1年前
記事のアイキャッチ画像
RubyKaigi 2024に参加しました
シンクロ・フード エンジニアブログ
はじめまして、開発部の大庭です。 普段はRuby on Railsを用いたアプリケーション開発を行なっています。 今回、那覇で開催されたRubyKaigi 2024に参加してきましたので、印象に残ったセッションや感想をお伝えしたいと思います。 なお、弊社はSilver SponsorとしてRubyKaigi2024に協賛させて頂きました。 rubykaigi.org 印象に残ったセッション Day1 Keynote 「Writing Weird Code」 発表資料はこちらから確認できます。 Day1のキーノート Writing Weird Code の発表資料です。My day1 keyno…
1年前
記事のアイキャッチ画像
中途入社モバイルアプリエンジニアが入社後4ヶ月で感じたこと
シンクロ・フード エンジニアブログ
自己紹介 こんにちは、開発部モバイルアプリチームの横山です。 普段は求人飲食店ドットコムのAndroidアプリの開発をしている私ですが、今年の2月に中途入社しました。 社会人になって10年目になります。 新卒でIT業界とは関係のない業界に就職し、コロナの影響など紆余曲折を経て前職でエンジニアとしてのキャリアをスタートしました。 前職は会社ではWebサイト開発とFlutterを使ってiOS・Androidアプリケーションの開発をしていました。 そんな私が入社して4ヶ月を経とうとしている今、入社エントリーとして、転職活動をしていた当時や、入社してからのシンクロ・フードでの経験を振り返り、感じたこと…
1年前
記事のアイキャッチ画像
便利な社内アシスタントBotのシステム構成を大公開!
シンクロ・フード エンジニアブログ
こんにちは、開発部モバイルアプリチームの小関です。 普段は求人飲食店ドットコムのiOS・Androidアプリの開発をしている私ですが、昨年4月に設立された「GPTプロジェクトチーム」にも参加しており、この1年でより一般的にも身近になってきた生成AIをサービスや普段の業務に使えないかと模索する仕事もする日々です。 今回は、そんな「GPTプロジェクト」の一環で作成した社内アシスタントBotによって、ナレッジの検索しづらさを解決しようとした事例をご紹介しようと思います。 GPTプロジェクトとは 弊社では2023年4月から、CTO直下に「GPTプロジェクトチーム」を新設して(*1)、ChatGPTのよ…
1年前
記事のアイキャッチ画像
Four Keys によるシンクロ・フード開発チームの生産性可視化
シンクロ・フード エンジニアブログ
はじめまして、シンクロ・フード開発部の眞田です。 今回、シンクロ・フードにおける開発生産性向上活動の一環として開発部 各開発チームのFour Keysを計測しパフォーマンスレベルを比較しました。Four Keysの指標値やデータの分布などを比較していくと各開発チームごとの差異が見られ課題も見えてきましたので、ご紹介しようと思います。 Four Keysの概要 Four Keysは、GoogleのDevOps Research and Assessment(DORA)チームの研究・調査により示されたソフトウェア開発チームのパフォーマンスを表す指標で、4つの指標と指標それぞれに対する4つのレベルで…
1年前
記事のアイキャッチ画像
Gmail メール送信者のガイドラインに対応した話
シンクロ・フード エンジニアブログ
はじめまして。開発部の髙木です。 今回は Google が去年新たに制定したメール送信者のガイドラインに対応したので、具体的な対応方法とその結果をご紹介したいと思います。 Google が制定したメール送信者のガイドラインについて詳しく知りたい方は、公式の記事を確認していただければ理解しやすいと思います。 Google オフィシャル技術ブログ メール送信者のガイドライン 弊社のメール事情 弊社は飲食店に関わる多種多様なサービスを展開しています。そのため、それぞれのサービスごとにお客様へ販促・トランザクションメールを送信する必要があります。例えば、飲食店の開業を検討しているお客様におすすめの新規…
1年前
記事のアイキャッチ画像
飲食店ドットコムの中で一番負荷の大きかった検索機能にOpenSearchを導入した話
シンクロ・フード エンジニアブログ
はじめまして。開発部の深野です。 今回は飲食店ドットコムの中のスカウト対象者検索という、サービス内でも一番DB負荷の高かった機能にOpenSearchを導入したので、導入時に検討したことと導入結果を紹介します。 シンクロ・フードのエンジニアブログでは、以前にも求人飲食店ドットコムの求人検索という機能にOpenSearchという全文検索エンジンを導入したことを紹介したことがあります。そのため、OpenSearchについて詳しく知りたい方は是非こちらの記事を先にお読みください。 OpenSearch の導入による検索システム改善のための認証・認可設計と負荷検証結果 求人飲食店ドットコムの求人検索に…
2年前
記事のアイキャッチ画像
シンクロフード新卒エンジニア研修の内容を大公開!基礎を固め、複数のサービスを支える一人前のエンジニアに!
シンクロ・フード エンジニアブログ
まえがき こんにちは!シンクロフード開発部の23新卒宮城です。今年の7月末まで研修を受け、現在は、飲食店ドットコムの開発を行う「会員企画開発チーム」に配属され日々奮闘中です! 本記事では、IT業界に興味のある学生さんやシンクロフードに興味のある学生さんに向けて、入社して3.5ヶ月間の開発部新卒研修の中から特に印象深かった研修内容をお届けします!ぜひ、最後まで読んでいただけると幸いです。 はじめに シンクロフードでは、主に事業部、開発部、管理部の三つの部署があり、新卒研修ではまずはじめに、2週間程度の全体研修を行い、その後、開発部だけ+3.5ヶ月の開発部研修を行います。開発部の研修では、フルリモ…
2年前