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

  • BASEとPAY.JPの歴史から見るWeb系ベンチャーにおけるバイモーダルITへのアプローチ - BASEプロダクトチームブログ

    こんにちは。BASE株式会社の開発担当役員、かつ、子会社でPAY.JPを提供するPAY株式会社の取締役をしている藤川です。 JTC(Japanese Traditional Company)などと呼ばれたりする主に日歴史ある大企業のDX化の文脈において、バイモーダルITという考え方があります。JTCたる既存の大企業は、SIerが構築した基幹システムをITの根幹として事業を運営していましたが、昨今叫ばれるDXの取り組みにおいて、業における顧客接点以外にITシステムでも顧客接点を実現していくための組織を整理する手段としてバイモーダルITという考え方を使うことができます。 考え方として、SoR(System of Record)と呼ばれるデータを記録することに重きを置く既存の基幹システムと、SoE(System of Engagement)と呼ばれるエンドユーザとの結びつきを実現するための

    BASEとPAY.JPの歴史から見るWeb系ベンチャーにおけるバイモーダルITへのアプローチ - BASEプロダクトチームブログ
    boxphere
    boxphere 2024/04/13
  • tblsとGitHub Actionsを使ってDBマイグレーションを含むPRには自動更新したER図を追加する - BASEプロダクトチームブログ

    BASEアドベントカレンダー2021 10日目の記事です。 BASEアドベントカレンダー2021 10日目 BASE BANKでエンジニアをしている @budougumi0617 です。 マイグレーションファイルが含まれたPull Request(PR)が作られたとき、自動更新したER図をPRに追加するGitHub Actionsを作りました。 記事では紹介するGitHub Actionsを利用すると次のようなメリットが得られます。 マイグレーションファイルをPRに出すだけでPRに更新されたER図が追加される 開発者は面倒なER図の更新作業から開放される レビューアはマイグレーションファイルを含んだPRをER図を見ながらレビューできるようになる プロジェクト関係者は常にメインブランチのマイグレーションファイルの状態と一致したER図を確認できる サンプルPR 自動生成したER図 TL;DR

    tblsとGitHub Actionsを使ってDBマイグレーションを含むPRには自動更新したER図を追加する - BASEプロダクトチームブログ
    boxphere
    boxphere 2022/04/14
  • 最近のSREチームと業務について - BASEプロダクトチームブログ

    こんにちは!! BASE株式会社 SRE Group Managerの富塚(@tomy103rider)です。 以前、以下のSREの求人票についての記事を公開してから多くの方とカジュアル面談でお話をさせていただく機会が増え、カジュアル面談の中でも「求人票ブログの記事見ました!」という声をいただき嬉しい限りです。ありがとうございます。 devblog.thebase.in そんなカジュアル面談の中でよくいただく質問があり、今回はその中から最近のSREチームについて、 チームで大事にしていることは? チームの働き方は? チームの業務は? この3つについて紹介したいと思います。 チームで大事にしていることは? 現在SREチームでは、 「信頼性=ユーザの期待値を超え続けること」としてこれを維持し続ける BASEの機能等々の価値を高めるための時間を多く作っていけるようにする が大事であると考えていま

    最近のSREチームと業務について - BASEプロダクトチームブログ
    boxphere
    boxphere 2021/08/13
  • リモートワークの弊害は職場でのよい思い出が作りにくいこと - BASEプロダクトチームブログ

    こんにちは。BASEの藤川です。 緊急事態宣言も続く状況下で、当社もリモートワーク(Work From Home)中心の仕事の進め方をしています。ネット系企業は、幸いにしてVPNSlackGitHubやドキュメント管理ツール、その他仕事に必要なSaaSやZOOMがオンライン化しているため仕事の作業そのものは、それほど違和感なく自宅からでもできているのではないかと思います。 でも、仕事というのは作業だけで済むものではありません。業績を上げるための作業を生み出す活動を始めとする考えるタイミングであったり、不確実なものを埋めていくためにお互い議論するタイミングなど、曖昧なプロセスの先に、決定をして作業の的を絞り込んでいくプロセスが不可欠で、ここで複数人のチームワークが不可欠です。 今、一緒に仕事をしている仲間においては、コロナ以前から社内で人間関係を構築済みの人と、コロナ禍においてリモートだ

    リモートワークの弊害は職場でのよい思い出が作りにくいこと - BASEプロダクトチームブログ
    boxphere
    boxphere 2021/07/16
  • はじめてのNew Relic - 社内オンボーディングを開催いただきました - BASEプロダクトチームブログ

    はじめに CTOの川口 (id:dmnlk) です。 BASEは現在140万ショップを超え、サービスの安定性・信頼性を維持することは非常に重要になっています。 その中で去年、New Relicを格的に導入しました。 https://newrelic.com/jp/press-release/20201217 しかしNew Relicを導入しただけで安定性が獲得できるわけではありません。得られるのは可観測性のための武器であり、その使い方を適切に学ばなければ無駄になってしまいます。 今回、New Relic社のご提案もあり社内メンバー向けにオンボーディング会を開いていただけることになりました。 オンボーディングを行うことでまずNew Relic Oneのオブザーバビリティプラットフォーム で何が出来るのか、どのように使うことでBASEシステムの可観測性を得ていくことが出来るのかを開発チームが

    はじめてのNew Relic - 社内オンボーディングを開催いただきました - BASEプロダクトチームブログ
    boxphere
    boxphere 2021/03/31
    参考になります。直近一番の関心ごとは金額面ですが…
  • 振り返りで積み上げた開発プラクティス(2020年総まとめ) - BASEプロダクトチームブログ

    こんにちは。BASE BANK 株式会社 Dev Division にて Manager をしている東口(@hgsgtk)です。 昨年 2020 年はブログにて個人の足し算ではなく掛け算で成果が出せるようなチームを目指したアジャイル開発の取り組みを継続して紹介してきました。 チーム開発の潜在的課題が見つかる振り返りワーク「Mad Glad Sad(喜、怒、哀)」 少人数でのアジャイル開発への取り組み実例 (一歩目の踏みだし方) | 詳説 | July Tech Festa 2020 登壇レポート アジャイル開発におけるユーザーストーリー分割実践 〜画面リニューアルの裏側〜 これらの考え方やプラクティスは全体の一部で、開発チームとしての組織ローカルなプラクティスを『BANK DEV 白書』として整理しています。『BANK DEV 白書』では次のような内容を整理しています。 一般的なアジャイ

    振り返りで積み上げた開発プラクティス(2020年総まとめ) - BASEプロダクトチームブログ
    boxphere
    boxphere 2021/01/08
  • ElasticsearchとKibela APIを使ってSlackでのCSお問い合わせ対応業務を改善した話 - BASEプロダクトチームブログ

    この記事はBASE Advent Calendar 2020の11日目の記事です。 devblog.thebase.in BASE株式会社 Data Strategy チームの@tawamuraです。 BASEではオーナーの皆様や購入者様のお問い合わせに対して、Customer Supportチームが主となって対応をしています。その中でもいくつかの技術的なお問い合わせに対しては、以下のようにSlackの専用チャンネルを通して開発エンジニアに質問を投げて回答を作成することになっています。 CSチームから調査を依頼されるお問い合わせの例 これらのCS問い合わせ対応は日々いくつも発生しており、CSお問い合わせ対応を当番制にして運用してみた話 でもあるように週ごとに持ち回り制で各部門のエンジニアが対応しているのですが、どうしても調査や対応に時間が取られてしまうという問題が発生していました。 dev

    ElasticsearchとKibela APIを使ってSlackでのCSお問い合わせ対応業務を改善した話 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/12/11
  • Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ

    この記事はBASE Advent Calendar 2020の5日目の記事です。 SRE Groupのngswです。 Eコマースプラットフォーム「BASE」における障害発生時に、社内関係者に連絡網に基づいて電話発信するシステムを構築しました。 このエントリでは、その導入までの経緯と具体的な当該システムの説明をします。 TL;DR 「BASE」で問題が発生した際に意思決定者に電話発信する周知システムを構築した 「導入前に考えたこと」をまず主題として書いた 参考URL記事のまま手順であるが、それでも導入時に詰まった事柄など落ち穂拾い的に追記した 謝辞 Twilio FunctionsとStudioを使って連続架電を行う - Qiita 大変わかりやすい記事であり、ほぼすべてを参考にさせていただいた。このQiita記事がなければ短期間で実現することは不可能であったと考える 導入に至る経緯 07月

    Twilioを利用した障害時の自動連絡網システムについて - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/12/05
  • Terraform導入への第一歩 - BASEプロダクトチームブログ

    この記事はBASE Advent Calendar 2020の3日目の記事です。 devblog.thebase.in BASE株式会社 SRE Groupの相原です。 BASEのインフラはAWS上に構築しておりいくつかのツールを使って構成管理していますが、主にEC2のサーバ設定ツールとして利用しているのが現状で、構成管理できていないAWSリソースもちらほらあります。 そこでまずはSRE Groupで使っている社内ツールや、直接サービス影響のないものをTerraformで構成管理をしてみて、ある程度運用が固まってきたら主サービスの管理もそちらに寄せていこうという方向で進んでいます。 Terraform導入にあたり最も悩んだのがtfstateの分け方とディレクトリ構成だったので、そこをメインに紹介できればと思います。 謝辞 以下の書籍と記事を非常に参考にさせていただきました。ありがとうござい

    Terraform導入への第一歩 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/12/03
  • Amazon Elasticsearch ServiceによるECSアプリケーションのログ解析基盤の構築 - BASEプロダクトチームブログ

    こんにちは、BASE BANK 株式会社 Dev Division でエンジニアとしてインターンをしている前川です。 今回、Amazon Elasticsearch Service(以下、Amazon ES)による、ECS/Fargate で稼働するアプリケーションのログデータの解析基盤を新規で構築することになったので、構築するにあたって調査した内容や関連する内容、実際におこなった構築方法についていくつか紹介します。 今回の構築の簡単な全体構成図は次のようになります。 今回は、 ECS/Fargate のログを S3 にルーティングする Amazon ES にログをルーティングする VPC アクセスの Amazon ES を構築し、Kibana を外部からアクセスできるようにする の3つの手順にわけて、構築方法や関連する内容について紹介していきたいと思います。 なお、この記事で取り扱ってい

    Amazon Elasticsearch ServiceによるECSアプリケーションのログ解析基盤の構築 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/11/27
  • 内製にこだわるチームを作るために必要な業務委託契約 - BASEプロダクトチームブログ

    BASE株式会社取締役 EVP of Developmentの藤川です。 世界中が新型コロナの影響で雇用の先行きが不透明な中、当社は引き続き成長を模索している状況で、マネージャ陣を中心に採用活動にも注力する毎日を送っています。 当社は正社員採用はもちろんのことですが、業務委託契約の方々にもお手伝いいただいておりますが、今回は業務委託契約にフォーカスした記事を書いてみたいと思います。 内製にこだわるチームを維持するための採用活動 私達はサービスを維持、成長させるために毎日ソースコードのメンテナンスをしています。我々はAWSGCPなどのクラウドの環境とオープンソースのソフトウエアに恩恵を受けながら、独自のロジックは内製で開発しています。 他社の開発体制の事例として、スタートアップとして最初は内製で立ち上げたとしても、組織が大きくなりビジネスの成長が問われる中で、SIerさんに社内にがっつり入

    内製にこだわるチームを作るために必要な業務委託契約 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/11/20
  • BASEの日付ライブラリについて - BASEプロダクトチームブログ

    自己紹介 こんにちは。BASE株式会社のフロントエンドチームの谷口です。 日は、BASEのフロントエンドで使用している日付ライブラリについてお話しします。 BASEの日付ライブラリについて BASEでは、frontendという領域が出来始めた当初、最もメジャーな日付ライブラリであるmoment.jsを使用していました。 その後、デザインコンポーネントの開発など、frontend領域が成長していく中で より使い勝手の良い別の日付ライブラリが検討され、date-fnsが採用されました。 現時点で、ほぼ全てのコードがdate-fnsに移行済みです。 date-fnsについて date-fnsについて少し説明すると、公式にもありますが下記のような特徴が上げられます。 moment.jsやday.jsがDateオブジェクトをラップして扱うのに対し、純粋な関数を必要な分だけ読み込んで使用することが出

    BASEの日付ライブラリについて - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/11/05
  • Terraformのセキュリティ静的解析 tfsec の導入から始めるAWSセキュリティプラクティス - BASEプロダクトチームブログ

    こんにちは。BASE BANK 株式会社 Dev Division にて、 Software Developer をしている東口(@hgsgtk)です。 BASE BANK Dev での開発では、クラウドインフラの構成管理に、 Terraform を利用しています。 世の情報をたくさんキュレーションしている CTO の@dmnlkさんに、手軽に CI に組み込めそうなセキュリティチェックツールがあることを教えてもらったので、導入してみました。 CTO氏のキュレーションメディアで紹介された tfsec を早速試して良さそうだったhttps://t.co/bl67dlW2Ub https://t.co/vAkTOVagec— Kazuki Higashiguchi (@hgsgtk) August 21, 2020 このブログの公開日は 2020/10/30 ですので、導入してから約 2 ヶ月

    Terraformのセキュリティ静的解析 tfsec の導入から始めるAWSセキュリティプラクティス - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/10/30
  • エンジニアの評価グレード制の導入について - BASEプロダクトチームブログ

    こんにちはBASE株式会社取締役EVP of Developmentのえふしん( @fshin2000 )です。 今回は、年末の給与改定から運用を開始する評価グレード制導入のお話を書いてみたいと思います。 これまで人材採用時の給与決定や社員の評価時には、マネージャ間で相談し役員承認の上で給与を決めていましたが、その基準や空気感は詳しく社内のメンバーに共有できていませんでした。理由として、中途主体の採用だとどうしても前職給与に影響され、人によって給与にばらつきがでてしまうため、体系だった形に整える機会がなかったのですが、今度、社内に評価グレード制というものを導入することになり、各給与レンジの方に求めるスキルや意識についてまとめたのでこちらで公開いたします。 評価グレード制というのは、一般的に等級と呼ばれるもので、一定サイズ以上の会社のご経験がある方なら、類する制度はどこでもあると思いますので

    エンジニアの評価グレード制の導入について - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/10/20
  • AWS SAM CLIを使ったLambdaのローカル実行と簡単デプロイ - BASEプロダクトチームブログ

    こんにちは。BASE BANK株式会社 Dev Division にて、 Software Developer をしている永野(@glassmonekey)です。 弊社ではAWS Lambdaを活用する機会が増えまして、 最近メジャーアップデートのあった「AWS SAM CLI」を使ってリリースフローの改善にチャレンジしてみました。 そこで、samコマンドで作成したサンプルプロジェクトをローカルで実行しデプロイする方法を紹介します。それに加えて、現状BASE BANKチームで行っている代表的な運用設定をご紹介します。 今回記事作成に際して、サンプルプログラムを用意しているのでもしよければ手元でご確認ください。 なお、今回LambdaにはGoを採用しました。検証に使用した環境は以下の通りです。 macOS: 10.15.x (Catalina) SAM CLI: version 1.2.0

    AWS SAM CLIを使ったLambdaのローカル実行と簡単デプロイ - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/10/08
  • データベースをリファクタリングしたお話 - BASEプロダクトチームブログ

    基盤チーム所属の沖中( @okinaka )です。 「リファクタリング」という言葉、エンジニアのみなさんならご存知でしょう。 システムの振る舞いを変えずに内部を改善することを指す言葉です。 一般的に、コードの修正を指すことがほとんどですが、今回はデータベース設計のリファクタリングについてお話ししたいと思います。 絶版になってしまいましたが、データベース・リファクタリング という書籍に様々な手法が紹介されていて参考になります。英語で良ければ 原書 はまだ入手可能ですね。 データベース・リファクタリング 作者:スコット W アンブラー,ピラモド・サダラージ発売日: 2008/03/26メディア: 単行 Refactoring Databases: Evolutionary Database Design (Addison-Wesley Signature Series (Fowler)) (

    データベースをリファクタリングしたお話 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/09/17
  • 事業継続のためにPHPを使ったサービスを継続的に進化させていくこと - BASEプロダクトチームブログ

    BASE株式会社取締役 EVP of Development / PAY株式会社取締役 / BASE BANK株式会社マネージャのえふしんです。 新型コロナによる非常事態宣言下で起きたことについては、大変勉強をさせていただきました。 非常事態宣言下の巣ごもり消費、リアル店舗等でご活躍されている事業者様のEC利用が急増する中で、BASEにおいても例外ではなく、サービスに訪れるトラフィック急増、4月から5月の頭にかけては、サービスの安定性にも影響が出てしまうという状況が発生していました。 その中で起きていた一つの事象を解決した件が以下のCTOによる記事です。 devblog.thebase.in この記事はCTOやSREチームやWebアプリケーションのエンジニアの活躍で、負荷急増の問題解決をした一つの事例となります。 この対策を通じて、改めて認識したことがあります。 それは、 BASEに訪れる

    事業継続のためにPHPを使ったサービスを継続的に進化させていくこと - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/09/10
  • 「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ

    はじめに CTOの川口 (id:dmnlk) です。 5月にオンラインmeetupをさせて頂きその中で「具体的な負荷対策に関しては開発ブログで!」と言っていた件ですが気づいたらもう9月になりかけていました。 コロナ禍においてネットショップ作成サービス「BASE」の利用者様が急増しました。 www.nikkei.com 5 月には 100 万ショップを超えるショップオーナー様にご利用していただいております。 今まで EC 事業を行っていなかった飲店様や様々な業種の方が利用をはじめていただき、ショップオーナー様も購入者様共に短期の見通しでは想定をしていないアクセスが発生しました。 その途中でシステムとして対応しきれない面もあり、アクセス負荷によるサービスの不安定を招き皆様にはご不便や販売時間を変更していただくお願いなどをしてしまい大変申し訳ありませんでした。 現在では安定しておりますが、その

    「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/08/27
  • アジャイル開発におけるユーザーストーリー分割実践 〜画面リニューアルの裏側〜 - BASEプロダクトチームブログ

    こんにちは。BASE BANK 株式会社 Dev Division にて、 Software Developer をしている東口(@hgsgtk)です。 TL;DR バーティカルスライスでのデリバリーを可能な限り保つユーザーストーリーの分割はどうすればいいか ユーザーストーリーが 1 回のイテレーションで収まらないような場合に分割する 3つの分割軸「データ境界に沿って分割する」・「パフォーマンス制約をストーリーにする」・「アクターのモチベーションで分割する」をもって、ユーザーストーリーを分割する ビジネス価値の内訳要素に基づいて優先順位を考える 当記事の背景 BASE BANK Dev Division での開発プロジェクトでは、アジャイル開発の考え方・取り組みを取り入れています。その導入については、「少人数でのアジャイル開発への取り組み実例 (一歩目の踏みだし方) | 詳説 | July

    アジャイル開発におけるユーザーストーリー分割実践 〜画面リニューアルの裏側〜 - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/08/13
  • アプリケーションのエラー監視をRaygunからSentryへ変更するまで - BASEプロダクトチームブログ

    CTOの川口です。 今回はアプリケーションのエラートラッキングツールについてです。 これまでの経緯 BASEでは主にPHPアプリケーションのエラートラッキングにRaygunを利用していました。 https://raygun.com/ これを採用したのは3年以上前で、当時BASEではPHP5.3を利用していたために利用できるツールは限られておりRaygunはPHP5.3でも動いたため採用されたようです。 今では7.3を利用していたのでこの条件は気にする必要はありませんが、積極的に変更する理由もなく使っていました。 当初はPHPのエラートラッキングにのみ利用していましたが最近はfrontendのエラートラッキングにも利用しています。 ここが辛いよRaygun まず料金が結構高めです。 APMやRealUserMonitoringなどの利用はしておらずエラートラッキングのみ使っています。 htt

    アプリケーションのエラー監視をRaygunからSentryへ変更するまで - BASEプロダクトチームブログ
    boxphere
    boxphere 2020/07/22