くらしのマーケット開発ブログ

「くらしのマーケット」を運営する、みんなのマーケット株式会社のテックブログ。積極採用中です。

Stripe Connect Expressの利用事例を発表しました

こんにちは。みんなのマーケットでCTOをしている戸澤です。 くらしのマーケットでは2020年8月に初の決済機能である、オンラインカード決済機能をリリースしています。 オンラインカード決済機能の実装では決済代行としてStripe社のConnectを使用しています。…

ヤッホー!シワちゃんだよーん

こんにちは、バックエンドエンジニアのキダです。 先日くらしのマーケットでSign In With Apple(SIWA)対応のリリースをしました! SIWA対応でハマった点などを紹介いたしますので、興味がある方は参考にしてください。 背景 AppleのポリシーによりApple ID…

くらしのマーケット開発職向けの会社紹介資料を公開します!

こんにちは。みんなのマーケットでCTOをしている戸澤です。 みんなのマーケットでは採用を強化しており、 2020年11月から2021年2月の4ヶ月間で、開発メンバーだけでも18名が入社しています。 カジュアル面談や面接をしてきた中で、「当社が何を考えていて」…

全員で会議できる時間をいもす法で探そう

こんにちは。SRE / バックエンドエンジニアのマノメです。 前回の記事 を読んで、以前私が思いつきで作った、「全員で会議できる時間はいつか?」を調べるコードを書いたことを思い出しました。 どういうものかというと、チームメンバーの数日間の出勤記録を…

競技プログラミングのススメ

