タグ

ブックマーク / devblog.thebase.in (82)

  • AWSのDMSやブルー/グリーンデプロイを使ってMySQL8.0へ移行した話 - BASEプロダクトチームブログ

    はじめに Data Strategyチーム(以下、DSチーム)でDWHやBIツールの運用をしている@shota.imazekiと不正検知やAWS基盤運用をしている@tawamuraです。 Aurora MySQL v2(MySQL5.7互換)が2024/10/31に標準サポート終了となるため、DSチームでは2024年6月にAurora MySQL v3(MySQL8.0互換)へのアップグレードを実施しました。 その際に得られた課題や知見について紹介していきます。主にAWS DMSやAmazon RDS ブルー/グリーンデプロイを用いたアップグレード方法の話になります。 DSチームのインフラ構成 DSチームはBASEの機械学習基盤を構築・運用しており、APIなどを介してプロダクト側へ機械学習モデルの推論結果などを返しています。学習・推論のために使うプロダクト側のデータはDMSを用いて、DS環

    AWSのDMSやブルー/グリーンデプロイを使ってMySQL8.0へ移行した話 - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/08/06
  • リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ

    はじめに Platform Group の久保田( @ykbt13 )です! BASEではリアーキテクチャとしてバックエンドの既存機能を旧リポジトリから新リポジトリへ移行する作業を日々行っています。詳しく知りたい方はぜひこちらを参照してください。 www.youtube.com そんななか、BASEにおけるコア機能の1つである商品の発送機能の移行が行われました。しかしながら、コア機能であるがゆえに様々な改修が繰り返されて複雑化してしまった発送機能では移行前の動作を保証する術がテストのみでは不安があります。 そこで、リアーキテクチャを円滑に進めるべく、番環境上で移行前後の処理を同時実行しデータベースの結果を比較することで動作の保証を行うツールを開発しました。 この記事では、同様にリアーキテクチャを進めている方々を対象に、そのツール(BASE内では通称DryRunと呼んでいますので以降Dry

    リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/06/15
  • 「メール送信者のガイドライン」に対応しました - BASEプロダクトチームブログ

    はじめに BASE Feature Dev1 Group の cureseven です。 Google と米Yahoo が定めた「メール送信者のガイドライン」が、2024/06/01に対応の最終締め切りを迎えました。 BASE から送信しているプロモーションメールも対応が完了しましたので、対応する過程で起こったトピックを紹介します。 「メール送信者のガイドライン」とはなにか簡単に説明 1回でも月あたり 5,000件以上個人メールにメールを送信したことがあるドメインを持つ「一括送信者」は、以下の規定に則ってメールを送信する必要があります。 DMARC の対応 プロモーションメールには、購読解除ヘッダーが挿入されていること 迷惑メール率が 0.3%を超えないこと AWS が出しているこちらの記事がスッキリしていて読みやすいです。 アプリケーション開発チームの私は、購読解除ヘッダーの挿入を主に担

    「メール送信者のガイドライン」に対応しました - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/06/06
  • explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ

    はじめに こんにちは、バックエンドエンジニアのSakiです!バックエンドでPHPを書いたり、PHPという言語そのもののメンテナーもしています。 この度、注文データダウンロードAppのパフォーマンスをアップさせるため、とても入念にデータベースまわりの処理を見直しました。その中でも特に速度に関わってくる「index」についての考え方をまとめたいと思います。 この記事はMySQL(InnoDB)についての記事であり、他のRDBについては当てはまらない場合もあるということにご注意ください。 indexとは何か、おさらい ご存知の方ももちろん多いと思いますが、indexについておさらいさせてください。 indexとは辞書でいうところの目次に相当するもので、目的のデータをいち早く検索するために重要なものです。もし辞書に目次が存在しなかった場合、目的の情報を探すのにとても苦労するだろうというのは想像しや

    explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/06/05
  • 拡散モデルを用いた2Dバーチャル試着技術について - BASEプロダクトチームブログ

    はじめに こんにちは。BASEのデータ分析チーム(Data Strategy Team)で不正対策を行ったり、機械学習モデルを触ったりしている竹内です。 先日チーム内の論文読み会でニューラルネットを用いた画像合成によるバーチャル試着技術というトピックに触れる機会があったので、その最近のトレンドについて改めてブログという形でまとめてみました。 バーチャル試着は画像生成モデルの実用的なユースケースの一つとして今現在データセットの拡充やアーキテクチャの検証が進んでいる分野の一つであり、個人的には非常にアツいトピックだと感じています。 バーチャル試着とは バーチャル試着(Virtual Try On)とは、ある人物がある衣服を着用した状態を画像や3Dモデルなどの情報をもとに仮想的に実現し、どのように見えるか可視化する技術のことです。 ネットショップの普及により、店頭に出向かずともPCやスマートフォ

    拡散モデルを用いた2Dバーチャル試着技術について - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/05/04
  • OIDCって何なんだー?から、実際に使うまで - BASEプロダクトチームブログ

    ごあいさつ はじめましての人ははじめまして、こんにちは!BASE BANK Divisionのフロントエンドエンジニアのがっちゃん( @gatchan0807 )です。 今回は、ここ数ヶ月の間にOIDC(OpenID Connect)という技術を使った開発を複数行い、この技術の概観を理解することができたので、OIDCの技術概要に触れつつBASE BANKの中でどのように使ったのかをご紹介しようと思います。 OIDCとは何なのか このパートでは、まずOIDCという技術について概要を紹介します。いくつかのWebページに記載されていた内容を参考にしてまとめさせて頂いているので、記事の最後に参照元のリンクを記載しておきます。 また、OIDCをはじめとした認証・認可の仕組みには様々な用語があり、自分自身も「調べれば調べるほど知らない用語が増えて、どんどんわからなくなってきた…」という経験をしたので、

    OIDCって何なんだー?から、実際に使うまで - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/05/02
  • お問い合わせ対応の輪番制による運用をやめるに至った意思とそこからの学び - BASEプロダクトチームブログ

    はじめに こんにちは。 Feature Dev1 グループでマネージャーをしている髙嶋です。 突然ですが、サービス運営するうえでユーザーからのお問い合わせ対応を無視することはできません。 そしていかに迅速かつ適切な内容で回答できるかどうかは、どこまでいってもゴールのない永遠の課題と言えるものでしょう。 ネットショップ作成サービス BASE に関するお問い合わせ対応についての運用に直近変化があったため、その経緯と効果(はある意味これからでもありますが)を共有させていただきたいと思います。 サマリとしては、概ね以下のような内容となります。 お問い合わせ対応のうち、技術的な観点が要求されるものはエンジニアに対して調査依頼がきます BASE では特定の部署が対応する形ではなく、開発組織横断で対応にあたっています 具体的には通称 cs_q というチャンネルに調査依頼がくるので、基的には依頼がなされ

    お問い合わせ対応の輪番制による運用をやめるに至った意思とそこからの学び - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/04/02
  • CTOでもVPoEでもないエンジニアのポジションの取り方という発表をしてきました - BASEプロダクトチームブログ

    こんにちは、BASE BANK Divisionで事業責任者をしている柳川と申します。 今回はROSCAさん主催のROSCAFE TECH NIGHT #5で登壇させていただきました。 その登壇記録とレポートです。 rosca.connpass.com 柳川の登壇内容 イベントタイトルに反し、僕はCTOではないのに登壇させてもらうという若干の出オチ感のある登場でしたが、元気に発表させていただきました。 内容的に若干浮くかなとおもったんですが、今回参加者の選定がマッチしたのか、意外にも同系統の発表が並びました。 発表スライドは以下になります。 speakerdeck.com 発表の趣旨は、エンジニアのキャリアパスには事業責任者もあるよという話です。 僕のキャリアパスとしてはエンジニアPdM→事業責任者なのですが、 なんでそのようなキャリアパスを辿ったのだろうかと考えていた時に以下のようなつ

    CTOでもVPoEでもないエンジニアのポジションの取り方という発表をしてきました - BASEプロダクトチームブログ
    honeybe
    honeybe 2024/03/02
  • CTOに必要なものとは - BASEプロダクトチームブログ

    CTOの川口 (id:dmnlk) です。 これはBASE Advent Calendar25日目の記事です。 今年も僕は立候補してないのに勝手に日程が組み込まれてました。毎年書いてくれるメンバーが増えていってくれているのになぜ。 CTOについて 自分は2019年からBASE株式会社のCTOをやっています。 気づいたら4年近くやっていることになっていて驚いています。 たまに社外のエンジニアの方とお会いするとCTOになるにはどうすればいいかということを聞かれることがあります。 僕個人のサンプルではありますが、少し書いてみようかと思います。 なぜCTOが必要なのか 必ずしもCTOが必要なのでしょうか。 これに関しては僕は必要であると考えます。 自分がWeb企業にいるという前提条件はありますが、システムやテクノロジーが非常に重要な市場優位性となります。 ただプロダクト開発をするだけでなく最新の技

    CTOに必要なものとは - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/25
  • Mintで管理しているSwiftライブラリを定期的に更新する - BASEプロダクトチームブログ

    この記事は BASE Advent Calendar 2023 の18日目の記事です。 Pay ID Appグループの北川です。ショッピングアプリ「Pay ID」の開発チームでエンジニアリングマネージャーを担当しています。 iOSアプリ開発で依存管理に使っている Mint のバージョンアップデートGitHub Actions を使って自動化した話をします。 Mint とは Mint は Swift 製のライブラリのパッケージマネージャです。 https://github.com/yonaskolb/Mint 私たちのiOSアプリのプロジェクトでは、以下のようなビルドツール系のライブラリの依存管理に1年ほど利用しています(アプリ体の依存管理には Swift Package Manager を使っています)。 SwiftLint Mockolo IBLinter SwiftFormat

    Mintで管理しているSwiftライブラリを定期的に更新する - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/18
  • Android WebViewで少し厄介だった実装の紹介 - BASEプロダクトチームブログ

    この記事は BASE Advent Calendar 2023 の18日目の記事です。 はじめに こんにちは、Pay IDアプリ開発チームでエンジニアをしている小林(@eijenson)です。 ショッピングアプリ「Pay ID」のAndroid版アプリの開発を担当しています。 アプリでは一部機能でWebViewを使って実装しています。 そこで少し厄介だった仕様とそれをどう実装したかを紹介していこうと思います。 使用言語/ライブラリのバージョン Kotlin 1.7.10 Jetpack Compose BOM 2023.06.01 今回の画面設計 よくあるMVVMの設計です。 UIはJetpack Composeで書かれています。 WebViewに関してはJetpack Composeでは用意されていないので、AndroidViewを使ってWebViewクラスをCompose内に定義して

    Android WebViewで少し厄介だった実装の紹介 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/18
  • ドメイン知識を素早くキャッチアップする時に心がけている事 - BASEプロダクトチームブログ

    はじめに この記事はBASEアドベントカレンダー2023の16日目の記事です。 こんにちは! Cart DevチームでBackendエンジニアをしている @endu です。 気づけば入社してからそろそろ1年が経ちます。 この1年をふりかえると、最初のオンボーディング期間を経てはひたすらに、既存コードを読んでは仕様を把握してコードを書く1年だったかなと思います。 今回は既存コードを理解するにあたっての、ドメイン知識を素早くキャッチアップする事 に焦点をあてて、自分が心がけている事をご紹介できればと思います。 ドメイン知識とはなにか? ここで話す「ドメイン知識」についてですが、調べてみると以下のように定義されています。 ドメイン知識(英: Domain knowledge)または領域知識は、はっきり限定された、ある専門分野に特化した分野の知識であり、一般知識またはドメイン独立の知識と対比される

    ドメイン知識を素早くキャッチアップする時に心がけている事 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/17
  • SMS OTP で使われるメッセージの形式の歴史 - BASEプロダクトチームブログ

    はじめに 記事はBASE アドベントカレンダー 2023の14日目の記事です。 こんにちは!NEW Dept/Pay ID Dev/Web Backendエンジニアをしている@zanです。 主にPay IDの機能開発を担当しています。 SMS OTPで用いられるメッセージの形式を題材に、 どのような経緯で形式が決まったかを調べてみました。(ちょっとした考古学?みたいなものです。) SMS OTPとは SMS OTPと関連技術について振り返ってみましょう。 ...と思いましたが、 過去@gatchan0807が書いた今度は「WebOTP」についてFrontend Weekly LT(社内勉強会)でお話しました に詳しく書かれているので、気になる方はご一読いただけると幸いです。 (※2021年の記事なので一部情報が古くなっている可能性があります。) 簡単に言ってしまうと SMS OTP =

    SMS OTP で使われるメッセージの形式の歴史 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/14
  • 職場を明るくする - BASEプロダクトチームブログ

    この記事は BASE Advent Calendar 2023 と 身の回りの困りごとを楽しく解決! by Works Human Intelligence Advent Calendar 2023 の12日目の記事です。 はじめに こんにちは、BASE BANK Division で資金調達サービス「YELL BANK」の開発を担当している Doarakko です。 BASE BANK Division については、最近社内異動制度を使用して入られた方がブログを書いてくださったので気になる方は読んでみてください。 参考:フルサイクルエンジニアリングの第一歩を進める - BASE BANKでの新たな挑戦 昨今リモートワークが増えていますが、弊社でも出社とリモートを組み合わせたハイブリッドワークとなっています。 出社頻度が少なくなったことで「オフィスに全然人がいない…」「なんだか職場が暗いな

    職場を明るくする - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/12
  • われはセキュリティの子 - BASEプロダクトチームブログ

    この記事は BASE Advent Calendar 2023 の10日目の記事です。 ちわ BASEから代わりまして、PAY株式会社(BASE株式会社グループ会社)のクリス @x86_64 です。数か月前、絵を買うよう執拗に勧めてくる人に言いくるめられ、額縁入りのライザのアトリエ複製原画だのデジタルアートブック特典付きのアーマード・コア6だのを入手しました。 この記事は私がセキュリティエンジニアとして日頃感じることや昔話、将来のイメージについてろくろを回しまくり、なんか宣誓を立てるものです。少しはPCI DSS v4.0の話もしますがあとは自分の話しかしません。 PAY株式会社とは BASE株式会社グループ会社で、同社をはじめとして国内のスタートアップなど多くの加盟店にクレジットカード決済サービス「PAY.JP」を提供する会社です。クレジットカード情報を加盟店のみなさまに完全に代わって安

    われはセキュリティの子 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/11
  • “ゆるく、途中からでも” 学べる、夜な夜な.goというイベントをやっています - BASEプロダクトチームブログ

    こんにちは! BASE 株式会社 BASE BANK Divisionでエンジニアのトップをやらせてもらっている@applepine1125 です。 12/3に Hatena-Blog-Workflows-Boilerplateに関する記事も書いたのでぜひ読んでみてください! さて、ここから題です “夜な夜な.go”というイベントを始めました! 実は今年9月から、弁護士ドットコムさんと一緒に 夜な夜な.go というイベントを始めていました! ゆるく公式のドキュメントなどを一緒に読み、ドキュメントリーディングのハードルを下げたりみんなでワイワイ話すことでより理解を深めて行くためのイベントです。 現状は皆で読みたいドキュメントを募集して、皆で回し読む輪読会形式をとっています。 12/5時点で第4回まで開催しており、ちょうど Go 1.21で導入された新機能 slogの中で、メッセージやレベル

    “ゆるく、途中からでも” 学べる、夜な夜な.goというイベントをやっています - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/08
  • 小数点の罠:メンバーシップポイント計算の裏側 - BASEプロダクトチームブログ

    はじめに この記事はBASEアドベントカレンダーの四日目の記事です。 こんにちは!私は@shiiyannnと申します。現在、メンバーシップ Appの開発に携わっています。メンバーシップ Appはショップオリジナルの「メンバーシップ」(会員制度)を作成することができる機能です。 2023年9月、メンバーシップ Appは大幅な機能アップデートを遂げました。今回のアップデートでは、ショップオーナーが商品購入時に独自のポイントを付与できるようになりました。付与されるポイントの量は、注文金額にショップオーナーが設定したポイント付与率を掛け合わせて計算されます。 この記事では、ポイント付与機能の開発中に直面した、浮動小数点計算の問題とその解決策についてお話しします。この問題を深掘りすることで、料率計算や金額処理に取り組む開発者の皆さんに有益な情報を提供できればと考えています。 リリース直前に発見した浮

    小数点の罠:メンバーシップポイント計算の裏側 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/12/06
  • Cloud Operator Days Tokyo 2023の「輝け!クラウドオペレーターアワード2023」において審査員特別賞(変革編)を受賞しました - BASEプロダクトチームブログ

    Cloud Operator Days Tokyo のロゴ こんにちは。BASE でエンジニアをしている02です。 このたび、Cloud Operator Days Tokyo 2023 に登壇し、「輝け!クラウドオペレーターアワード2023」において審査員特別賞(変革編)を受賞しました。 今回は、登壇についてのコメントと、クロージングイベントでの様子についてお届けします! Cloud Operator Days Tokyo 2023 とは Cloud Operator Days Tokyo 2023 公式サイトより Cloud Operator Days Tokyo 2023 とは、クラウドの運用者をテーマとした技術イベントです。 cloudopsdays.com 2023/08/21(月)も配信開始した約60ものオンデマンドセッションと、2023/09/14(木)に開催されたオフライン

    Cloud Operator Days Tokyo 2023の「輝け!クラウドオペレーターアワード2023」において審査員特別賞(変革編)を受賞しました - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/09/24
  • ドメイン知識をフル活用した「あと払い(Pay ID)」の新規開発 - BASEプロダクトチームブログ

    導入 BASEでは、2023年3月頃に「あと払い(Pay ID)」というBNPL(Buy Now Pay Later)のサービス提供を開始しました。BNPLとは、いわゆる後払い決済のことで、今回、BNPLのシステムを一部内製化した上で、世の中にリリースしました。BASEとしては「決済手段を内製化する」ための第一歩であり、ありがたいことに国内の決済業界で、少しばかり話題になりました。 リンク先:2023/4/11 日経済新聞 今回は、BNPLという決済システムの開発において、どのような困難があり、どう克服していったのかについて、開発に携わったPay IDチームのエンジニアの視点で書きます。※ なお、このテックブログの読み手として2つのセグメントを想定しています。 ドメイン知識が複雑なアプリケーションを開発をする人 決済システムの仕事に携わる業界の方々 先に結論を書くと、伝えたいことは「ドメ

    ドメイン知識をフル活用した「あと払い(Pay ID)」の新規開発 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/09/01
  • BASEという大きなプロダクトでドメインを移行した話 - BASEプロダクトチームブログ

    はじめに どうも。BASEで開発をお手伝いしている 林(@intele) です! 今回はBASEという大きなプロダクトでドメインを移行した話を、エンジニア目線で、振り返りながらお話したいと思います。 何をやったか BASEで使用しているドメインを thebase.in から thebase.com へ移行を行いました。 ただ、BASEではサブドメインを多用しているため、移行するドメインは thebase.in だけではなく、複数のサブドメインを含め、移行しました。 なぜ移行する必要があったか ****.thebase.in というサブドメイン運用されているショップで広告の効果計測ができなくなったため Apple が推進する App Tracking Transparency(以下ATT) の影響を受けて、Facebook広告の計測手法が変更され、効果計測ができなくなってしまったため ATT

    BASEという大きなプロダクトでドメインを移行した話 - BASEプロダクトチームブログ
    honeybe
    honeybe 2023/08/28