RevComm Tech Blog

コミュニケーションを再発明し 人が人を想う社会を創る

【登壇情報】ML@Loft #16 音声基盤モデル にRevCommのエンジニアが登壇します

はじめに 2025年01月21日(火)に開催される「ML@Loft #16 音声基盤モデル」にRevCommプリンシパルリサーチエンジニアの石塚 賢吉が登壇します。 イベント概要 ml-loft.connpass.com 名称: ML@Loft #16 音声基盤モデル 日程: 2025年01月21日 (火) 会場: AWS St…

RevComm のエンジニアリングチームの 2024 年振り返り

皆さんこんにちは。RevComm の CTO の平村 (id:hiratake55, @hiratake55) です。今年もあと数日となりました。この記事では、2024 年の RevComm の開発チームの振り返りを行いたいと思います。 この記事は、RevComm Advent Calendar 2024 の 25 日目の記事で…

Slack Bolt × VertexAIで仕事効率UP!メッセージの校正をスタンプ1つで行うプチ時短ツール

こんにちは。Corporate Engineeringチーム所属の@mottake3と申します。本記事はRevComm Advent Calendar 2024 の 24 日目の記事です。 はじめに ツールの説明 実装手順 slack appのインストールとtokenの取得 tokenをSecret Managerに登録 アプリケーション…

Amazon Bedrock で実現するユーザーごとの RAG 環境構築 - メタデータフィルタリングの活用法

はじめに Full-stack チームの豊崎です。 RevComm では、MiiTel Analytics の議事録作成をはじめ、LLM を用いた機能開発が活発に行われています。 今回、社内ユーザーが誰でも利用できる RAG 環境を作成しました。これは、RAG 環境をユーザーに提供するため…

Apollo Clientを活用した効率的なGraphQLデータ管理とキャッシュ運用

はじめに こんにちは! RevComm のフロントエンドエンジニアの楽桑です。 私たちのコールセンターシステムでは、GraphQL を使用してデータを管理しており、これまではRecoil を使ってローカルステートを管理していました。 最近では、Recoil の代わりにApoll…

Python × Salesforce CPQ APIで商談~見積品目登録プロセスの自動化

