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

  • チームで運用と戦い、おいしい牛カツと出会った話 | メルカリエンジニアリング

    Merpay Advent Calendar 2020 の 9 日目は、バックエンドエンジニアの @sou がお送りします。 今日は少し泥臭く、この一年チームを成長させながら運用と戦ってきた話を書こうと思います。 私の所属するチームは加盟店情報の管理を担っており、その性格から運用に伴う作業が数多く発生します。 どんなプロダクトにも運用はあると思いますが、このチームが直面した運用の負荷はそのボリュームと複雑さから、私のキャリアの中でも最大と言えるものでした。 その運用に私たちがどのように立ち向かい改善を行ってきたか、みなさまの参考になれば嬉しく思います。 なぜそんなしんどい運用を頑張っているのか、メルペイでのやりがいや楽しさ、頑張った結果の美味しい牛カツと日酒のお店に出会えた話も添えさせていただければと思います。 ここで言う運用とは、事業を進めていく上でさまざまな場面で発生する、自チーム以

    チームで運用と戦い、おいしい牛カツと出会った話 | メルカリエンジニアリング
    Quramy
    Quramy 2020/12/09
    「運用コスト数えるくん」でアクティビティログが可視化 + 定量化されていて素敵
  • gRPCを用いたマイクロサービスのAPI仕様の記述 - Mercari Engineering Blog

    この記事はMERPAY TECH OPENNESS MONTHの10日目の記事です。 こんにちは、メルペイのバックエンドエンジニアの柴田(@yoshiki_shibata)です。 メルペイのバックエンドは、Google Cloud Platform上でGoogle Kubernetes Engineを使用して、マイクロサービスアーキテクチャを採用した多数のマイクロサービスから構成されています。モノリシックなサービス実装では複数層のライブラリ(あるいはコンポーネント)から構成されるのに対して、マイクロサービスアーキテクチャでは複数層のマイクロサービスから構成されます。 どちらのアーキテクチャにおいても、偶発的プログラミング(Programming by Coincidence)1を避ける2ために、注意を払って作成する必要があるのが、境界部分のAPI(Application Programmi

    gRPCを用いたマイクロサービスのAPI仕様の記述 - Mercari Engineering Blog
    Quramy
    Quramy 2019/05/31
  • メルカリの写真検索を支えるバックエンド | メルカリエンジニアリング

    メルカリのAI EngineeringでTech Leadを務めている中河です。今回は3/18に正式リリースされた「写真検索機能」を支えるバックエンド・インフラをシステム側からの視点でご紹介します。 写真検索とは 所謂、画像検索機能で商品名を知らなくても画像から商品を検索できる機能の事です。詳しくは下記の公式リリースをご覧ください。 about.mercari.com 基的な写真検索の仕組みは、Deep Neural Networks (DNN)を使用して商品画像から特徴ベクトルを取得し、取得した特徴ベクトルをApproximate Nearest Neighbor Index(ANN Index)に追加して画像indexを構築。 検索時には同じく商品画像からDNNを介して特徴量ベクトルを取得し、ANN Indexから検索します。 アーキテクチャの概要 Figure1 上記がアーキテクチ

    メルカリの写真検索を支えるバックエンド | メルカリエンジニアリング
    Quramy
    Quramy 2019/03/26
  • メルカリのWeb MicroservicesにおけるSLI/SLO - Mercari Engineering Blog

    Mercari Advent Calendar 2018の24日目はメルカリBackendエンジニアの@sota1235がお届けします。 現在、私はWebのシステムをリプレースしMicroservicesアーキテクチャに移行するチームで働いています。 メルカリのMicroservicesアーキテクチャでは各Microserviceチームが責任を持ってSLI/SLOを定め、運用する必要があります。 このSLI/SLOを決める過程でいくつかの学びや難しさがあったのでそれをお話しようと思います。 SLI/SLOとは SLI(Service Level Indicator)とはサービスの品質を測るための指標です。 そしてSLO(Service Level Objective)とは各SLIに対しての目標数値です。 例えばSLIを全リクエストの50xエラー以外の割合として、SLOは99.99%とする、

    メルカリのWeb MicroservicesにおけるSLI/SLO - Mercari Engineering Blog
    Quramy
    Quramy 2018/12/25
  • MTC2018 カンファレンスLPの裏話 〜GraphQL編〜 - Mercari Engineering Blog

    こんにちは、メルペイのライブラリとか作るおじさんの @vvakame です。 インフラ編に続きGraphQLAPI)編です。 MTC2018のカンファレンスLPのGraphQLによるAPI実装について紹介していきます。 リポジトリをこちらで公開しているので気が向いたら見ていってください。 Playgroundもあって、しばらくは生きている状態のままだと思います。 GraphQLやっていき 筆者は最近GraphQL、特にGo言語用のライブラリであるgqlgenに入れ込んでいます。 そこで、APIの実装にGraphQLを使うことによりgqlgenの使い方を社内に示し、ついでクライアント側の人たちにGraphQLの良さを体感してもらおう!という思惑です。 MTCでもCSToolをgqlgenでやっていき!という話題がありましたし! …と思ったらアプリの人たちはFlutterを選び、Dartには

    MTC2018 カンファレンスLPの裏話 〜GraphQL編〜 - Mercari Engineering Blog
    Quramy
    Quramy 2018/12/24
  • 「技術をアウトプットするところに技術は集まる」ソウゾウ エキスパートチームの役割 | メルカリエンジニアリング

    ソウゾウのエキスパートチーム所属の@mhidakaです。今回はソウゾウのエキスパートチームが、どんな活動をしているのか紹介します。 エキスパートチームについて ソウゾウでは「技術アウトプットするところに技術は集まる」という思いから、 稼働の50%以上を技術コミュニティへの貢献や技術の普及に取り組むエキスパートチームが存在します。 私以外に@tenntennが居て、ふたりのミッションにはコミュニティへの貢献も含まれています。 現在、チームは二人で構成されており、メンバーごとに担当する技術分野が違います。 Go/GCPであればGo Conferenceやgolang.tokyoなどを運営している@tenntenn、 AndroidであればDroidKaigiや技術書典などを運営する@mhidakaという役割分担をしています。 エキスパートチームは次のような目的を持って活動をしています。 社内

    「技術をアウトプットするところに技術は集まる」ソウゾウ エキスパートチームの役割 | メルカリエンジニアリング
    Quramy
    Quramy 2017/08/19
    “稼働の50%以上を技術コミュニティへの貢献や技術の普及に取り組む” すげー
  • 1