Mercari Engineering Blog

We're the software engineers behind Mercari. Check out our blog to see the tech that powers our marketplace.

アプリを安全にリリースするための取り組み(Release trainとClient release process)

QAエンジニアの@____rina____です。

今回は、メルカリがおこなっているiOSとAndroidのアプリリリース(メルカリではClient releaseと呼んでいます。以下、Client releaseと表示します)を支えるRelease trainという仕組みとプロセスについて紹介します。

続きを読む

Testing Redux-based iOS app.

f:id:damianp:20191226153929p:plain Every developer is dreaming about well written, bug-less and easy to maintain code - at least everyone should. A very convenient way to ensure that our code is like the one described in the previous sentence is to do unit testing. Wikipedia's define unit testing as follows:

In computer programming, unit testing is a software testing method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures, are tested to determine whether they are fit for use.

In this article, we will try to fit into this definition by testing the Shopping List app from my last article (source code). Let's get started!

続きを読む

メルカリエンジニア組織 2019 Recap

メルカリのCTOをやっている @snamura です。 Mercari Advent Calendar の最後を締めくくってほしいということで、ブログを書くのが物凄く苦手なんですが無理をして書いています。技術に沿った話で締めくくりたいところですが、ここ1年はずっとエンジニア組織のことに取り組んできたので、ここでは組織の話をちょっとしようと思います。

最近メルカリの Go Bold Challenge というカンファレンスで話したのですが、メルカリのエンジニア組織は、こちらの記事で詳しく語っています。

logmi.jp

2019年4月から本格的にCTOとして日本のメルカリのエンジニア組織を見ていくことになったのですが、課題山積みということで、次から次にやるべきことが出てくる1年でした。メルカリというサービスに対して、どういったエンジニアリングのアプローチを取っていくのか。まだ道半ばではありますが、これまでやってきたこと、来年やることを簡単にまとめて、 Advent Calendar の締めくくりにしようと思います。

続きを読む

メルペイCTOと考える新しい経済学とエンジニアリング

12月1日にhidekさんの記事から始まったメルペイアドベントカレンダーも今日で最後です。締めくくりを私(@sowawa)が務めさせていただきます。私からはメルカリやメルペイの振り返りと「新しい経済学とエンジニアリング」の話をしたいと思います。

はじめに

2019年は兎にも角にも「メルペイのリリース」の年でした。2017年ごろからメルカリの決済基盤をマイクロサービスで作り直していき、メルペイの会社の設立を経て今年2月のリリースに至りました。最初のリリース後もまさに五月雨のようなリリースを五月雨が降る5月、6月まで積み上げていきました。リリースを積み重ねながら改善やキャンペーンが始まり、気づいたら12月を迎えていました。

続きを読む

Data EngineeringとKubernetes Executorの話

こんにちは。Mercari Advent Calendar 2019の24日目は、US版Mercari Machine Learning & Data Engineering Teamのhatoneがお届けします。

USのData Engineering Teamは、データサイエンティスト・マーケティング・会計チームetcの多岐にわたる社内データのパイプラインの構築・運用を行っています。Data Engineeringとは、どんな役割の仕事なのか?を、DIKWピラミッドフレームワークによる情報整理の事例や、実際にAirflowにてKubernetes Executorを用いたデータパイプラインの例をお話しながらご紹介していきたいと思います。

Data Engineeringとは?

普段の業務では"ログを収集して、解析して、何かしらの判断する" このようなプロセスが繰り返されていきます。膨大なデータ量を如何に解釈して扱っていくかを模したフレームワークとして、DIKWピラミッドというモデルがあります。これは、下層から上層に向かって、Data(データ), Information(情報), Knowledge(知識), Wisdom(知恵)と積み上げられていくピラミッドのフレームワークで、この4つの頭文字からDIKW pyramidまたはDIKW hierarchyと呼ばれています。

f:id:hatyone:20191223131914p:plain:w500
DIKWピラミッドの図

続きを読む