こんにちは。レブコムのコーポレートエンジニアリングチームの@ken-1200です。 この記事は、RevComm Advent Calendar 2024 の 20 日目の記事です。 1. はじめに 2. 開発の背景・モチベーション 3. 前提条件 4. Salesforce CPQ APIの概要 5. 商談(Opportunit…

k6とDatadogを利用して負荷テストをやってみよう

はじめに Phone Div Backend チームの西園です。 私たちのチームでは、システムの性能を向上させるために k6 と Datadog を利用した負荷テストを実施しました。本記事では、その際に利用したツールや実施方法について共有します。 想定読者 負荷テストをやっ…

SlackからNotion連携アプリを開発して営業組織でナレッジ集約&共有の文化を醸成するまでの流れ

はじめに Corporate Engineering という部署で社内営業組織が業務で使用するSalesforceの運用や社内システム開発を担当している瀧山です。 RevCommではコミュニケーションツールとしてSlack、ドキュメント管理ツールとしてNotionを使用しています。 今回は、…

SaaSの開発チームで属人化の解消に取り組んでみた

この記事は RevComm Advent Calendar 2024 の 12日目の記事です。 はじめに こんにちは、バックエンドエンジニアの矢島です。 普段は主にバックエンド領域の開発・保守・運用を行っていますが、チームのサブマネージャーとして組織の運用改善なども行ってい…

イベント駆動型タスクのためのKubernetesワークロードリソース選定

イベント駆動型タスクのKubernetesワークロードリソース選定について実際の設計例を紹介

フロントエンドエンジニアの知見を活かした Google Analytics 活用方法

はじめまして。 RevComm でフロントエンドエンジニアをしている大石と申します。 私の所属しているチームでは、Lean スタートアップの考えを基にプロダクト開発に取り組んでおり、エンジニアが機能を実装してリリースして終わりではなく、そのリリースした機…

Installing multiple private packages with Poetry

Hi, Jose here! I recently began developing a private git package to be used by many services from our organization. While the basic setup was relatively straightforward, I quickly realized how scaling it encompassed many concepts. Factors …

フロントエンドエンジニアがバックエンドに挑戦してみた

はじめに RevComm のフロントエンドエンジニアの上川です。MiiTel Call Centerというプロダクトの開発を担当しています。 これまで、ロードマップ機能の開発では、バックエンドとフロントエンドの担当者が完全に分かれていました。 今回は、フロントエンドを…

vinxi でメタフレームワークをつくってみる

はじめに vinxi はフルスタックアプリケーションやメタフレームワークの構築が可能なパッケージです。 開発サーバーとバンドラーに Vite を、本番サーバーには Nitro を使用しています。 SolidStart や TanstackStart で採用されています。 今回は vinxi を…

Effective Code Review

この記事は RevComm Advent Calendar 2024 の 9 日目の記事です はじめに RevComm では Github を使用して開発を行っており、コードレビューの依頼も PR で行われます。Github の PR の画面では変更差分の表示ができるのでレビューにも使えるのですが、個人…

DataDog Synthetic Testing を使ってE2Eテスト・外形監視を充実させよう

はじめに Phone Divという部署でBackendを担当している中島です。 RevCommではMiiTelをはじめ、複数のマイクロサービスの外形監視をチームごとに行う必要があります。 今回は DataDog Synthetic Testing を利用したE2Eテスト・外形監視の実装、その運用につ…

ReactのuseEffectEventの紹介と現状での代替手段について

はじめに 最近、ReactにuseEffectEventという実験的APIが存在することを知りました。 弊社で提供しているMiiTel Phoneにおいては、WebSocketやWebRTCなどによってさまざまなタイミングや箇所で非同期的にイベントが発生します。 その関係もあってuseEffectを…

Atlantis はじめました

はじめに Atlantis とは 背景 ディレクトリ構成 モジュールの運用 AWS IAM role の設定 おすすめの Atlantis の機能 特定の条件がパスされないと atlantis apply を実行できないようにしたい atlantis apply が実行されていない Pull Request がマージされな…

k8s Job で DataDog にログを出す

背景 弊社ではさまざまなログを DataDog に集約しているのですが、一部サービスで EKS on Fargate を利用しており、datadog-agent + fluent-bit のサイドカー構成で DataDog にログを送っています。 その中でも Job を使用した場合にうまく DataDog にログが…

チーム開発でも安全にTerraformのリファクタリングをしたい

はじめに MiiTel Analytics Platformチームの小門です。 RevCommではサービス基盤にAWSとして利用していますが、IaCには主にTerraformを用いています。 基本的にTerraformコードはGitHubで管理され、プルリクエストを介してCI/CDを自動実行してリソースの構…

Replacing Upgrade Strategy of EKS Cluster: in-place to Blue/Green

By Kenji Yamauchi (Analytics Team) In this blog post, we introduce our new Blue/Green-based upgrade strategy for our Amazon EKS powered RevComm analytics platform along with an automation to streamline the process. This is the English vers…

PyCon APAC 2024 参加レポート

2024年10月25日(金)~27日(日)にインドネシアで開催された PyCon APAC 2024 にバックエンドエンジニアの 松土 慎太郎、陶山 嶺、小門 照太の3名が登壇しました。 tech.revcomm.co.jp 今回はイベントの振り返りとして登壇資料と登壇者の感想を紹介します。 登…

PyCon APAC 2024でRevCommのエンジニア3名が登壇します

MiiTel Platform チームの小門です。 2024年10月25日(金)~27日(日)に開催される PyCon APAC 2024 に RevComm のエンジニア陶山 嶺と松土 慎太郎、わたし小門 照太の3名が登壇します イベント概要 https://2024-apac.pycon.id/ 日程: 2024年10月25日(金)~27…

Rules of ReactをベースにReactとは一体なんなのかを改めて考えてみる

はじめに Rules of Reactという安全で効果的なReactアプリケーションを記述するためのルールがReact公式から公開されました。 Writing idiomatic React code can help you write well organized, safe, and composable applications. These properties make …

PyCon JP 2024でRevCommのエンジニア2名が登壇します

2024年9月27日(金)~28日(土)に開催される PyCon JP 2024 に RevComm のエンジニア陶山 嶺と小門 照太の2名が登壇します

TechBlog: AWS Startup GenAI GameDayで日本国内で入賞しました!

概要 こんにちは、RevCommのエンジニア、加藤(涼)です。今回は、私たちが参加した最高のイベントについてお話しします! 2024年08月26日(月)に弊社から4人1チームがAWS Startup GenAI GameDayに挑戦してきました。 普段はそれぞれ異なるプロジェクトに携わ…

E-BranchformerとMask CTCで高精度かつ高速な音声認識モデルを構築する

概要 こんにちは、RevCommでMiiTelの音声解析機能に関する研究開発を担当している石塚です。前回のRevComm Tech Blogにて、2023年時点でSOTAの精度であったE-Branchformer[1]を利用して日本語の音声認識モデルを構築する記事について書きました。 前回の実験…

React v19に関する周辺ライブラリへの影響と対応状況について

はじめに こんにちは。ここ最近、React v19が注目を集めているように感じます。 最近ではついにReact v19のRCバージョンもリリースされました。 Just published React 19.0.0-rc.0. This is the exact build we'll release as 19.0, unless an issue is repo…

EKSのアップグレード方式をin-placeからBlue/Greenへ変更した話

Analytics Teamの山内健二です。RevCommの解析基盤に導入されているAmazon EKSクラスタでBlue/Greenアップグレードを導入し、合わせて今後の工数削減のために自動化を行ったので、その内容をご紹介します。 RevCommの解析基盤の概要 アップグレードの内容の…

GILを無効化したPythonを早速試してみた (2024/06 更新)

Pythonの次期バージョン3.13でGILの解消が予定されています。この記事では、3.13の開発バージョンでGILを無効化する手順とベンチマークの検証結果について記載します。