ミツモア Tech blog

「ミツモア」を運営する株式会社ミツモアの技術ブログです

PostgreSQLで実装する効率的なシーケンス管理

こんにちは。ミツモアエンジニアの加藤です。 ※こちらはミツモアAdvent Calendar 2024の12/13の記事です この記事では、シーケンス管理の実装方法として、PostgreSQLを利用した具体例を紹介します。 ミツモアのプロダクト「ProOne」では、ユーザー設定に基づ…

Using Rust as a Typescript developer

Hello everyone, this is @GuillaumeDecMeetsMore from the Foundation team. For this advent calendar, I'll talk a little about our ongoing attempt at using Rust at Meetsmore. As you may already know, we are a company that mostly uses Typescri…

mongoose のpopulateの型を動的に生成する / Create a dynamic type for mongoose populate

こんにちは、株式会社ミツモアの坂本です この記事はミツモアアドベントカレンダー2024 2日目の記事です。 振り返ると毎年TypeScriptの型に関する記事を書いていますね。 https://engineering.meetsmore.com/entry/2022/12/06/215335 https://engineering.me…

DIDでの有意差検定やサンプル数推定について考えた

※こちらはミツモアAdvent Calendar 2024の12/10の記事です こんにちは、ミツモアプロダクト部データグループの増田(@masudahiroto.bsky.social)です。ミツモアでは、データドリブンでプロダクトを改善するために数多くのABテストを実施しています。その際に…

S3内のCloudFrontのCSVログデータをBQに連携した話

※こちらはミツモアAdvent Calendar 2024の6日目の記事です ミツモアデータチームの赤藤と申します。 主にデータ基盤の運用、データ加工、可視化を行なっています。 今回はAWSのS3内に保存しているCloudFrontのログファイルをBigQuery(BQ)に連携した話をしよ…

Declarative GitOps with Argo CD

Hi, this is David(@tianweiliu) from MeetsMore’s Site Reliability Engineering team. In MeetsMore, we have been using Elastic Container Service provided by Amazon Web Services for hosting all of our services. Recently, we have also started u…

Language Exchange Lounge

The Language Exchange Lounge is a meeting to practice speaking English and Japanese. It could be for any language but that’s what we focus on at MeetsMore. How does it work? 3 times a week, we meet for 30 minutes to exchange on many topics…

AirbyteとdbtでNotionデータを分析基盤に!data pipeline構築例

※こちらはミツモアAdvent Calendar 2024の3日目の記事です お久しぶりです。ミツモア データマネージャの古田 @crazysrot です 皆さんはNotionのデータをexportした上で分析に使うことはあるでしょうか?自動で更新する仕組みを作りたくなったことはあるでし…

API Gatewayのswagger.jsonをNestJSと組み合わせて自動生成する

こんにちは、株式会社ミツモアの坂本です この記事はミツモアアドベントカレンダー2024 2日目の記事です。 本記事ではプロワン内で実施している API Gateway の設定を自動化するためのJSON自動生成について紹介します。 API Gateway と OpenAPI プロワンでは…

ExpoアプリiOS Simulatorでプッシュ通知受信側を簡単に検証する

こんにちは、ミツモアのエンジニアの@teradonburiです。 今年もアドベントカレンダーの季節になりましたね。 弊社ミツモアでは、Expoでモバイルアプリを開発しています。 今回はExpoのiOS Simulatorでプッシュ通知を手軽に受信する方法を紹介します。 プッシ…

ミツモアの数十万ランディングページを支える技術

※こちらはミツモアAdvent Calendar 2023の25日目の記事です。 メリークリスマス、ミツモアエンジニアの @teradonburiです。 今回はミツモアの数十万のランディングページ(以下LP)を支える技術に関して紹介します。 ミツモアでは多種多様のサービス提供事業…

ミツモアのインシデントフローを整備した話

※こちらはミツモアAdvent Calendar 2023の22日目の記事です。 こんにちはミツモアエンジニアの hana です。 今回は ミツモアのインシデントが発生した際のフローを整備した話をしようと思います。 インシデントフロー整備までの問題点 インシデント発見時の…

Multilingual Workplaces — Overcoming challenges

Created with ChatGPT using DALL_E Hello! I'm Will Spaur, an engineer at MeetsMore. こんにちは。ミツモアのエンジニアのウィルスパールです。 Multilingual workplaces are becoming more common as many industries gather amazing minds from all ove…

Redash importdataを完全にGAS化した

※こちらはミツモアAdvent Calendar 2023の20日目の記事です。 お久しぶりです。ミツモアデータマネージャの古田です。 ミツモアではBIツールとして、Redashを導入しています ビジネスチームは、Redashを通して日々様々なモニタリング、分析を実施しています…

PythonからRedashを実行する話

※こちらはミツモアAdvent Calendar 2023の19日目の記事です。 ミツモアのデータチームに6月から参画している赤藤と申します。主にデータ基盤の運用、データ加工、可視化を行なっています。 ミツモアではBIツールとしてRedashを使用しており、RedashをPython…

