タグ

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

  • バッチ処理の採用と設計を考えてみよう | メルカリエンジニアリング

    こんにちは。メルペイで、決済・振込申請のバックエンドソフトウェアエンジニアをしている id:koemu です。 今日は、バッチ処理を行う理由について、考察を深めて設計に活かしていく話をしたいと思います。 はじめに バッチ処理とは、ある決まったタイミングで1つのプログラムが複数のデータを 一括処理 することを指します。この反対の言葉として、オンライン処理があります。オンライン処理とは、お客様の操作を初めとしたイベントをもとに 逐次処理 されるものです。OLTP(Online Transaction Processing)とも言います。 エントリでは、バッチ処理を採用するにあたり、どういったユースケースが適切なのかを整理して、今後のソフトウェアの設計の指針にできることを目指しています。今回は、「バッチ処理を採用するとき」と「バッチ処理の設計」の2つについて取り上げます。 バッチ処理を採用する

    バッチ処理の採用と設計を考えてみよう | メルカリエンジニアリング
    invent
    invent 2019/02/27
  • HeadSpinでモバイルアプリのテスト・モニタリングはどう変わるか | メルカリエンジニアリング

    メルカリの自動化&品質保証グループ(Automation & QA Group:通称AQA)の 根 征 です。 私は普段、テスト自動化・CI / CD 改善・その他社内の生産性を上げるための自動化を行っています。 今回は社内で HeadSpinというサービスをトライアルしてみたので、サービス自体やその感想についてご紹介したいと思います。 HeadSpinとは モチベーション HeadSpinの主な機能 デバイスファーム 自動テスト実行環境 パフォーマンスモニタリング 感想 SDKを入れる必要がない安心感 iOSのデバイスファーム・テスト実行環境・パフォーマンスツールとしての独自性 テスト実行環境をある程度任せられる 何をモニタリングし、どのエンジニアにフィードバックするか まとめ HeadSpinとは HeadSpinはモバイルアプリのパフォーマンスをモニタリングする環境として、デバイス

    HeadSpinでモバイルアプリのテスト・モニタリングはどう変わるか | メルカリエンジニアリング
    invent
    invent 2019/02/14
  • Docker × Android エミュレータで、自動テスト(Appium)を並列化・爆速にする環境を作ったお話 | メルカリエンジニアリング

    Docker × Android エミュレータで、自動テスト(Appium)を並列化・爆速にする環境を作ったお話 これは Mercari Advent Calendar 2018 10日目の記事です。 こんにちは、メルカリの自動化&品質保証グループ(Automation & QA Group:通称AQA) の 根 征 です。 私は普段、テスト自動化・CI / CD 改善・その他社内の生産性を上げるための自動化を行っています。 今回は、Android・Appium の自動テストを 20~30台のエミュレータで並列実行できる 環境を作成したので、その試行錯誤についてお話したいと思います。 これまでの Android 自動テスト環境とその課題 Docker-Android クラウドでどう実行させたか 仮想マシンの入れ子(Nested Virtualization) を有効にする ベアメタルイン

    Docker × Android エミュレータで、自動テスト(Appium)を並列化・爆速にする環境を作ったお話 | メルカリエンジニアリング
    invent
    invent 2018/12/10
  • テクノロジーで街なかの ”移動” を変える「メルチャリ」の舞台裏 - Mercari Engineering Blog

    Mercari Advent Calendar 2018 の9日目はメルチャリチーム Androidエンジニアの @wiroha がお送りします。 メルチャリは2018年2月27日にスタートし、現在福岡市内で展開しているシェアモビリティサービスです。 専用の赤い自転車「メルチャリ」の後部に、スマートロックが搭載されており、メルチャリアプリを通じてお客さまが鍵をあけることで利用できます。 記事では、ハードとソフト、システムとリアルを融合させる、実は複雑で奥深いメルチャリの裏側をご紹介します! ハードウェア機能と深く連携するアプリ メルチャリアプリは、自転車や駐輪ポートの情報を地図上に描画して提供しています。主に使う技術は、iOSではApple MapAndroidではGoogle Mapsです。 車体についているQRコードをお客さまが読み込むと、アプリからサーバ、サーバから自転車へとリク

    テクノロジーで街なかの ”移動” を変える「メルチャリ」の舞台裏 - Mercari Engineering Blog
    invent
    invent 2018/12/10
  • 2018年のPHPとメルカリ | メルカリエンジニアリング

    Mercari Advent Calendar 2018 の 8 日目は Backend チームの @hidenorigoto がお送りします。 来週末12/15(土)には、PHPカンファレンスが開催されます。メルカリでは、これから開催される3つのPHP系カンファレンスをスポンサーとして支援しています。 PHPカンファレンス 2018 2018/12/15(土) PHPカンファレンス仙台 2019 2019/01/26(土) PHPerKaigi 2019 2019/03/29(金)〜2019/03/31(日) この記事では、メルカリにおけるPHPとの関わり方と、PHPカンファレンスやPHPコミュニティに向けて、メルカリエンジニアからの一言メッセージを紹介します。 メルカリでは現在、システムと組織のMicroservies化を進めています。Microservicesの開発にはGoを選択して

    2018年のPHPとメルカリ | メルカリエンジニアリング
    invent
    invent 2018/12/08
  • Firebase Summit 2018に参加してきました #FirebaseSummit - Mercari Engineering Blog

    こんにちは、エンジニアの@sota1235です。 先日、チェコのプラハにて行われたFirebase Summit 2018に参加してきたのでその様子をお伝えします。 写真には筆者が写っていませんがメルカリからは自分含め、4人が参加しました。 firebase.google.com カンファレンスのセッション内容や新しいアップデートは動画や公式サイトを見ればすべてわかるので、この記事ではその中でも個人的に注目しているものや現地の様子、温度感をお伝えしたいと思います。 最近のFirebaseについて カンファレンスの内容に触れる前に、去年から今年までの情報を踏まえてFirebaseがどのようなことを目指しているのか考えてみます。 昨年のFirebase Dev SummitではKeynoteで3つの新機能が新発表されたり、数多くの機能のドラスティックなアップデートがありました。 その際の様子は

    Firebase Summit 2018に参加してきました #FirebaseSummit - Mercari Engineering Blog
    invent
    invent 2018/11/05
  • プロダクトのリリース前から新ダッシュボード「Looker」の導入に踏み切ったわけ | メルカリエンジニアリング

    こんにちは。メルペイのデータアナリストチームです。 メルペイはプロダクトの開発フェーズにあり、リリースに向けて全社で頑張っています。 「プロダクトがないのに、データ分析?」と思う方もいらっしゃるはずなので、メルペイのデータアナリストの業務と、力を入れているダッシュボードツール「Looker」の活用について紹介させて頂きます。 Lookerの公式ページはこちら プロダクトがないフェーズでの仕事 Lookerの話をする前に、まずは私達の状況を簡単に説明します。 分析チームを抱える企業は沢山ありますが、「プロダクトができる前から活動しているケース」は少ないと思います。 そういった意味では、私達のチームは他の会社と比べてユニークなポジションになっています。 一言で言えば「事業を作るための分析」を行っています。 メルペイの事業が成り立つには「良いプロダクト」を作り、「ステークホルダーとの関係」を築き

    プロダクトのリリース前から新ダッシュボード「Looker」の導入に踏み切ったわけ | メルカリエンジニアリング
    invent
    invent 2018/08/26
  • メルカリが、builderscon tokyo 2018の謎ガジェット「電子名札」のスポンサーに! #builderscon | メルカリエンジニアリング

    メルカリが、builderscon tokyo 2018の謎ガジェット「電子名札」のスポンサーに! #builderscon みなさん、こんにちは!メルカリEngineering Operations Team (EOT) の安藤こと@kikoです。 日は、メルカリがスポンサーしているbuilderscon tokyo 2018の謎ガジェット「電子名札」についてお伝えします! 登場人物 石田さん(@uzulla) フリーランスのSystem Engineer/Technical Director。builderscon tokyo 2018コアスタッフ。メルカリがスポンサーしている「電子名札」の制作を進めている関係で、今回対談者として登場いただいています。 七島(@jollyjoester) メルカリEngineering Operations Team (EOT) のメンバー。buil

    メルカリが、builderscon tokyo 2018の謎ガジェット「電子名札」のスポンサーに! #builderscon | メルカリエンジニアリング
    invent
    invent 2018/08/15
    似すぎててすごい
  • AndroidのCI時間を10分短縮し、開発を爆速にするためのKarakuriを作った話 | メルカリエンジニアリング

    こんにちは、メルカリの自動化&品質保証グループ(Automation & QA Group:通称AQA)で、自動化をぶりぶりしている tadashi0713 です。 私は普段、テスト自動化・CI(継続的インテグレーション) / CD(継続的デリバリー)改善・その他社内の生産性を上げるための自動化を行っています。 今回は、最近行なっている Android CIの高速化・改善 についてご紹介したいと思います。 ◆ これまでのAndroid CI / CD 去年、私はJP版メルカリAndroidのCI / CDサービスをCircleCI1.0からBitriseに移行しました。 Bitrise – Mobile Continuous Integration and Delivery Android Test Night #1 というイベントでもLTをしましたので、そちらのスライドも参考にしていただ

    AndroidのCI時間を10分短縮し、開発を爆速にするためのKarakuriを作った話 | メルカリエンジニアリング
    invent
    invent 2018/07/04
  • SXSW 2018に参加してきました #MBSSXSW | メルカリエンジニアリング

    R4DでXR領域を担当している @ikkou です。最近はバーチャルSHOWROOMERの #東雲めぐ に注目しています。 昨年末、Mercari Advent Calendar 2017 20日目の記事として「Mercari BOLD Scholarship をはじめる話」を書きました。 tech.mercari.com その後、書類選考と面接を経て5名の学生が選ばれ、メルカリメンバーと合わせて総勢10名以上で、現地時間の3月9日から16日にかけてアメリカはテキサス州のオースティンで開催されたSXSW 2018に参加してきました。 オースティンに滞在中、現地ではアンバーアラートが発令されたり、小包の爆発が相次ぐなど、少々物騒なことが起きていましたが、幸いなことに大きな事故も小さな事故も一切なく、参加した全員が思い思いのインプットを得ることができました。 期間中は #MBSSXSW という

    SXSW 2018に参加してきました #MBSSXSW | メルカリエンジニアリング
    invent
    invent 2018/03/28
  • CREチーム始めました | メルカリエンジニアリング

    こんにちは!メルカリでサーバーサイドエンジニアをしている @bravewoodと申します。 このPostでは、最近できた「CREチーム」について紹介します。 CREとは CREはCustomer Reliability Engineering(顧客信頼性エンジニアリング)の略で、Googleが提唱した専門職です。 メルカリには従来CXI(Customer Experience Improvement:顧客体験改善)と呼ばれるチームがあり、このチームが、お客さまからのお問い合わせなどを通した顧客体験を改善するという業務を行ってきました。 新たにできたCREチームは、このCXIチームを内包し、「負の顧客体験の解消」という意味だけではなく、「顧客の信頼性向上」という部分にも着目した様々な活動を行う新たな専門チームとなります。 これは例えるなら、メルカリのSREチームがサイトの信頼性にフォーカスす

    CREチーム始めました | メルカリエンジニアリング
    invent
    invent 2018/02/27
  • pvpool〜メルカリの商品閲覧数カウントアップの裏側〜 | メルカリエンジニアリング

    メルカリでは出品されている商品の閲覧数を「出品した商品」の一覧や「いいね!した商品」の一覧画面から見ることができます。以下は「いいね!した商品」の一覧画面です。(開発版アプリの画面になります) 赤い枠で囲まれている部分がそれぞれの商品の閲覧数になります。今回紹介する閲覧数のカウントアップのバックエンドはGoで開発されています。 データベース上の商品閲覧数のカウントアップ メルカリでは日々大量のリクエストを処理していますが、そういった中でもデータベースへのアクセスはINSERTやUPDATE等の書き込み処理よりもSELECTによる読み込み処理が圧倒的多数を占めます。(メルカリでは、データベースには主にMySQLを利用していますが、サービスやリージョンによってはGCPが提供しているCloud DatastoreやCloud Spannerを利用している箇所もあります) 商品が閲覧される時に実行

    pvpool〜メルカリの商品閲覧数カウントアップの裏側〜 | メルカリエンジニアリング
    invent
    invent 2018/02/26
  • try! Swift Tokyo 2018にメルカリとソウゾウから3名がLTで発表! 当日はブースでも弊社エンジニアとお話しましょう! #tryswiftconf | メルカリエンジニアリング

    try! Swift Tokyo 2018にメルカリとソウゾウから3名がLTで発表! 当日はブースでも弊社エンジニアとお話しましょう! #tryswiftconf プログラミング言語Swiftに関するコミュニティ主催のカンファレンス、try! Swift Tokyo 2018が3月1日〜3日に開催されます。ベストプラクティス、アプリケーション開発、サーバーサイドSwift、オープンソースSwiftなど、Swiftに関連する発表が中心のカンファレンスです。 メルカリはプラチナスポンサーとしてtry! Swift Tokyo 2018を応援します! www.tryswift.co 発表内容 メルカリとソウゾウから3名がLTで発表します。発表内容を紹介します。 @kitasuke: SIL入門 Swiftのコンパイラは複数のフェーズにわけて実行され、そのうちもっとも大きなものが SIL (Swi

    try! Swift Tokyo 2018にメルカリとソウゾウから3名がLTで発表! 当日はブースでも弊社エンジニアとお話しましょう! #tryswiftconf | メルカリエンジニアリング
    invent
    invent 2018/02/23
  • メルカリQA-SETの組織づくりについてまとめてみました | メルカリエンジニアリング

    こんにちは。メルカリでQA-SETチームのマネージャ兼自動化エンジニアとして、スマホアプリのテスト自動化をぶりぶりしている@daipresentsです。 少し前に、QAチームを立ち上げようとしているとある企業様と、組織についてお話する機会がありました。そこでは、「組織」「評価」「キャリア」といった共通のトピックが話題になり盛り上がったので、このブログで整理してみようとおもいます。QAに限らず、評価やキャリアはとても大切です。僕が担当するQA-SETチームでも、この一年ぐらいで考え方を浸透させたり、チャレンジできる環境を作ろうとしてきました。 メルカリQA-SETチームの組織づくり メルカリQAの役割や開発との関わり方については以下の記事を参考にどうぞ。 tech.mercari.com 上記のように、各プロジェクトにアサインされたQAエンジニアを束ねているのが、QA-SETチームになります

    メルカリQA-SETの組織づくりについてまとめてみました | メルカリエンジニアリング
    invent
    invent 2018/02/14
  • API TALK about メルカリチャンネルを開催しました | メルカリエンジニアリング

    こんにちは、サーバサイドエンジニアの @vkgtaro です。 1/23(火)にメルカリチャンネルの開発についてのイベントを開催したのでその開催後レポートをお届けします。 まずは開催当日は大雪の翌日で、足元が悪い中お越しいただいた方々には改めてお礼申し上げます。また、参加できなかった皆様におかれましてもお申し込みありがとうございました。 API エンジニアのイベントは今後も開催していきますので、次の機会によろしくお願いします。 mercari.connpass.com メルカリチャンネルはライブを通じたコミュニケーションで売れるフリマとして昨年7月にリリースされて以降、日々多くの機能開発、改善を行っています。 このイベントではそのメルカリチャンネルの成長を開発者視点で3名が登壇して伝えしました。 @bravewood による「メルカリチャンネルとは」 @vkgtaro による「急成長させる

    API TALK about メルカリチャンネルを開催しました | メルカリエンジニアリング
    invent
    invent 2018/01/31
  • ImageFluxを利用した画像配信の最適化〜動的リサイズとWebP変換〜 | メルカリエンジニアリング

    SREチームの@cubicdaiyaです。今回はメルカリにおける画像配信とImageFluxを利用した画像の動的なリサイズとWebP変換の導入によってアプリのデータ通信量を大幅に削減した事例について紹介します。 ImageFluxはクラウド画像変換サービスです。URLに画像変換用のパラメータを組み込むことで画像データの拡大・縮小やオーバレイ、フォーマット変換等が実現できます。 メルカリにおける画像データ メルカリのアプリ上で発生するデータ通信の大部分はタイムラインや検索結果に表示される画像データが占めています。種類はいろいろありますが例えば、 商品画像 プロフィール画像 バナー画像 といったものが挙げられます。特に商品画像はデータ量がとにかく多く、毎日百万個単位で増加するほか、タイムラインや検索結果をはじめ、多くの機能で活用されています。 ImageFluxを利用した画像変換でデータの通信

    ImageFluxを利用した画像配信の最適化〜動的リサイズとWebP変換〜 | メルカリエンジニアリング
    invent
    invent 2018/01/30
  • 画像での商品検索に向けて | メルカリエンジニアリング

    こちらは Mercari Advent Calendar 2017 の23日目の記事になります。 はじめに メルカリで機械学習エンジニアをやっている kumon です。 今年の10月に、出品時に画像認識によって、商品名・カテゴリー・ブランドの項目を自動的に埋めるという機能をリリースしました。 もちろん認識結果が得られない場合や、間違えることもありますが、作った人も驚くような正しい結果を出力してくれることもよくあります。 この認識エンジンはまだまだ改善中ではありますが、画像を使った別の機能についても検討しておりまして、その一つが画像による商品検索です。 画像で画像を検索するためには、一般的に、画像をなんらかの方法でベクトル表現にして、検索対象の画像のベクトル集合から、クエリ画像のベクトルとの類似度がもっとも高いものを類似画像として抽出します。 しばらくはSIFTやHoGといった特徴表現が利

    画像での商品検索に向けて | メルカリエンジニアリング
    invent
    invent 2017/12/26
  • Engineering Team in Mercari 2017 | メルカリエンジニアリング

    Happy Holidays、みなさまいかがお過ごしですか。エンジニアブログでは久々の @sotarok です。こんにちは。 この記事は Mercari Advent Calendar 2017 最終日の記事となります。昨日は Engineering Operations Team (EOT) の @jollyjoester から、”技術コミュニティを支援する「Mercari Tech Sponsorship Program」” をお送りしました。 いよいよ最終日となりましたが、今日は私目線で、メルカリのプロダクトと開発組織について、今年起こったことのまとめをお送りします。 メルカリは、昨年12月時点で70名 (海外拠点・ソウゾウ含め) ほどだったエンジニアも、200名を超える規模にまでなってきています。この1年、組織面含め多くのことが起こりました。主だった出来事を、かいつまんでお届けでき

    Engineering Team in Mercari 2017 | メルカリエンジニアリング
    invent
    invent 2017/12/25
  • 技術コミュニティを支援する「Mercari Tech Sponsorship Program」 | メルカリエンジニアリング

    Mercari Advent Calendar 2017 24日目の記事です。 こんにちは!組織開発とエンジニア*1採用に責任を持つEOT(Engineering Operations Team)の @jollyjoesterです。 今日はメルカリの技術コミュニティへの支援のあり方と、今後より支援を強化していくための制度「Mercari Tech Sponsorship Program」についてお話をしようと思います。 メルカリの技術コミュニティへの支援 メルカリは技術コミュニティへの支援を積極的に行っています。 というのも近年のテクノロジーはOSS等のオープンな技術に支えられており、メルカリも例外ではないからです。 オープンな技術の多くは世の中の多くのエンジニアが集まった「技術コミュニティ」によって作られ、日々メンテンナンスされたり、改善されています。そのため、技術コミュニティが活性化す

    技術コミュニティを支援する「Mercari Tech Sponsorship Program」 | メルカリエンジニアリング
    invent
    invent 2017/12/25
  • 社内の面倒な手作業はZapierにやらせようーーノンプログラマーでも業務自動化ができるツールを導入してみて

    社内の面倒な手作業はZapierにやらせようーーノンプログラマーでも業務自動化ができるツールを導入してみて QA Author: tadashi-nemoto0713 これは Mercari Advent Calendar 2017 22日目の記事です。 こんにちは、メルカリのQA-SETチームで自動化をぶりぶりしている tadashi0713 です。 前回は業務自動化の1つとして、Seleniumを使ったブラウザ操作自動化についてご紹介しました。 tech.mercari.com コメントや反応を見ますと、最近はRPA(Robotic Process Automation)をはじめとした業務自動化に関心が高い印象を受けました。 メルカリでは1ヶ月ほど前にZapierというツールをTeam Planで導入しました。 zapier.com このツールを使って、社員がより簡単に業務自動化ができ

    社内の面倒な手作業はZapierにやらせようーーノンプログラマーでも業務自動化ができるツールを導入してみて
    invent
    invent 2017/12/22