オフラインイベント「Cookpad Tech Kitchen #26 数千万レコードをリアルタイムに捌く生鮮EC事業開発」を開催しました!

買物プロダクト開発部部長の勝間(@ryo_katsuma) です。3/24に「Cookpad Tech Kitchen #26 数千万レコードをリアルタイムに捌く生鮮EC事業開発」をWeWork 渋谷スクランブルスクエアで開催しました。 イベントにはクックパッドの新規事業「クックパッドマー…

クックパッドマート最難解ロジック!?「採番」

今日まで 4 日間連載でクックパッドマートの流通についてご紹介してきました。最後のこのエントリーではマート内で 1,2 を争う難解かつ重要な処理と言われている「採番」についてご紹介します。

クックパッドマートの配送ルートを自動生成している仕組み

生鮮食品の EC サービスであるクックパッドマートでは、「1品から送料無料」をはじめとするサービスの特徴を実現するために、商品の流通網を自分たちでつくっています。 このエントリでは、商品をユーザーに届けるための配送ルートを自動生成している仕組み…

クックパッドマートのドライバー向けWebアプリケーション

クックパッドマートは生鮮食品のECサービスで、流通の仕組みを自分たちで作っています。当然ですが商品を流通させるには、物理世界でものを動かす必要があります。実際にものを運ぶのはドライバーと呼ばれる人が行っており、このドライバーに向けていつ・何…

クックパッド生鮮 EC お届けの裏側 2022 年版

クックパッドマートは生鮮食品の EC サービスで、商品を届ける流通を内製しています。そんなクックパッドマート流通にエンジニアがどう貢献しているかを今日から 4 日連続でご紹介していきます。 今回はクックパッドマートの裏側の流通がどんな要素で構成さ…

fastText in Cookpad

研究開発部の原島です。去年からはレシピサービス開発部も兼務しています。そちらの話(検索の話)はおいおいするとして、今日は研究開発部の話(機械学習の話)をします。 fastText 単語の分散表現、重要ですよね。ニューラル全盛期の現代において、使わな…

クックパッドに転職して感じたこと

こんにちは。 レシピサービス開発部でエンジニアを担当しているnaraです。 クックパッドには2022年1月に転職し、早くも3ヶ月が過ぎました。 まだまだ分からないことが多いですが、日々楽しく開発に携わっています。 今回は転職間もない自分が、クックパッド…

複数リージョンへの Alexa Skill のデプロイを可能な限り自動化する

こんにちは、ボイスサービス部の ymd (@y_am_a_da) です。今年からは採用にも関わっています。 クックパッドは日本で No.1 のレシピサービス*1ですが、ここ数年は海外展開にも注力しており、世界 74 ヶ国 32 言語で展開しています。 ボイスサービス部は、も…

CookpadTV の開発スタイルとエンジニアマネージャーの役割

メディアプロダクト開発部の長田(@osadake212)です。 私の主な仕事は、ライブ配信サービスの cookpadLive などを運営しているクックパッドグループの CookpadTV 株式会社のサービス開発をすることです。CookpadTV ではサービス開発部の部長としてエンジニア…

Cookpad Summer Internship 2022 を開催します!

こんにちは、ボイスサービス部の ymd (@y_am_a_da) です。今年は新卒採用エンジニアリーダーもやっています。 今年もクックパッドはサマーインターンシップを開催します!本記事ではエンジニアコースについてご紹介いたします。 以下のサイトからご応募頂け…

工学的知見と実際の観測データに基づいて物理世界にサービスを展開しています

こんにちは.研究開発部の鈴本 (@_meltingrabbit) です. クックパッドの研究開発部 では,「毎日の料理を楽しみにする」というミッションを実現するために,様々な野心的なチャレンジをしています.一方で,我々研究開発部のメンバーには,自分のもてる技術…

3/12 (土) 開催!「6社合同SRE勉強会」のクックパッドのセッションを紹介します

6社合同SRE勉強会について クックパッド技術部 SRE チームの @eagletmt と @mozamimy が、以下の Connpass で告知・募集されている「6社合同SRE勉強会」に登壇します。 https://line.connpass.com/event/236497/ 6社合同SRE勉強会は、IT 企業 6 社 (LINE/メ…

レシピページのOGP画像を動的に生成する

こんにちは、クックパッドでエンジニアをやっている @morishin です。入社してわりと長い間 iOS アプリやそのバックエンドの開発を中心にやってきましたが、最近は専らウェブフロントエンドとその基盤をいい感じにするというのをやっています。先日クックパ…

