GraphQL Asia 2019 で登壇しました
こんにちは。メディアプロダクト開発部の我妻謙樹(@itiskj)です。 ソフトウェアエンジニアとして、広告配信システムの開発・運用を担当しています。好きな言語は Go と TypeScript です。先日、GraphQL に関してアジア圏初の大型カンファレンス、GraphQL Asiaがバンガロールで開催されました。元 Facebook で GraphQL の策定者の一人である Lee Byron...
View ArticleRubyKaigi 2019 Cookpad Daily Ruby Puzzles の正解と解説
Ruby 開発チームの遠藤です。RubyKaigi 2019 が無事に終わりました。すばらしい会議に関わったすべてのみなさんに感謝します。開催前に記事を書いたとおり、クックパッドからはのべ 7 件くらいの発表を行い、一部メンバは会議運営にもオーガナイザとして貢献しました。クックパッドブースでは、様々な展示に加え、エンジニアリングマネージャとトークをする権利の配布やクックパッドからの発表者と質疑をする...
View ArticleXcodeGenによる新時代のiOSプロジェクト管理
こんにちは。モバイル基盤部の@giginetです。平成最後のエントリを担当させていただきます。iOSアプリの開発では、Xcodeが生成するプロジェクトファイルである、*.xcodeprojをリポジトリで共有するのが一般的です。しかし、この運用は大規模なプロジェクトになるほど、数多くの課題が発生します。クックパッドiOSアプリは巨大なプロジェクトであり、通常の*.xcodeprojによる管理には限界が...
View ArticleGoogle I/O 2019 に参加しました
こんにちは、技術部品質向上グループの加藤です。 普段は主にモバイルアプリのテスト周りに関わっています。 今回は先日開催された Google I/O 2019 に参加したので、現場の環境や気になったセッションを初参加の目線で書いていきます。Google I/O 2019毎年5月ごろに Google が開催するカンファレンスです。 Google...
View ArticleWorking with AWS AppSync on iOS
Hi, this is Chris from Cookpad's Media Product Globalization department.I'm going to discuss some pitfalls we've run into while working with AWS AppSync for iOS. This post is not a primer on AppSync,...
View Articleレシピ検索を支えるレガシーでクリティカルな大規模バッチを刷新した話
こんにちは、会員事業部の新井です。余暇を全て Auto Chess に喰われています。過去このブログにはサービス開発に関する記事*1を投稿させていただいているのですが、今回はシステム改修についての記事になります。 クックパッドには検索バッチと呼ばれる大規模なバッチが存在するのですが、今回それを刷新することに成功しました。...
View ArticleモダンBFFを活用した既存APIサーバーの再構築
技術部の青木峰郎です。 去年までは主にデータ分析システムの構築を担当していましたが、 最近はなぜかレシピサービスのサービス開発をやっています。 今日は、そのサービス開発をする過程で導入したBFF(Backends for Frontends)であるOrchaについて、...
View ArticleSwiftUIで使用されているSwift5.1の新機能
こんにちは。会員事業部の岡村 (@iceman5499) です。 普段はクックパッドアプリ(iOS)を開発しています。 先日San Joseで開催されたWorldwide Developers Conference 2019...
View ArticleMarkdown と GitHub で社内規程を便利に管理
VP of Technology の星 (@kani_b) です。技術基盤や研究開発領域などを担当しつつ、社内の色々なことを技術の力でいい感じにする仕事をしています。セキュリティや AWS の話が好きです。さて、みなさんは、ご自身が勤務する会社の就業規則を読んだことはあるでしょうか。...
View Articleおすすめの食べ方を見ながら食材を買える体験を作った話
はじめにこんにちは、買物事業部のデザイナー兼エンジニアの長野です。生鮮食品ECサービス「クックパッドマート」の開発チームで、注文ユーザー向けのサービス開発全般を担当しています。今日は、先日クックパッドマートのiOSアプリでリリースした新機能とその開発プロセスについて、お話ししたいと思います。クックパッドマートの詳細については、以前にも...
View ArticleFirebaseで運用するKomercoの管理用アプリケーションの開発
こんにちは。Komerco事業部エンジニアの高橋(id:yosuke403)です。「料理が楽しくなるマルシェアプリ」であるKomercoの開発を行っています。Webサービス開発と聞くとユーザが利用するWebアプリやモバイルアプリの開発を思い浮かべますが、運営スタッフがサービスのデータを閲覧・更新するための管理用アプリケーションの開発も必要になることがほとんどです。KomercoはバックエンドにFir...
View ArticleSimpacker: Rails と webpack をもっとシンプルにインテグレーションしたいのです
技術部の外村(@hokaccha)です。Rails で webpack を使うためのシンプルな gem を作ったのでそれについて紹介します。WebpackerRails で webpack を利用した Web フロントエンドの環境を作る場合、最近では Webpacker が選択されることが多いでしょう。Rails 6 からは Webpacker...
View ArticleEuRuKo 2019 で発表してきました
技術部でフルタイム Ruby コミッタをしている遠藤(@mametter)です。フルタイムで Ruby を開発しています。先日、オランダのロッテルダムで開催された EuRuKo 2019 で発表してきたので、簡単にレポートします。EuRuKo とはEuRuKo は、毎年ヨーロッパのどこかで開催されている Ruby のカンファレンスです。EuRuKo 2019 会場シングルセッション世界の Ruby...
View Articleサービス開発でぶつかってきた壁と、そのとき助けてくれた本
こんにちは、開発ディレクターの五味です。クックパッドにレシピを投稿してくれるユーザーのための機能やサービスを開発する「投稿開発部」に在籍しております。投稿開発部は、2018年1月に前身となる部からメンバーを一新して発足した部署です。自分たちで1から戦略を作るため、強い実感を持ってユーザーを理解することを信条に、資料を読んだり前任者に聞いたりするだけではなく、実際にユーザーとたくさん話し、たくさんレシ...
View Article冪等なデータ処理ジョブを書く
こんにちは、マーケティングポート事業部データインテリジェンスグループの井上寛之(@inohiro)です。普段はマーケティングに使われるプライベートDMP(データマネジメントプラットフォーム)の開発を行っています。本稿では、その過程で得られた冪等なデータ処理ジョブの書き方に関する工夫を紹介したいと思います。今回は、RDBMS上で SQL...
View ArticleISMM 2019 で発表してきました
技術部の笹田です。遠藤さんと同じく Ruby のフルタイムコミッタとして、Ruby インタプリタの開発だけをしています。先日、アメリカのフェニックスで開催された ISMM 2019 という会議で発表してきたのと、同時開催の PLDI 2019 という会議についでに参加してきたので、簡単にご報告します。カンファレンス会場ISMM 2019ISMM は、International Symposium...
View ArticleGrafana の scripted dashboards を利用してダッシュボードを自動生成する
技術部 SRE グループの鈴木 (id:eagletmt) です。去年クックパッド開発者ブログでも紹介した hako-consoleの延長として、メトリクス表示に Grafana の scripted dashboards を利用するようにしているのでその紹介をしようと思います。アプリケーション毎のダッシュボードクックパッドではダッシュボードの作成に Grafana を利用しており、主に...
View ArticleAWS re:Inforce 2019に参加してきました
技術部セキュリティグループの三戸 (@mittyorz) です。こんにちは。 去る6/25,26日に開催されたAWS re:Inforce 2019に参加しましたので、簡単ではありますが紹介させていただきたいと思います。 今回が初開催なため規模感や雰囲気などは未知数の中、クックパッドからはセキュリティグループの三戸・水谷 (@m_mizutani)とVP of Technologyの星...
View Articleインフラのコスト最適化の重要性と RI (リザーブドインスタンス) の維持管理におけるクックパッドでの取り組み
技術部 SRE グループの mozamimyです。クックパッドでは、 SRE が中心となって、サービスを動かす基盤の大部分である AWS のコスト最適化を組織的に取り組んでいるため、今回はそれについてご紹介します。前半では、そもそもの話として「なぜコスト最適化が重要なのか」「何が難しいのか」「何をすべきなのか」といったことを述べます。これは、当たり前すぎて逆に陽に語られることが少ない...
View ArticleGoogle Play Billing Client 2.0における消費型商品の決済の承認(acknowledgement)について
ユーザ・決済基盤部の宇津(@uzzu)です。クックパッドでは複数のAndroidアプリでGoogle Play決済(定期購読、消費型商品)を利用しており、 ユーザ・決済基盤部ではそれらのアプリの決済情報を取り扱う共通決済基盤サービスとクライアントライブラリを日々開発しています。 直近ではGoogle I/O 2019にて発表されたGoogle Play Billing Client...
View Article