タグ

ブックマーク / blog.recruit.co.jp (24)

  • Amazon EKSでのArgoCDを使ったGitOps CD | Recruit Tech Blog

    こんにちは。スタディサプリ ENGLISH SREグループの木村です。 つい先日、スタディサプリENGLISHの基盤をECSからEKSへの移行をしました。移行の経緯や理由などは先日公開された大島のスタディサプリENGLISHの基盤をECSからEKSに移行しました という記事で紹介しております。 今回は私たちがKubernetesのCDに利用したArgo CDをなぜ選んだのか?どのよう導入したのかという部分を説明していきたいと思います。 Argo CDについて Argo CDはGitOps1)Gitをアプリケーションとインフラのsingle source of truthとして扱い、Gitにある情報(ここではKubernetesのmanifest)をあるべき姿とし、同期を行いアプリケーションの変更を行う手法。GitOpsを提唱しているweaveworksのGitOpsにページに詳細が書いてあ

    Amazon EKSでのArgoCDを使ったGitOps CD | Recruit Tech Blog
  • スタディサプリENGLISHの基盤をECSからEKSに移行しました | Recruit Tech Blog

    こんにちは、スタディサプリ ENGLISH SREグループの大島です。 オンライン英語学習サービスであるスタディサプリ ENGLISHは2015年10月のリリース1)当時は英語サプリという名前でリリースしていましたから5年が経ち、おかげさまでサービスを拡充させることができています。リリース当初からインフラにはコンテナを採用し、長い間AWSのコンテナオーケストレーションサービスのAmazon Elastic Container Service(以下、ECS)で運用してきましたが、この度ECSからAmazon Elastic Kubernetes Service(以下、EKS)に移行しました。 今回の記事では、その歴史の変遷となぜEKSにしたのかというところを書いていきたいと思います。 コンテナと歩んできた5年間 まず、ECSからEKSに移行しようと思ったきっかけの前に、インフラの歴史を少し振

    スタディサプリENGLISHの基盤をECSからEKSに移行しました | Recruit Tech Blog
  • 検索体験を向上する Query Understanding とは | Recruit Tech Blog

    検索体験を向上する Query Understanding とは 記事は Recruit Engineers Advent Calendar 2019 – Adventar 25日目(最終日!)の記事です. はじめまして.リクルートテクノロジーズの河野 晋策です. 私は,Qassチームというリクルート横断の検索改善を行うチームにて検索改善を行っています. Qassチームは,検索基盤の運用や検索改善を行っているチームです. 詳しくは以下の記事をご覧ください. 「いい検索」を考える 検索組織の機械学習実行基盤 リクルート全社検索基盤のアーキテクチャ、採用技術、開発体制はどうなっているのか Elasticsearch+Hadoopベースの大規模検索基盤大解剖 Argoによる機械学習実行基盤の構築・運用からみえてきたこと (CNDT2019, OSDT2019) 記事の想定読者:検索初学者の方

    検索体験を向上する Query Understanding とは | Recruit Tech Blog
  • 第5回リクルート自然言語処理ハッカソンの報告 | Recruit Tech Blog

    リクルートテクノロジーズの叶内です。以前告知させていただいた、第5回リクルート自然言語処理ハッカソン の報告です。作業時間およそ3.5日という短い期間でしたが、皆さん全力で課題に取り組んでくれました。以下について書いていきます。 ハッカソン環境 データと課題 表彰 まとめ 運営紹介 ハッカソン環境 BigQuery と Google Colaboratory(jupyter notebook)を用いた分析環境を用意しました。 事業のデータを元にハッカソン用のデータウェアハウスを運営側で作成し、学生が直接BigQueryでデータを確認できるようにしました。 また、Google Colaboratoryのサンプルコードとして、BigQueryからデータを引き抜きpandasのDataFrame型に格納したものや、MeCabやCaboCha、Word2VecColab上で動作するものを用意しま

    第5回リクルート自然言語処理ハッカソンの報告 | Recruit Tech Blog
  • 株式会社リクルート エンジニアコース新人研修の内容を公開します!(2021年度版) | Recruit Tech Blog

    こんにちは! Webフロントエンドエンジニアの眞野 隼輔です。 毎年大きな反響を頂いている、エンジニアコースの新人研修の内容を紹介させていただきます。 研修の概要 リクルートでは、エンジニアコースでスペシャリスト採用された新卒のエンジニアを対象に、現場で培われた「当に必要な生きた知識・技術」を取り入れた新人研修を開催しています。 前半は研修では各分野に長けた社員による講義形式の技術研修を行い、後半は仮配属という形でそれぞれ別の部署に配属されて実際の業務を経験するOJTとなっています。 この技術研修はそのほとんどが内製されており、ベテラン社員による経験を元にした講義を通して生きた知識・技術を獲得できます。また、実際に手を動かす演習型の講義ではベテラン社員からのレビューやフィードバックを得られるため、知識の定着や更なる成長へと繋がります。 年度の技術研修も、昨年度に引き続きフルリモートでの

    株式会社リクルート エンジニアコース新人研修の内容を公開します!(2021年度版) | Recruit Tech Blog
    clavier
    clavier 2021/11/06
  • Four Keys 〜自分たちの開発レベルを定量化してイケてる DevOps チームになろう〜

    はじめに この記事タイトルに興味をもって読み始めていただいている方の多くは、ソフトウェアエンジニアとしてチームで開発をしていたり、エンジニアリングマネージャーとしてチームビルディングやマネジメントをされている方なのではないかと思います。 実際、この記事を書いている加藤も、リクルートライフスタイルのデータプラットフォームグループ (以前は CETチーム と呼ばれていました) に所属するデータエンジニアとして、データ活用のための基盤開発・運用を行っている一人です。また、担当している社内データプロダクトのプロダクトマネージャーも兼任しています。 記事では、自分の所属している DevOps チームを「イケてる DevOps チーム」にするために取り組んだ内容や気づいた点をお伝えしたいと思っています。 目次 はじめに 「イケてる」DevOps チームってなに? Four Keys とは なぜ Fo

    Four Keys 〜自分たちの開発レベルを定量化してイケてる DevOps チームになろう〜
    clavier
    clavier 2021/04/01
  • CI での Docker Build のベストプラクティスを考えてみた

    要約 Docker in Docker な CI では、以下の Docker Build をオススメします。 スクリプト Buildx を使う Buildx を使えないならば、BuildKit + –cache-fromオプションを使う Dockerfile ステージ間の依存を弱くする(依存インストールとビルドを分ける) 中間イメージも軽量化する 不要なキャッシュを削除 ファイル変更差分によりますが、これらにより最大 1/3 へビルド時間を短縮しました。 はじめに 『ホットペッパービューティー』美容クリニックのカウンセリング予約サービスのバックエンドを担当している安達です。 新卒として 4 月に入社して、5 月中旬に美容クリニックに配属され、すでに約 4 ヶ月が過ぎました。 まず、チーム内で自分が活躍できる庭を作りたかったため Docker について詳しくなろうと思いました。 そこで、CI

    CI での Docker Build のベストプラクティスを考えてみた
    clavier
    clavier 2020/09/25
  • kaggle初心者の私が3ヶ月でソロゴールドを獲得した方法 | リクルート

    リクルートデータ組織のブログをはじめました。※最新情報はRecruit Data Blogをご覧ください。 Recruit Data Blogはこちら こんにちは。今年2018年4月より新卒でRCOに入社した松田です。 kaggle というデータ分析のコンペティション運営サイトが昨今世間に注目されていますが、 今回 TalkingData AdTracking Fraud Detection Challenge において2月にkaggleを始めた私が単独で金メダル(ソロゴールド)を獲得できたのでそれまでにやったことなどをシェアしたいと思います。 図: kaggleサイト( https://www.kaggle.com/ )のプロフィール画面より 図: kaggleでの活動ログ。中2ヶ月はやってないので実質の活動期間は1ヶ月ほど コンペの具体的内容やテクニックの話は 別記事 にまとめたので、

    kaggle初心者の私が3ヶ月でソロゴールドを獲得した方法 | リクルート
  • Node.jsの非同期I/Oについて調べてみた

    こんにちは、記事は リクルートライフスタイル Advent Calendar 2019 13 日目の記事です。今日は sadnessOjisan がやっていきます。この記事では Node.js の非同期 I/O について調べたことを紹介します。 調べようと思ったきっかけは、先日の JSConfJP で Wrap-up: Runtime-friendly JavaScriptというランタイムレベルでの最適化を解説したセッションを見て Node.js の理解を深めたいと思ったからです。私は Node.js でのコーディングは多少経験がある程度なので、まずは Node.js の大きな特徴である非同期 I/O からキャッチアップすることにしました。 Node.js の大きな特徴 Node.js は公式の説明を借りると、スケーラブルなネットワークアプリケーションを構築するために設計された非同期型の

    Node.jsの非同期I/Oについて調べてみた
  • 多腕バンディット問題とA/Bテスト (Part 1) | リクルート

    リクルートデータ組織のブログをはじめました。※最新情報はRecruit Data Blogをご覧ください。 Recruit Data Blogはこちら みなさん、こんにちは。ギャンブラー🤡の鹿野です。 今回は、機械学習の分野で注目を集めている多腕バンディット問題の中でも、 特にWebサイト最適化の文脈でしばしば出てくる確率的多腕バンディット問題 (stochastic multi-armed bandit problem) の基的な枠組みとそれを解くアルゴリズムについて解説いたします (簡単のため、以下では「確率的多腕バンディット問題」を単に「多腕バンディット問題」と表記します) 。 記事を読み終わったあとには 多腕バンディット問題の基的な枠組みとそれを解くアルゴリズム Webサイト最適化においてどのように役に立つのか A/Bテストと多腕バンディット問題の関係 について理解ができる

  • TerraformでFargateのSidecarを実現しよう - Tech Blog - Recruit Lifestyle Engineer

    こんにちは!リクルートライフスタイルの共通クラウド基盤でリードクラウドアーキテクトをしている須藤です。 この記事は AWS Advent Calendar 2018 の2日目の記事です!( リクルートライフスタイル Advent Calendar 2018 2日目の記事でもあります) リクルートライフスタイルの共通クラウド基盤では、サービスごとにアカウントを払い出して、サービス開発者がその環境を構築する、というスタイルです。クラウドアーキテクトチームはCCoE(Cloud Center of Excellence)であり、TerraformやFargateを使いたい、という開発者に対しては、ペアプログラミングやアーキテクチャレビューなど、規範的・助言的な活動を通して成長しあっていく、という活動をしています。 当然、re:Invent 2018で発表された トランジットゲートウェイ や AW

    TerraformでFargateのSidecarを実現しよう - Tech Blog - Recruit Lifestyle Engineer
  • 検索組織の機械学習実行基盤 | Recruit Tech Blog

    こんにちは、APプロダクト開発G Qassチームの内田です。 稿では、リクルートテクノロジーズの検索チームの取り組みについて紹介します。 Qassチームの取り組み Qassチームは、リクルートテクノロジーズの検索特化組織です。リクルートグループの提供する様々なサービスに対して、 検索基盤の運用・検索ロジックの改善を行っています。詳しくはこちらの記事をご覧ください。2015年の記事なのでプロダクトに関しては現状と変わっているところもありますが、組織の役割については当時と大きく変わっていません。 今、Qassチームでは今までの検索基盤運用・検索ロジックの改善に加え、新たに機械学習実行基盤の構築を行っています。今回は、この基盤がどのような経緯で構築されることになったのか、またどのような構成で構築を行ったかを紹介します。 機械学習実行基盤 簡単にまとめると 取り組んだ課題:サービスごとに開発環境

    検索組織の機械学習実行基盤 | Recruit Tech Blog
  • リクルートテクノロジーズ エンジニアコース新人研修の内容を公開します(2018年度版) | Recruit Tech Blog

    こんにちは、フロントエンド開発をリーディングしている古川 (@yosuke_furukawa)です。 昨年、こちらのブログで新人研修の特別講座の内容を紹介したところ、大反響だったので、今年も公開します。 リクルートテクノロジーズの新人研修 7月、リクルートテクノロジーズは新人の部署配属の季節を迎えました。 4月に(株)リクルートの新卒Web採用枠で入社した新人のうち、今年は20名が弊社に配属。3か月の研修期間を経て、早速現場での業務にあたってくれています。 リクルートテクノロジーズでは、配属までの3か月間「ブートキャンプ」という技術研修を実施しています。 ブートキャンプのコースは2つ。 一つは、プログラミングやWebサービスの構造の基礎を学び、その後1つのスマホサイトを企画からリリースまで行うコース。 もう一つは一定以上のプログラミングスキルと開発経験のある層向けに、より現場での技術に即し

    リクルートテクノロジーズ エンジニアコース新人研修の内容を公開します(2018年度版) | Recruit Tech Blog
  • R-ISUCONを開催しました~問題公開編~ | Recruit Tech Blog

    Recruit 全社対抗のISUCON、R-ISUCON (りすこん) を開催しました。 @yosuke_furukawa は主に問題作成を担当、 @orisano がベンチマークを担当し、インフラは @int-tt が担当しました。ヘルプとして Java の参考実装は @mashroomhama が担当しました。 詳しくは前回の記事を参照して下さい。 https://recruit-tech.co.jp/blog/2018/04/27/r_isucon_2018_spring/ 問題の概要 いわゆるリクルートの社内システムでおなじみの「会議室予約システム」を題材にしました。 リクルートでは3ヶ月ごとに会議室を予約する仕組みをもっています。3ヶ月ごとの会議予約開始日の朝には全てのリクルートグループ各社からアクセスが頻繁に行われ、その結果会議室予約システムが遅くなったり、500エラーで落ちた

    R-ISUCONを開催しました~問題公開編~ | Recruit Tech Blog
  • Data-Driven A/B Testing を高速に回すための DevOps 基盤

    Data-Driven A/B Testing を高速に回すための DevOps 基盤 Low Load, High Return! はじめに みなさん、こんにちは。 データエンジニアリングG CET チームの菅沼です。 普段は、分析基盤の開発や機械学習モデリングなどを担当しています。 弊チームは、「RLSMeetup#7 プランナー・サイエンティスト・エンジニア三位一体!年間十数億稼ぐチームの舞台裏」のレポートにあるように、 一つのチームに複数人のプランナー・データサイエンティスト・エンジニアが在籍しており、 弊社におけるビッグデータを活用して利益創出することを目指したチーム体制となっています。 じゃらんなどの大規模なサービスでは、データ分析によるコンテンツ出し分けやレコメンドシステムの性能評価に A/B テストを用いており、 稿では、そのようなデータドリブンな A/B テストを高速に

    Data-Driven A/B Testing を高速に回すための DevOps 基盤
    clavier
    clavier 2018/06/11
  • serverlessconf tokyoに登壇しました

    serverlessconf tokyo Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤 こんにちは。データ基盤の構築、運用をしている山田(@nii_yan)です。 先日開催されたserverlessconf tokyoに参加させていただき、登壇もしてきました。 登壇内容 弊社は来春トリップAIコンシェルジュという商品をリリースする予定です。 こちらは宿に対する「お風呂は何時から入れますか?」などの問い合わせに対し、botが人間の代わりに応答してくれるという商品になっていまして、裏側で機械学習をしています。 今回話した内容はこの機械学習のバッチを動かす基盤についてになります。 Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤 新しい基盤を作る上で1番気をつけたいと思って

    serverlessconf tokyoに登壇しました
  • リクルートテクノロジーズ 新人研修特別編を公開します

    こんにちは。アプリエンジニアの五味です。 2017年4月にリクルートホールディングスの新卒Web採用枠で入社した新卒社員のうち、21名がリクルートテクノロジーズに配属となりました。(いらっしゃい!) リクルートテクノロジーズでは「ブートキャンプ」と呼ばれる新卒社員向けの技術研修を3か月間実施しています。 もともと高い能力を持つ彼・彼女らですが、「これからのリクルートをリードしていく存在」になって欲しいという期待を込め、プロとしての重要な立ち上がり期を支援しています。 今年からは社外講師の既存プログラムに加え、より実践的な内容を求める経験者をターゲットに、総勢12名の現場エンジニアが担当する特別講座を開催しました。 各分野のスペシャリストがこれまで現場で培ってきた「当に必要な生きた知識・技術」のインプットは、彼・彼女らの成長を加速させ、これからのエンジニア人生の礎になってくれるものと僕らは

    リクルートテクノロジーズ 新人研修特別編を公開します
  • A/Bテストに用いられる統計的検定手法(ロジック)のまとめ&比較 | RCO Ad-Tech Lab Blog

    リクルートデータ組織のブログをはじめました。※最新情報はRecruit Data Blogをご覧ください。 Recruit Data Blogはこちら 汎用人型雑用AIの stakaya です。 たまたま数年前に社内のBLOGに書いたABテストのロジックのまとめ&比較記事を発掘したので、 このまま眠らせているのはもったいないぞと、 圧倒的もったいない精神を発揮し、シェアさせていただきます。 あの頃は私も若かった。 社内では”堅物・真面目・一途”で有名なものでして、下記文章がお硬いのはご勘弁ください。 はじめに 記事は、施策の評価手法としてしばしば用いられるA/Bテスト(A/B testing)について、できる限り背後にある仮定を明記した上で、まとめたものである。 A/Bテストとは、主にインターネットマーケティングにおける施策の良否を判断するために、2つの施策(通常、A・Bと記載)を比較す

    A/Bテストに用いられる統計的検定手法(ロジック)のまとめ&比較 | RCO Ad-Tech Lab Blog
  • iOS大規模リファクタリング

    こんにちは。Airシリーズ開発チームでiOSの開発リードを担当している永井です。 この度、Airレジから予約台帳機能を切り出して、Airレジとレストランボードの2つのアプリとして新たに5/10にリリースしました。 iPad版・iPhone版合わせて181,175行あったAirレジですが、今回内部的にもObjective-CからSwiftに全面的に書き換えています。 まだまだリファクタリングしていきたい課題はありますが、コード行数は70%も減り(つまり元々の行数から30%になりました)、SonarQubeで示される技術的負債も500dから21dに減り、かなり成功したと言って良いのではないかと思っています。 今回の取り組みの中で、良かったこと・再検討したいことがいろいろ発見できました。それらについてまとめてみるので、これからSwift採用を検討している方々の参考になれば幸いです。 取り組みのポ

    iOS大規模リファクタリング
  • Swiftコーディング規約とコードスニペット

    こんにちは。スマートデバイス開発チームの韮澤(にらさわ)です。 スマートフォンアプリの開発や開発標準の策定、技術推進などを行っています。 私の得意分野はiOS開発なのですが、iOSといえばSwiftの勢いが凄まじいですね。 私は先日try! Swiftカンファレンスに参加し、その盛り上がりを肌で感じてきたところです。 Objective-CからSwiftへ これまでiOS開発に使われてきたObjective-Cはその特殊な記法から、学習コストが高く開発を始めるための精神的な障壁が若干高めだったかと思います。 しかしSwiftの出現により、プログラミング未経験者はもとよりweb系エンジニアにとっても参入障壁がグッと下がった印象があり、社内でも「SwiftならiOSアプリを書いても良いかも」という意見が聞かれます。 そんな高まりを見せるSwiftの波に乗っていこう!ということでリクルートライフ

    Swiftコーディング規約とコードスニペット