こんにちは、 @akira です。本年もよろしくお願いいたします。 2021 年のテックブログ一本目は、競技プログラミングの紹介記事になります。 サンプルコードは Go で記載しています。 競技プログラミングとは 出題されたお題をデータ構造とアルゴリズム(+数…

2020年のQAチームを振り返る

こんにちは、QAエンジニアのざきです。 イルミネーションにワクワクする時期ですが、今年は大人しくStay Homeを続けています。 数年前の大根やぐらライトアップ〜宮崎市田野町〜 2020年も年末を控え、来年の行動目標やチーム方針を検討する中で、そう言えば…

フルリモートワークでのオンボーディング施策

こんにちは。みんなのマーケットでCTOをしている戸澤です。 当社ではコロナ以前からリモートワークで働ける状態でした。 ただどちらかというと東京もしくは宮崎のオフィスで働くのが主流で、利用するメンバーはそこまでいませんでした。 3月下旬のリモートワ…

Work From Home #1

こんにちは、決済チームでバックエンドエンジニアをしております、 @akira です。 今回は、今年 3 月からリモートワークを開始した @akira が現在、 どのような環境で どのように働いているか をまとめた記事になります。 Work From Home は広義の意味でリモ…

コードをいじらずにPythonアプリケーションのメモリリークを検証する方法

こんにちは、バックエンドエンジニア・SREのカーキです。 最近くらしのマーケットのシステムで一部の Python アプリケーションにあったメモリリークを検証した時に学んだ検証方法について書きたいと思います。 メモリリークとは? メモリリークはプログラム…

テストレベルとカバレッジとは!?

こんにちは、QAエンジニアのざきです。 冬といえば鍋ですね、好きな鍋は「もつ鍋」です。 はてさて 今日のブログは「テストレベル」と「カバレッジ」について解説します。 このブログを書くにあたり、英語を勉強している友人に聞いてみました。 Q1.テストレ…

くらマのオンライン決済を支えるデプロイ技術

こんにちは。 バックエンドエンジニア / SRE のまのめです。 くらしのマーケットではマイクロサービスアーキテクチャを一部採用しており、決済サービスも一つのマイクロサービスとして運用しています。 決済サービスは ECS で管理しており、コンテナは Farga…

緊急トラブルを解決するサービスをリリースしました!

最近寒くて布団から出るのが辛いPdMのハットリです。 今回は、緊急系サービスをリリースするにあたってどんな取り組みをしていたかを書いていきたいと思います。 緊急系サービスを一言で説明すると「24時間以内の作業を実現させるサービス」です。 詳しい説…

ででんでんでん、デシジョンテーブル

ご無沙汰してます、QAエンジニアのざきです。 世の中の流れは早いもので、2020年も残り僅か。寒い地域は苦手なので宮崎から出られません。 はてさて 今回は数あるテスト設計技法の中から「デシジョンテーブル」について書きます。 開発内容の規模が小さい場…

Redisのコネクション数を10分の1にした話

はじめに こんにちは、バックエンドエンジニアのtakayukiです。 私のあるリリースをきっかけとしてRedisのコネクション数が増加しました。 この記事にはRedisのコネクション数が増加した際の調査内容と修正の備忘録を書きます。 起きたこと くらしのマーケッ…

TypeScript の特徴を他の言語と比較してみた

こんにちは。2020年4月に新卒で入社した Katayama です。 私は学生時代、主に C / C++ や Python を書いていました。TypeScript は くらしのマーケットのバックエンドで使われており、入社して初めて触った言語です。 これまで触った言語のとの違いや、特徴…

Web ナイト宮崎 Vol.10 ~てげ TypeScript を学びたい~ で登壇しました

こんにちは、バックエンドエンジニアの @akira です。 9 月 18 日に宮崎で開催された勉強会【Web ナイト宮崎 Vol.10 ~てげ TypeScript を学びたい~】で「TypeScript の列挙型について」というテーマで発表してきました! 今回はその内容を記事として再編成…

Ansible の variable register は when でスキップできない

こんにちは。 バックエンドエンジニア / SRE のまのめです。 くらしのマーケットのデプロイには、 Ansible が採用されています。 Ansible では、実行したコマンドの結果などを変数に入れる register というキーワードがあります。 小ネタですが、この regist…

TypeScriptを使ってDiscord botを作ってみよう!

はじめに こんにちは!今年新卒入社しました、エンジニアのタナカです。 早速ですが、ここ最近リモートワークが推奨されている中、「Discord(ディスコード)」というツールを導入した、もしくは導入してはいないけれども単語は聞いたことがあるという方が増…

ログイン画面の「当たり前」を調査

みんなのマーケットでUI/UXデザイナーをしているミソサクです。 モバイルデザインの「当たり前」の変化はすごい早いです。その早さに置いていかれないように、今回は2020年9月現在の「ログイン画面」における「当たり前」を調査します。 まず、我らがくらし…

AWS Summit Onlineにて、くらしのマーケットのインフラを紹介しています

昨日9/8より開催の、AWS Summit OnlineのAWS Startup Talksにて、「くらしのマーケット」のインフラ構成や、放映しているTVCMの負荷対策について、CTOの戸澤がご紹介しています。 aws.amazon.com (みんなのマーケット で、ページ内検索をお願いします) くら…

オンライン決済サービスをリリースしました

こんにちは、バックエンドエンジニアの @akira です。 今回は8月12日にリリース致しました、オンライン決済サービスの開発について振り返ってみようと思います。 今まではくらしのマーケットの支払い方法として現金のみ利用可能でしたが、オンライン決済サー…

BashとPSQLを使う時の注意事項

こんにちは!エンジニアのカーキです。 今日はBashとPSQLを使ってSQLを実行した時にハマったエピソードについて紹介したいと思います。 なにでハマったのか? 自分が書いたBashのスクリプトでpsqlを使っていくつかの簡単なSQL (主にINSERT, UPDATE, DELETE)…

GitHub Actions もしものときの timeout

みんなのマーケットの バックエンド/SRE を担当している、マノメです。 今回は、GitHub Actions で起こった障害に巻き込まれて失敗に気づいた、という例をご紹介したいと思います。 なお本記事は、6/10 に開催した 「失敗に学べ!くらしのマーケットの開発「…

くらしのマーケットの開発チーム紹介!

みんなのマーケットでPdMをしているハットリです。 今回はくらしのマーケットを開発しているテクノロジー本部のチームを紹介していきたいと思います。 テクノロジー本部では 機能をより使いやすく より、「探しやすく」「予約しやすく」「払いやすい」ものに…

要件定義で、すったもんだ

みんなのマーケットでUI/UXデザイナーをしているミソサクです。 入社5年目です。みんなのマーケットに来るまではアパレルEC業界でデザイナーをしていました。この記事にあるように、私は入社して1年くらいは自分の思い描くような活躍ができていませんでした…

QAのお仕事紹介

はじめまして。QAエンジニアのザキです。 ここ数年、QAってなに?QAエンジニアの仕事って?、と聞かれる機会が増えました。 それだけ興味・関心が高まっていると思いつつ、認知度については業界を通じた課題があるのかなと一喜一憂の日々です。 今日は簡単な…

読みやすいコードを書く必殺技

こんにちは、バックエンドエンジニアのカーキです。 今日は自分が思う読みやすいコードの秘密を紹介したいと思います。 いきなり答えを言っちゃいますが、読みやすいコードを書く必殺技はコードの抽象度を揃えることです。 抽象度とは 抽象度というのはもの…

SQL を一定間隔で実行する

夜ご飯んンンンンンンンンンンンンンンッ!食べれないやつ こんにちは、バックエンドエンジニアの @akira です。 データを自動で更新するなど、 SQL を一定間隔で実行したいケースがあり、今回はその方法を調べてみました。 前提条件は以下です。 PostgreSQL…

pip install Flask-Injector ができない! を解消した

こんにちは。バックエンドエンジニア / SRE のまのめです。 先日、弊社のテスト環境「 tako 環境 」が焼けなくなり(*)、それについて調査・解決したことをまとめました。 * tako 環境を焼く = 社内用語で、テスト環境を作成/更新すること 状況 python3.5 で…

エンジニアの「ドキュメントよりコード書きたい」を本気で解決してみた!

こんにちは、みんなのマーケットでCTOをしている戸澤です。 今回は、長年に渡って整備できなかった開発ドキュメントを、全員で整備する取り組みをはじめた、という内容です。 本記事は、6/10に開催した「失敗に学べ!くらしのマーケットの開発「失敗」LT会 v…