タグ

ブックマーク / techlife.cookpad.com (13)

  • レガシーとなった TLS 1.0/1.1 廃止までの道のり - クックパッド開発者ブログ

    SRE 兼よろず屋の id:sora_h です。最近は社移転プロジェクトをやっています。趣味は Web *1 です。 さて、クックパッドでは 2020 年 12 月に TLS 1.0 および TLS 1.1 (以後 "Legacy TLS") を廃止しました。 Legacy TLS は RFC 7457 でまとめられているような既知の脆弱性の存在などから、Chrome, Firefox といった主要ブラウザを含め各所でのサポートが打ち切られつつあります。また、現在では IETF においても Legacy TLS は deprecated と RFC 8996 にて宣言されました。 クックパッドでもセキュリティ対策およびレガシーな技術と向き合う一環で廃止を進めました。我々は歴史の長いサービスも提供しているため、古い Android や Internet Explorer などからのアクセス

    レガシーとなった TLS 1.0/1.1 廃止までの道のり - クックパッド開発者ブログ
    gennei
    gennei 2022/03/09
  • AWS CodeBuildでのRailsアプリのdocker buildを早くしたい - クックパッド開発者ブログ

    メディアプロダクト開発部の後藤(id:mtgto)です。 世間ではバレンタインですね。最近私はハンドメイドスイーツオークションというWebサービスの立ち上げをやっていました。ライブ配信でバレンタインのスイーツを作っていただき、ライバーのファンがスイーツをオークション形式で実際に購入できるというサービスです。 私のチームでは仮想DOMを扱うのにVue 2を使うことが多いのですが、今回は期日がずらせないイベントだったことや必要なライブラリがReact版しか提供されていなかったこともあり私がVueより使い慣れているReactで作りました。 記事ではAWS CodeBuildでのRailsアプリのDocker buildを早くするための工夫を紹介します。 docker buildを早くしたい理由 クックパッドでは多くのアプリケーションを運用していますが、その多くはAWS ECS上で動いています(

    AWS CodeBuildでのRailsアプリのdocker buildを早くしたい - クックパッド開発者ブログ
    gennei
    gennei 2022/02/14
  • クックパッドの在宅勤務環境 - クックパッド開発者ブログ

    コーポレートエンジニアリング担当 VP の @kani_b です。 昨今急速に拡大している新型コロナウイルス感染症の感染拡大リスクを鑑みて、従業員や関係者の皆さまの安全確保を目的に、クックパッドでは 2/18 (火) からまずは2週間ほど、国内拠点の全従業員(正社員、契約社員、パート・アルバイト、派遣社員、通常在席の業務委託)を対象に在宅勤務の原則化を実施することになりました。 クックパッド、新型コロナウイルスの拡大防止対策で、全従業員を対象に在宅勤務(Work from Home)を実施 | クックパッド株式会社 ‌ この記事では、現在クックパッドでどのような環境づくりのもと、在宅勤務が行われているかをご紹介します。 どの会社の方も同じような状況にあるかと思いますが、「他社ではどうやっているか」の一例として参考にしていただけると嬉しいです。 仕事に利用するシステム クックパッドでは、業務

    クックパッドの在宅勤務環境 - クックパッド開発者ブログ
    gennei
    gennei 2020/02/21
    “最近は動画を使えるようになっており、ミーティング開始時のウケを狙いたい人などによく使われています。”
  • 時系列データベースに関する基礎知識と時系列データの符号化方式について - クックパッド開発者ブログ

    こんにちは。インフラストラクチャー部 SRE グループの吉川 ( @rrreeeyyy ) です。今期オススメのアニメはツインエンジェル BREAK です。 普段の業務並びに趣味の一環として、サーバのモニタリング環境の調査や改善に取り組んでいます。 そこで稿では、モニタリングのコンポーネントの一つとして外すことが出来ない、時系列データベースの基礎知識に関して紹介します。 そもそも時系列データ・時系列データベースとは? 時系列データというのは、特定の時間ごとに何らかの値を取得した際の、取得した一連の値を指します。 例えば、以下のようなフォーマットをしたデータなどは時系列データにあたるでしょう。 timestamp1,key,value1 timestamp2,key,value2 timestamp3,key,value3 : 時系列データベースとは、上記のような時系列データの保存・処理に

    時系列データベースに関する基礎知識と時系列データの符号化方式について - クックパッド開発者ブログ
    gennei
    gennei 2017/05/31
  • MySQL with InnoDB のインデックスの基礎知識とありがちな間違い - クックパッド開発者ブログ

    こんにちは、サービス開発部の荒引 (@a_bicky) です。 突然ですが、RDBMS の既存のテーブルを見てみたら「何でこんなにインデックスだらけなの?」みたいな経験はありませんか?不要なインデックスは容量を圧迫したり、挿入が遅くなったりと良いことがありません。 そんなわけで、今回はレコードを検索するために必要なインデックスの基礎知識と、よく見かける不適切なインデックスについて解説します。クックパッドでは Rails のデータベースとして主に MySQL 5.6、MySQL のストレージエンジンとして主に InnoDB を使っているので、MySQL 5.6 の InnoDB について解説します。 InnoDB のインデックスに関する基礎知識 インデックスの構造 (B+ 木) InnoDB では B+ 木が使われています。B+ 木は次のような特徴を持った木構造です。 次数を b とすると、

    MySQL with InnoDB のインデックスの基礎知識とありがちな間違い - クックパッド開発者ブログ
    gennei
    gennei 2017/04/18
  • クックパッドのiOSアプリ開発を加速させるスクリプト群 - クックパッド開発者ブログ

    こんにちは、技術部モバイル基盤グループの茂呂(@slightair)です。 今回は、ちょっと地味ではありますが、クックパッドのiOSアプリ開発を支えているスクリプト群について書きたいと思います。 日々iOSアプリ開発を行うとすれば、Xcodeまたはその他のお気に入りのエディタでコードを書き、ビルドと実行を繰り返して開発を進め、アプリが完成したらサブミット、めでたくリリースという流れになると思います。 場合によってはこうした開発の所々をサポートするツールを使うこともあるでしょう。クックパッドでもいくつかのツールを使っていますし、場合によっては自作することもあります。 ツールを導入することで解決できることであればそれでよいですが、もうちょっと気の効いたことをして欲しい、リリースフローなど自分たちのアプリ開発の進め方の都合で発生する繰り返しタスクを省力化できないか、というような比較的小さな問題を

    クックパッドのiOSアプリ開発を加速させるスクリプト群 - クックパッド開発者ブログ
    gennei
    gennei 2017/03/02
  • ペンとふせんで!スマホUIのアイデアプロトタイピング - クックパッド開発者ブログ

    検索事業部のデザイナー倉光です。 今回は、開発現場でアイデア発散フェーズにやっていることの一例を紹介したいと思います。UIデザインの手法として比較的知名度は高く、デザイナー以外でも学びたいという要望も多い「ペーパープロトタイピング」についてです。 前提として プロトタイピングにはフェーズと目的に応じて 様々な手法がありますが、今回は「小規模チームでアイデアをぽんぽん出し、伝え合うためのプロトタイピング」の話です。ユーザーに実際に評価してもらうためのプロトタイプの作り方についてはこの記事では割愛させていただきます。 また非デザイナーの方は「いやいや、デザイナーじゃないと画面なんてうまく書けないよ…」と躊躇してしまうかもしれませんが、記事では社内のディレクター/エンジニア/インターン生が書いた成果物も掲載していますので、そちらも参考になると思います。 目次 目次 1.ペーパープロトタイピング

    ペンとふせんで!スマホUIのアイデアプロトタイピング - クックパッド開発者ブログ
    gennei
    gennei 2016/10/13
  • 夏の技術職インターンシップ講義資料公開 - クックパッド開発者ブログ

    こんにちは!クックパッド編集室メディア開発グループ長の @yoshiori です。 このまえ夏の技術職インターンシップの前半の開発講義・課題部分が終わったのでさっそく公開しちゃいます! ちなみにこのインターンの対象者はプログラミングはわかるし自分で(授業とかではなく)コード書いている人なので超初心者向けでは無く、少なくともひとつ以上の言語でプログラミングが出来る人向けです。 一日目 TDD + git 編(@yoshiori) 講義初日なのでまずは簡単に肩慣らし & 開発の基礎の部分として TDD と git で始めました。 git については軽く説明し TDD は基のテストファーストで進めて行きました。 ちゃんと何かをするたびにテストを実行し、メッセージを見れば次にすることが分かるというのを体験してもらい、GREEN が良くて RED が悪いのではなく、GREEN を想定しているのに

    夏の技術職インターンシップ講義資料公開 - クックパッド開発者ブログ
    gennei
    gennei 2015/09/08
  • クーポンコードの打ち間違えを防ぐために工夫した話 - クックパッド開発者ブログ

    こんにちは。会員事業部ビジネス開発グループの高田です。 クックパッドは今年、株主優待制度として、プレミアムサービス一年間無料クーポンを贈呈しました。エントリではクーポンコードを打ち間違えて、意図せず他の人のクーポンコードを使用するのを防ぐために工夫した話をご紹介します。 はじめに クーポンコードは入力のしやすさを優先して数字だけの文字列にしました。はじめは rand 関数を使って生成しようとしていたのですが、数字の打ち間違えや順序間違いで、意図せず誤使用してしまうのを防ぐためにチェックサムを加えるのがいい、と同僚から助言をもらいました。 いくつか調べて見たところ、Luhn アルゴリズムが上記を満たしていたので利用することにしました。 Luhn アルゴリズムの利用 Luhn アルゴリズムとは、誤り検出のためのチェックサム符号で、1 桁の間違いや隣接する数字の順序間違いを検出できるという特徴

    クーポンコードの打ち間違えを防ぐために工夫した話 - クックパッド開発者ブログ
    gennei
    gennei 2015/06/23
  • クックパッドの新卒研修2015 - クックパッド開発者ブログ

    技術部の牧 (@makimoto) です。 新卒社員研修の企画・運用を担当しています。 このエントリをご覧になっている方の中には、この春から新社会人として働いている方も多いのではないでしょうか。 クックパッドでもこの春に新卒社員が入社し、現在新卒社員研修の真っ最中です。 稿では、クックパッドにおける新卒社員向けの技術・サービス開発領域の研修についてご紹介をします。 みんなが技術を理解すること 今年の新卒研修では、エンジニア職ではない総合職の新卒社員にも技術研修を実施しました。 職種や役割にかかわらず、すべてのメンバーが技術を正しく理解し、活用することが、組織の成長に役立つと考えているからです。 営業やサービス開発のディレクターなどエンジニア以外のメンバーが、技術的な知識にもとづいた意思決定をできるようになることで、もっと事業の精度や速度の改善に貢献できるのではという思いがあります。 と

    クックパッドの新卒研修2015 - クックパッド開発者ブログ
    gennei
    gennei 2015/05/22
  • クックパッドのデータを研究者に公開します - クックパッド開発者ブログ

    こんにちは。検索・編成部の原島です。 大学の研究者にお会いすると、「クックパッドのデータを研究に使用したいんですが...」と相談されることがあります。料理に関する研究をしているけれど、実際のデータがないため、なかなか研究が進まないという相談です。 料理に関する研究が進まないのは、クックパッドにとっても残念なことです。これらの研究は、クックパッドのサービスを改善するための「芽」でもあります。データがないだけで芽が育たないのは、非常に悲しい話です。 このような現状を打破するため、日から、クックパッドのデータを研究者に公開します。このエントリでは、我々が準備してきたデータ公開の仕様について QA 形式で解説します。 誰が利用できるの? 申請していただいた研究者です。ただし、公的機関(e.g. 大学、独立行政法人)の研究者に限ります。申請時には、クックパッドと国立情報学研究所(後述)による審査が

    クックパッドのデータを研究者に公開します - クックパッド開発者ブログ
    gennei
    gennei 2015/02/24
  • 初めての新規サービス開発を通して学んでいること - クックパッド開発者ブログ

    こんにちは。投稿推進部の清水(@pachirel)です。 2009年にクックパッドに入社してから、インフラ周り、クックパッドの人事周り(採用・評価)や広告周りのシステム開発を担当していました。 2014年4月頃から、2〜3名の小さなチームで新規サービスのプロトタイピングをいくつか行っています。 企画の詳細は省きますが、私がこの10ヶ月ほどで学んだことをまとめました。アジャイル開発やLean startupの考えに共感しているので、そこから得た内容に私の体験を付け加えたものになっています。 今回はプログラミングに関する技術的な内容は含まれていません。 なぜ作るか スタートアップが失敗する原因で一番多いのは「人が必要としていないものを作ってしまった」というものです。 The Top 20 Reasons Startups Fail 社内の新規サービス開発でも同じ傾向があるのではないでしょうか。

    初めての新規サービス開発を通して学んでいること - クックパッド開発者ブログ
    gennei
    gennei 2015/02/07
  • チームメンバーとの信頼関係を築く:定期個人面談の薦め - クックパッド開発者ブログ

    こんにちは。新規広告開発部所属エンジニアのレオ(@lchin)です。 ここ2年ほどは、大きな事業部のなかの小規模なエンジニアチームのリーダーを務めてきました。エンジニアリーダーとしては、1人のエンジニアとしてソフトウェア開発をしつつ、チームのメンバーの力をまとめて、事業部のゴールを推進しました。事業部のマネージャほど、マネジメント業務が中心になるわけではありませんが、多くのエンジニアが苦手な人間関係スキルはエンジニアリーダーにも必要です。 メンバーは何か大きな不安を抱えていないのか?ポテンシャルを発揮できていないメンバーにどうフィードバックするのか?メンバー間に何かトラブルはないのか?見えないところで仕事の妨げはないか?チームでソフトウェア開発を行う上のよくある悩みだと思いますが、皆さんはどう解決していますか?私は、個人面談はこういった悩みを解消するための大変有効な手段だと思います。 なぜ

    チームメンバーとの信頼関係を築く:定期個人面談の薦め - クックパッド開発者ブログ
    gennei
    gennei 2015/02/07
  • 1