AWS CodeBuildでのRailsアプリのdocker buildを早くしたい

メディアプロダクト開発部の後藤(id:mtgto)です。 世間ではバレンタインですね。最近私はハンドメイドスイーツオークションというWebサービスの立ち上げをやっていました。ライブ配信でバレンタインのスイーツを作っていただき、ライバーのファンがスイーツ…

クックパッドの基盤をフル活用して新卒が新規アプリケーションを作った話

はじめに こんにちは。クックパッドレシピサービス開発部の宮崎(HN:どや)です。 私は2021年新卒としてクックパッドに入社し、そろそろ1年が経とうとしています。時の流れははやいですね。 さて、表題にも記しましたが、去年の末に新しくサーバーサイドの…

【イベント登壇】モバイルアプリエンジニア向け勉強会「iOS/Androidアプリ開発のマルチモジュール化」で児山が発表しました

はじめに こんにちは!クックパッド採用グループのカレー大好きくろきです。 1/12にアンドパッドさん、Sansanさんとの合同イベントモバイルアプリエンジニア向け勉強会「iOS/Androidアプリ開発のマルチモジュール化」が開催されました。 クックパッドからは…

Ruby 3.1 の debug.gem を自慢したい

技術部の笹田です。今日保育園に娘を送りにいったら、娘が先生に「サンタさんにプレゼントもらったよ! お母さんもプレゼントもらってたけどお父さんはもらってなかった!」と報告しており、私だけが悪い子と保育園に伝わってしまいました。 2021年は、笹田…

プロと読み解く Ruby 3.1 NEWS

技術部の笹田(ko1)と遠藤(mame)です。クックパッドで Ruby (MRI: Matz Ruby Implementation、いわゆる ruby コマンド) の開発をしています。お金をもらって Ruby を開発しているのでプロの Ruby コミッタです。 本日 12/25 に、ついに Ruby 3.1.0 がリリ…

クックパッドマートアプリの開発体験改善に向けたJetpack Compose導入の検討と実践、そして新たな課題

こんにちは、買物プロダクト開発部のYuto Koguchi(@10llip0p)です。2020年に新卒入社し現在はクックパッドマートのAndroidアプリ開発に従事しています。 クックパッドマートアプリ(Android)はリリースから約2年半が経ち、おかげさまで日々多くのユーザー…

モバイルアプリ開発において宣言的UIフレームワークを利用する際のコンポーネント粒度についての考察

こんにちは、クックパッド事業本部 買物サービス開発部の佐藤(@n_atmark)です。 私の所属する買物サービス開発部ではクックパッドアプリにおける買い物機能*1の開発を行なっており、私は2020年の上期から買い物機能のモバイルアプリ開発の担当をしています…

「サービス開発とその進め方」というタイトルで授業をしました

こんにちは、クリエイション開発部の橋本和幸(@funwarioisii)です。今期は同じ本部に橋本さんが3人いたので3倍反応しました。 12月2日に(一昨年私が卒業した)岩手県立大学で、「サービス開発とその進め方」について講義をしました。*1 この記事では「何…

Ruby 3.1はエラー表示をちょっと親切にします

こんにちは、ruby-devチームの遠藤(@mametter)です。 Among Usというゲームをやってるのですが、友達が少なくてあまり開催できないのが悩みです。 今日は、Ruby 3.1に導入される予定のerror_highlightという機能を紹介します。 どんな機能? NoMethodError…

Redshiftのデータをサービス改善に役立てるデータ転送システム Queuery

こんにちは、技術部データ基盤グループの佐藤です。この記事では最近業務として主に取り組んでいたDWHから外部へのデータ転送基盤であるQueuery(きゅうり)について、OSSとしてGitHubへの公開しましたのでこの記事でご紹介をします。 github.com Queueryと…

既存実装を活用しつつJetpack Composeを用いてクックパッドAndroidアプリの買い物機能を高速に開発している話

こんにちは、クックパッド事業本部 買物サービス開発部の佐藤(@n_atmark)です。 2019年新卒で入社後、クックパッドの新規サービスである「クックパッドマート」の開発に従事しており、2020年からはレシピサービス「クックパッド」iOSアプリの買い物機能を…

DroidKaigi 2021 において、「2020年代の WebView 実装」というタイトルで発表しました