LLMを使ってSEO記事を整理する試み

初めまして、ミツモアのデータチームの増田です。11月からミツモアに入社して、データやAI、マッチングアルゴリズムに関連する様々な業務に携わっています。 まだ入社してそれほどの期間しか経っていませんが、LLMを用いたSEOチームとの協力プロジェクトがユ…

Playwrightで秒数指定wait処理を避けてスマートにする

はじめに 自己紹介 こんにちは。 ミツモアのQAエンジニアの山本です。 1人目のQAエンジニアとしてチームを立ち上げ、現在はミツモア、MeetsOneの2つのプロダクトのQA全体のリーダーとして日々プロダクトに向き合いつつ、楽しく働いています。 ミツモアは「テ…

Designing A Good Event System API

Designing A Good Event System API At MeetsMore, we’ve recently decided to overhaul our old event system and build a better one. Our old event system used an ‘in memory’ implementation, where you could dispatch events, but they would be pro…

型トリビアの泉〜素晴らしき型知識〜

※ こちらはミツモアAdvent Calendar 2023の13日目の記事です。 型知識が明日のあなたを変える、型トリビアの泉へようこそ ミツモアの坂本です。 本日も、生きていく上で役には立ちそうだし、つい人に教えたくなってしまうような型トリビアを紹介していきます…

Bots make us more efficient

Being an engine Hello, I’m Cola from MeetsMore, a new member of SRE team in foundation department. As a home-lab enthusiast passionate about managing infrastructures and services, my journey started with this sentence: “Building the founda…

Observing and improving API performance

Hello everyone ! My name is Guillaume (@GuillaumeDecMeetsMore) and I'm a senior software engineer in the Foundation team at MeetsMore. In this article, we are going to talk a little about API performance. It happens to all of us: we implem…

How do We Optimize MongoDB Latency and Reduce Cost

Hi! My name is Kei(@keidarcy) and I’m the SRE team leader at MeetsMore, a local services company based in Tokyo. MeetsMore has been using MongoDB on MongoDB Atlas for over 6 years. Our backend API language is TypeScript, and we use Mongoos…

ECS 外部デプロイコントローラーで PGSync と Elasticsearch を安全にデプロイする

こんにちはミツモアエンジニアの ton です。 今回は PGSync というツールとそれを安全に運用するための工夫をご紹介したいと思います。 PGSync とは PGSyncとは PostgreSQL のデータをほぼリアルタイムで Elasticsearch に同期するためのミドルウェアツール…

MUIのTree dataで階層構造を実装する方法を解説!

初めまして!ミツモアのエンジニアの佐藤(@satoman)です。 簡単に自己紹介をすると、今年から学生の頃からインターンでお世話になっているミツモアで新卒(?)のエンジニアとして働いています。 僕は現場仕事に特化したオールインワンSaaS「MeetsOne」の…

PM2年目が学んだプロダクト作りで外せないポイント - パート1

初めまして、ミツモアのプロダクトマネージャー歴2年目の仲井です。現在、ToB向けのVertical SaaSのPMをしています。 ミツモアでは日々営業、カスタマーサクセスチーム(CS)、PM、エンジニア、デザイナーが密にコミュニケーションをとりながら、一丸となっ…

ChatGPT での大規模リファクタリング - 理想と現実

※ こちらは ミツモアAdvent Calendar 2023 の 2 日目の記事です。 こんにちはミツモアで VPoE をしている白柳(@yanaemon)です。 Generative AI、特にミツモアでは Github Copilot & ChatGPT を利用していますが、小規模なリファクタリングはとても効果を発…

Partytownでブラウザでお手軽に並列処理をする

初めまして、 ミツモアのエンジニアの@teradonburiです。 2023年度の年度末アドベントカレンダーの先鋒を切らせていただきます。 今回紹介したいテクニックはブラウザ上で比較的簡単に並列処理を導入する方法です。 ブラウザのJavaScriptは通常シングルスレ…

PostgeSQL+PrismaでJSON型を使用したカスタムフィールドの実装

※ こちらはミツモアAdvent Calendar 2022の15日目の記事です。 ミツモアでは、MeetsOneというフィールドサービス向けのSaaSを提供しています。 フィールドサービスというのは、ハウスクリーニングや引越しなど、実際に現場を訪問し作業を行うお仕事です。 Sa…

ミツモアの数万ランディングページを爆速にした件

私の戦闘力は53万です。 メリークリスマス、ミツモアの@teradonburiです。 弊社ミツモアでは多種多様な業種のプロに依頼ができるプラットフォームのミツモアを運営しております。 今夏、Search Console上で改善が必要な約2.5万ページの速度を開発チームで…

手動テストは救い

※ こちらはミツモアAdvent Calendar 2022の22日目の記事です。昨年の記事については ミツモアAdvent Calendar 2021 こちらを見てみてください。 qiita.com こんにちは!ミツモア エンジニア の髙橋(@yumit414)です。 もうすぐクリスマスですね☃️ 突然です…