UPSIDER Tech Blog

技術

未来のFintechインフラはどうつくられるのか?──UPSIDERの技術戦略とプラットフォーム構想

こんにちは、UPSIDERでVPoEを務めている泉(@yizumi)です。 先日、代表の宮城がUPSIDERの激動の半年間の舞台裏と未来のことを綴ったブログがでました。 note.com 本ブログでは、UPSIDERの技術面での進化とこれからのチャレンジについて、僕の視点からも書い…

🍋 スピードも品質も諦めない!現役QAのリアルAI活用法

はじめに こんにちは!PRESIDENT CARDチームのQAを担当しているmizukiです 私たちのチームでは、ユーザーに最高の体験を届けるため、日々プロダクトの品質向上に取り組んでいます。 今回は、そんな私たちがたどり着いた「AIと一緒に爆速でテストを作る方法…

TemporalによるDurableなワークフロー開発

こんにちは、UPSIDERで請求関連の機能の開発を担当しているチームです。 本記事では、Temporal というフレームワークを活用した Durableなワークフロー開発についてご紹介します。 私たちのチームでは、UPSIDERのさまざまなサービスにまたがる請求関連をスム…

✨Firebase Hostingで作るフロントエンドのプレビュー環境

こんにちは!! 株式会社UPSIDERの支払い.comでフロントエンドエンジニアをしていますOkahashiです! 今回は、支払い.comチームで活用しているフロントエンドのプレビューデプロイの仕組み について紹介します。 Backendのプレビューについても記事がありま…

レビュー効率アップ!Pull RequestごとにKotlin/KtorをCloud Runにプレビューデプロイする

こんにちは!花粉で苦しんでいる支払い.com EMの大聖寺谷です! 今回は支払い.com バックエンドチームで運用しているPull RequestごとにKotlin/KtorをCloud Runにプレビューデプロイする方法について紹介したいと思います。 背景 機能開発時、ユニットテス…

BigQuery から Salesforce への Reverse ETL パイプラインの紹介

こんにちは、UPSIDER のデータチームです。 UPSIDER では、複数の事業を展開する中で、事業間のシナジーを最大化を目指し、昨年から Salesforce の導入を進めています。このプロジェクトは、単なるツール導入にとどまらず、営業やカスタマーサポート、事業開…

Empowering Finance with AI: How OCR Refinement and AI Integration Revolutionize User Experience #UPSIDER年末リレーブログ2024 [日本語訳有]

AIで企業の経理業務を変革する――OCR精度向上とコスト削減でユーザー体験を革新するまで

事業成長に応えるスケーラビリティの未来:UPSIDERの技術戦略 #UPSIDER_Tech

UPSIDERで2023年8月よりVPoEを務めている泉です。 先日、株式会社UPSIDERはシリーズDとして総額154億円の資金調達を実施いたしました。 調達した資金は、既存事業の拡大と新規事業の開発に投資いたします。 前回の投稿から少し時間が経ってしまっていますが…

ZodとOpenAPI Generatorで日付文字列をBrand型で扱う

UPSIDERでエンジニアをしている太田です。 (@Hide55832241) この記事ではZodとOpenAPI Generatorを使用し、日付文字列をBrand型で扱う方法について紹介します。 TypeScriptを使用したフロントエンドのアプリケーション開発で日付をstring型で扱う際に困るこ…

Reactで絞り込みFormの作り方

この記事では、Reactを使用して絞り込みフォームを作成する方法について解説しています。フォームはアプリケーションの重要な機能の一つですが、検証やクエリストリングとの連携など、実装が複雑になることが多いため、実装者によって大きな差が生じる部分で…

UPSIDERのこれからを担うFlutterアプリのアーキテクチャ

UPSIDERが今後開発・運用を目指して考えたFlutterアプリ向けアーキテクチャを紹介します

UPSIDERのフロントエンドをNuxtからNextへリプレイスしている話

はじめに こんにちは、株式会社UPSIDERでフロントエンドチームに所属している久保です。 今回は、リリースから走り続けてきた法人カード「UPSIDER」(以下、UPSIDER)のフロントエンドを、NuxtからNextにリプレイスしている話を共有します。 リプレイスに至…

Tech Blog Reboot!

はじめまして、UPSIDERで2023年8月からVPoEを務めている泉です。 前回の投稿からほぼ一年、間が空いてしまったようですが、やはり発信していくことでエンジニアコミュニティーとのエンゲージメントを深めたり、会社のカルチャーや、技術・プロダクトを紹介す…

KotlinコルーチンでDBアクセスするときのアンチパターン

DBトランザクション内でsuspendする処理を、大量のコルーチンで並行実行してはならない。その理由と解決法。

Kotlinでコルーチンの並行処理数を制限する

こんにちは! UPSIDERのWebチームでサーバサイドKotlinを書いているエンジニアのおかだです。 突然ですが、コルーチンの並行処理数、制限したくなったことありませんか? ぼくはよくあります。 数千数万という数のコルーチンを同時に起動することもできる、…

支払い.comのカオスで整備中なエンジニア組織について

支払い.com で主にバックエンド全般を担当しているエンジニアの水村です。 支払い.comのエンジニア組織はまだまだ整備中で課題も多く、カオスな状況です。そんなカオスな状況を改善するため、やらないようにしていることや、意識的にやっていることなどをま…

決済チームがテストコードを書く際に気を付けていること

こんにちは。決済チームでエンジニアとして働いている芦川です。 UPSIDER Tech blog 第2弾として「決済チームがテストコードを書く際に気をつけていること」を紹介しようと思います。 TL;DR 100%のテストカバレッジを目指す テストはブラックボックスを優先…