こんにちは。モバイル基盤部のこやまカニ大好きです。 先日行われた DroidKaigi 2021 で「2020年代の WebView 実装」というタイトルで発表させていただいたので、今日はその発表を簡単にまとめようと思います。 当日聴いて頂いた参加者の方、本当にありがと…

RecBole を用いてクックパッドマートのデータに対する50以上のレコメンドモデルの実験をしてみた

本記事ではクックパッドのデータに対して多数のレコメンドモデルを適用する実験を行った様子を紹介いたします。

UINavigationControllerをカスタマイズ 〜OSの影響を受けづらいカスタムナビゲーションの実装〜

こんにちは、モバイル基盤部のヴァンサン(@vincentisambart)です。 iOS 15とXcode 13がリリースされました。最新のiOS SDKでビルドしてみたら、カスタマイズされたナビゲーションバーに修正が必要だったアプリが少なくなかったようです。しかし、iOS版のクッ…

クックパッドマートの多種多様な商品名から、扱いやすい「食材キーワード」を予測する

研究開発部の山口 (@altescy) です.今回は最近開発したクックパッドマートの商品の「食材キーワード」を予測する機械学習モデルを紹介します. 商品の食材キーワード予測とは? クックパッドマートでは日々様々な食材が多くの販売者から出品されています.…

DroidKaigi 2021にクックパッド社員が登壇します & アフターイベントを開催します!

こんにちは、モバイル基盤部の茂呂(@slightair)です。 エンジニアが主役のAndroidカンファレンス、DroidKaigi 2021 の開催がいよいよ来週にせまってきました。 今年は10/19(火)から3日間、オンラインで開催されます。 droidkaigi.jp クックパッドは、本カン…

今すぐ ALB のアクセスログをクエリする

AWS の ALB の大量のアクセスログに対して Athena を使って柔軟にクエリできる環境を自動的に作っておくシステムについて紹介します。

/* */ @import "/css/theme/report/report.css"; /* */ /* */ body{ background-image: url('https://cdn-ak.f.st-hatena.com/images/fotolife/c/cookpadtech/20140527/20140527163350.png'); background-repeat: repeat-x; background-color:transparent; background-attachment: scroll; background-position: left top;} /* */ body{ border-top: 3px solid orange; color: #3c3c3c; font-family: 'Helvetica Neue', Helvetica, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, Osaka, 'MS Pゴシック', sans-serif; line-height: 1.8; font-size: 16px; } a { text-decoration: underline; color: #693e1c; } a:hover { color: #80400e; text-decoration: underline; } .entry-title a{ color: rgb(176, 108, 28); cursor: auto; display: inline; font-family: 'Helvetica Neue', Helvetica, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, Osaka, 'MS Pゴシック', sans-serif; font-size: 30px; font-weight: bold; height: auto; line-height: 40.5px; text-decoration: underline solid rgb(176, 108, 28); width: auto; line-height: 1.35; } .date a { color: #9b8b6c; font-size: 14px; text-decoration: none; font-weight: normal; } .urllist-title-link { font-size: 14px; } /* Recent Entries */ .recent-entries a{ color: #693e1c; } .recent-entries a:visited { color: #4d2200; text-decoration: none; } .hatena-module-recent-entries li { padding-bottom: 8px; border-bottom-width: 0px; } /*Widget*/ .hatena-module-body li { list-style-type: circle; } .hatena-module-body a{ text-decoration: none; } .hatena-module-body a:hover{ text-decoration: underline; } /* Widget name */ .hatena-module-title, .hatena-module-title a{ color: #b06c1c; margin-top: 20px; margin-bottom: 7px; } /* work frame*/ #container { width: 970px; text-align: center; margin: 0 auto; background: transparent; padding: 0 30px; } #wrapper { float: left; overflow: hidden; width: 660px; } #box2 { width: 240px; float: right; font-size: 14px; word-wrap: break-word; } /*#blog-title-inner{*/ /*margin-top: 3px;*/ /*height: 125px;*/ /*background-position: left 0px;*/ /*}*/ /*.header-image-only #blog-title-inner {*/ /*background-repeat: no-repeat;*/ /*position: relative;*/ /*height: 200px;*/ /*display: none;*/ /*}*/ /*#blog-title {*/ /*margin-top: 3px;*/ /*height: 125px;*/ /*background-image: url('https://cdn-ak.f.st-hatena.com/images/fotolife/c/cookpadtech/20140527/20140527172848.png');*/ /*background-repeat: no-repeat;*/ /*background-position: left 0px;*/ /*}*/