タグ

ブックマーク / engineering.mercari.com (4)

  • Terraform CIでのコード実行制限 | メルカリエンジニアリング

    記事は2022年5月19日に公開された記事の翻訳版です。 この記事は、Security Tech Blog シリーズ: Spring Cleaning for Security の一部で、Security EngineeringチームのMaximilian Frank(@max-frank)がお届けします。 背景 メルカリでは、複数のチームで多数のマイクロサービスを開発しています。また、コードだけでなく、サービスの実行に必要なインフラのオーナーシップは、それぞれのチームが持っています。開発者がインフラのオーナーシップを持てるように、HashiCorp Terraform を使用してインフラをコードとして定義していて、開発者は、Platform Infra Teamが提供するTerraformネイティブリソースまたはカスタムモジュールを使用して、サービスに必要なインフラを構成できます。こ

    Terraform CIでのコード実行制限 | メルカリエンジニアリング
    jukuringo
    jukuringo 2023/06/17
  • ユニットテストのガイドラインを作成しました | メルカリエンジニアリング

    この記事は Merpay Tech Openness Month 2022 の15日目の記事です。 はじめに こんにちは。Credit Design Teamでバックエンドエンジニアをしている@tanaka0325です。主にメルペイスマート払いの開発をしています。 この記事では、先日私のチームで作成したユニットテストのガイドラインについて紹介します。 課題 現在私が担当している「メルペイスマート払い」のマイクロサービスは、もともと「メルカリ月イチ払い」として提供されていたコードを流用し、新規要件となる機能を追加して作られたマイクロサービスです。 マイクロサービス化するにあたり、「メルカリ月イチ払い」にあったデータはマイクロサービスリリース後に随時マイグレーションをする方針になったので、既存のデータをマイグレーションしつつ、定額払いなどの新規機能を追加してきました。メルペイスマート払いのマイ

    ユニットテストのガイドラインを作成しました | メルカリエンジニアリング
  • Goでテストのフィクスチャをいい感じに書く | メルカリエンジニアリング

    Merpay Tech Openness Month 2022の6日目の記事です。 こんにちは、Merpay Credit Design Teamでバックエンドエンジニアをしている@youxkeiです。 テストを書く際、その前提条件としてデータベースの状態をフィクスチャとして準備して、データベースにデータを投入することがよくあります。このフィクスチャはYAMLなどの外部ファイルに書かれることもありますが、この記事ではテストコード上にGoで記述する方法を考えていきます。 この記事では、データベースはリレーショナルデータベースを想定していて、具体例として架空の図書館蔵書管理システムのデータベースを使っています。 素直にモデルを使う 多くの場合、以下のようにデータベースのそれぞれのテーブルに対してモデルが定義されています。 package model import ( "time" ) type

    Goでテストのフィクスチャをいい感じに書く | メルカリエンジニアリング
  • 社内勉強会「エキスパートGo」を開きました #golang | メルカリエンジニアリング

    こんにちは。 ソウゾウのエキスパートチーム所属の@tenntennです。 7月9日に3時間半かけてみっちりと「エキスパートGo」という社内勉強会を開催しましたので、今回はそのレポートを書きます。 また良い機会ですので、私が所属するエキスパートチームについても少し触れようと思います。 なお、当日の発表資料はSlide Shareに公開しておりますので、ぜひご覧下さい。 www.slideshare.net エキスパートチームについて ソウゾウでは「技術アウトプットするところに技術は集まる」という思いから、稼働の50%以上を技術コミュニティへの貢献や担当する技術の普及に取り組むエキスパートチームが存在します。 メンバーはGo Conferenceやgolang.tokyoなどを運営している私@tenntenn(Go/GCP担当)とDroidKaigiや技術書典などを運営する@mhidaka(

    社内勉強会「エキスパートGo」を開きました #golang | メルカリエンジニアリング
  • 1