ブックマーク / techblog.gmo-ap.jp (195)

  • オンラインイベント「アドテクノロジーの仕組みを知ろう!」開催レポート

    こんにちは! GMOアドマーケティングのKONCEです。 今回は、7/2に開催したオンラインイベント「GMO Developers Night #12 アドテクノロジーの仕組みを知ろう!」開催レポートをお届けします。 イベント概要 イベントはGMOインターネットグループが昨年より継続的に開催している GMO Developer Night のイベントの一つとして開催しました。 来は2/7(金) にリアルイベントにて渋谷フクラスにて開催予定でしたが、新型コロナウイルスの感染拡大に伴いGMOインターネットグループでは1/26(日)から在宅勤務体制へ移行をしたため、リアルイベントは急遽開催中止となりました。 今回、GMO Developer Night がオンラインとして開催が再開したため、アドテクノロジーの仕組みを知ろう!もオンラインでの開催となりました。普段アドネットワーク・DSP・SS

    オンラインイベント「アドテクノロジーの仕組みを知ろう!」開催レポート
    gt0824
    gt0824 2020/07/28
  • オンラインイベント「GMO Developers Day 2020」を開催します!

    こんにちは。 GMOアドマーケティングのS.Sです。 2020年7月28日(火)にGMOインターネットグループは、「GMO Developers Day 2020」をオンライン開催いたします。 このイベントでは、GMOインターネットグループのサービス開発における技術や取り組みをお伝えします。 今回初開催となる「GMO Developers Day 2020」では、FinTech、ネットインフラ、AI/データサイエンス、メディア・コミュニケーション、働き方の5つをテーマにGMOインターネットグループを支えている各サービスの開発者が11のセッションを展開いたします。 GMOアドマーケティングからも、機械学習を用いた広告配信での入札価格決定という内容で発表させていただく予定です。 イベント概要 日時: 2020年7月28日(火) 13:00〜19:30 場所: オンライン(Zoomウェビナー)

    オンラインイベント「GMO Developers Day 2020」を開催します!
    gt0824
    gt0824 2020/07/22
  • python3の入った環境でgcloud dockerが動かなくなった件

    GMOアドマーケティングのmizkichです。 GCPDocker Containerをアップロードするためのコマンドが急に動かなくなりました。 対処法は簡単だったのですがどこにも情報がなかったので、同様に躓いた人用に備忘録を残しておきます。 python3とgcloudを両方使っている方は、文末の環境変数を設定して置いた方が良さそうです。 gcloud dockerが動かない 普段と異なるPCGCPへコンテナをデプロイしたところ、gcloud dockerが動かなくなっていました。 GCPへコンテナをPUSHすると「ERROR: gcloud crashed (TypeError): a bytes-like object is required, not ‘str’」とエラーがでます。 ERROR: gcloud crasherd (TypeError): a bytes-like

    python3の入った環境でgcloud dockerが動かなくなった件
    gt0824
    gt0824 2020/07/16
  • 【在宅勤務レポート】コミュニケーションの取り方についてエンジニアリングマネージャーに聞いてみました

    GMOアドマーケティングの石丸(@thomi40)です。新型コロナウイルスの影響で在宅勤務や時差出勤を取り入れる企業が増えていますが、GMOインターネットグループも2020年1月27日から在宅勤務体制へ移行しました。 当初は2週間をめどとした在宅勤務でしたが、2020年2月10日以降も在宅勤務の継続やオフィス出社時の感染予防対策を拡充させるといった体制へ移行しております。詳細の取り組みは以下のページをご覧ください。 弊社GMOアドマーケティングでも2020年1月27日から在宅勤務を中心とした体制へ移行したので、今回は社内の6... T.M @アドネットワーク『AkaNe』 今の状況、工夫したところ 在宅勤務が始まった当初はミーティングがやりづらいと感じていましたが、4ヶ月続けると慣れてきました。 障害対応時も1日中Google Meetを繋げっぱなしにして会話をしながら対応することも出来ま

    【在宅勤務レポート】コミュニケーションの取り方についてエンジニアリングマネージャーに聞いてみました
    gt0824
    gt0824 2020/07/10
  • AWSエンジニアがGCPメインの会社に転職してみた話

    初めまして、GMOアドマーケティング インフラ開発部のhakumaiです。 今年1月にHRTech系企業からGMOアドマーケティングに転職してきました。 現職では、女子向けメディア「めるも」のインフラ業務に携わり、日々業務に励んでおります。 今回は、私が転職してみて感じたインフラ技術のギャップの一部についてお話しいたします。 前職でのインフラ環境・経験について 前職のHRTech企業で触っていたインフラ環境は、ほぼAWSでした。 インフラの保守運用業務に加え、新規プロダクトのインフラアーキテクチャ設計構築を経験したこともあり、 VPCやEC2・RDS・S3・ECSなど基的なAWSのサービスについての知識はある状態でした。 ちなみに、AWSのソリューションアーキテクトアソシエイトも取得済みです。 また、GCPは全くの未経験でした。 アドマのインフラ環境について 一部オンプレもありますが、環

    AWSエンジニアがGCPメインの会社に転職してみた話
    gt0824
    gt0824 2020/06/25
  • UiPathのパッケージ化と管理方法

    皆さんこんにちは。 広告配信システムの管理画面開発と全社業務自動化のRPA開発を担当してるR.Aです。 以前、2回ほどRPAツールの使用方法・作り方などについて記述しましたが、今回は自身で作成したロボットをパッケージ化する方法についてご説明しようと思います。 1、パッケージ化とは パッケージ化とは、一定の処理をまとめ、簡単に呼びだせるようにしたアクティビティの総称を言います。 パッケージ化を行うと、以下のようなメリットがあります。 ①同じような作業があった時に作成する手間が省ける。 ②パッケージのメンテナンスが1つになるので、使用しているロボットの修正が簡易。 ③1つのアクティビティとして表示されるので、見た目がスッキリする。 プログラムでいう関数に似ていると思います。 2、実際に作成してみる。 まずUipathのライブラリを新規作成します。 新規プロジェクトを作成する画面の右上にライブラ

    UiPathのパッケージ化と管理方法
    gt0824
    gt0824 2020/06/17
  • 【GCP】オートスケールのクールダウン期間指定について

    こんにちは。 GMOアドマーケティングの@zakisanbaimanです。 GCEマネージドインスタンスのオートスケールを用いる際、クールダウン期間を指定できるので実際にどんな動きをするのか確認してみます。 クールダウン期間とは インスタンス生成してから再度オートスケール指標を取得するまでの期間。デフォルトは60秒。 初期化時間よりも短過ぎても長過ぎても良くないらしく、ちゃんと初期化時間を計測して設定すべきとのこと。 公式ドキュメント「クールダウン期間」 確認したいこと アプリケーションが起動する前にクールダウン期間に入ると更にインスタンスが追加されるのか? 結論 ヘルスチェックで「異常」となったまま、更にインスタンスは追加されない。 【パターン1】クールダウン期間 > アプリケーション起動時間 まずは通常パターン。 アプリケーション起動時間がクールダウン期間に収まる場合はどのような挙動に

    【GCP】オートスケールのクールダウン期間指定について
    gt0824
    gt0824 2020/06/16
  • 新卒研修でDevOpsの歴史を語った件

    こんにちは、GMOアドマーケティングのmizkichです。 アドテクなマイクロサービスをGCPKubernetesで運用しています。 GMOではグループ全社の新卒エンジニアに向けて、技術力向上・適性判断を目的とした研修プログラム「GMOテクノロジーブートキャンプ」を毎年実施しています。 今年度は非常勤講師として「DevOpsで必要とされるエンジニアスキルの変化」というタイトルで登壇させて頂きました。 「DevOpsと継続的デリバリーの関係性」や「技術の進化によりエンジニアの担当領域の変化」などを踏まえ、DevOps時代のエンジニア技術スタックの広さを解説しています。 この記事では、この講義を作る事になった顛末や発表資料の共有などをしたいと思います。 ・GMOテクノロジーブートキャンプとは 社内では略してGTBと呼んでいます。 GTBの内容を端的に言うと、一ヶ月の集中講義で新卒に成果物を

    新卒研修でDevOpsの歴史を語った件
    gt0824
    gt0824 2020/06/15
  • Google AdManager APIを試してみる

    (引用元:Google アド マネージャー – 統合型の広告管理プラットフォーム https://admanager.google.com/intl/ja/home/) こんにちは、フロント周りを担当しているGMOアドマーケティングのY.A.です。 昨今媒体においてPrebid.jsなどHeaderBiddingの導入に伴い、自前でGoogle AdManager(以降「GAM」)の申込情報作成を自動化したいという場面が増えていると思います。 (Prebid.jsの概略図。多くの場合、大量の広告申込情報を作らないといけない。 ※上記画像は当社が作成したもの) 今回はそれを実現できるGoogle AdManager APIについて、セットアップからNetwork名取得までのサンプルを通して説明したいと思います。 基的には GAM APIのGet Startedのページ の内容に沿ってるので

    Google AdManager APIを試してみる
    gt0824
    gt0824 2020/06/11
  • JavaのSwitch Expressionsに慣れる

    GMOアドマーケティングのT.Nです。 Java 14でSwitch ExpressionsがPreviewからStandardになりました。 Switch Expressionsについては既に多くの記事や説明が存在すると思いますが、 今回は自分がSwitch Expressionsに慣れるためにソースコードを書いて動かしてみました。 Switch Expressionsとは Switch Expressionsを日語にするとSwitch式です。 Switch文から値を返せるようになり、式として扱えるようになりました。 Switch ExpressionsはJava 12でPreviewとして追加されました。 Java 12での変更点 ラベルに矢印(->)を使用できるようになった ラベルを複数指定できるようになった 値を返せるようになった ソースコードで説明すると以下のようになります。

    JavaのSwitch Expressionsに慣れる
    gt0824
    gt0824 2020/06/10
  • TensorFlow 2.0でTPUを利用する

    こんにちは、GMOアドマーケティングのS.Rです。 TPUとはディープラーニングを高速化するために、Googleが開発したプロセッサーです。TPUの利用により、ディープラーニングのモデルのトレーニング時間を20倍以上改良する事が可能です。 TensorFlow 1.xでTPUを利用するAPIを提供していますが、TensorFlow 2.0ではこのAPIの利用方法が変更されました。 今回はTensorFlow 2.0でTPUを利用する方法を皆さんへご紹介します。 利用する環境 Googleが無料で提供している機械学習目的の研究用ツール【Colab】を利用します。 1 Colabのインスタンスを作る Colabを利用するために必要な最初のStepは、Colabのファイルを作る事です。 Google Driveの管理画面へ遷移し、新しいColabのファイルを作ります。 2 TPUを設定する 作成

    TensorFlow 2.0でTPUを利用する
    gt0824
    gt0824 2020/06/09
  • Railsのパフォーマンス調査でrack-mini-profilerを使ってみました。

    こんにちは。H.Tと申します。 今年の1月よりGMOソリューションパートナーからGMOアドマーケティングに転籍となりました。 アドマではAkaNe管理画面の開発を担当することになりRails漬けの毎日を過ごしております。 今回は画面のパフォーマンス調査をする機会がありrack-mini-profilerを使ってみたので簡単にご紹介できればと思います。 rack-mini-profilerは手軽にRuby on Railsのパフォーマンス計測ができるgemとなります。 使い方の詳細については下記の通りです。 インストール ローカルなどの開発環境で使う前提の場合は下記のインストールですぐに使えます。

    Railsのパフォーマンス調査でrack-mini-profilerを使ってみました。
    gt0824
    gt0824 2020/06/08
  • 久しぶりにgcloud components updateをしたら怒られたので対応した話

    ERROR: (gcloud.components.update) Failed to fetch component listing from server. Check your network settings and try again. 在宅勤務中ということもあり、ネットワーク周りかなとおもって、自宅のルータの設定を色々変えて見たけど全然だめ。 結論、手元の環境のpythonライブラリを一度削除し、最新化することで動きました。 環境は、MacOS Mojave 10.14.6です。 (OSの設定は自己責任でお願いします) 準備 brew自身のアップデート Updated 3 taps (homebrew/core, homebrew/cask and homebrew/services). ==> New Formulae asuka field3d lanraragi reor

    久しぶりにgcloud components updateをしたら怒られたので対応した話
    gt0824
    gt0824 2020/06/05
  • SPAに入門してみました

    こんにちは、GMOアドマーケティングのK.Mです。 興味があったのでSPA(Single Page Application)に入門してみました。 SPA とは 単一のページで構成されるWebアプリケーション 必要なときに必要な部分だけサーバー側と通信するので効率が良い したがってユーザー体験の向上が期待できる 開発面では、フロントエンドとバックエンドの役割分担がわかりやすい Vue.js SPAについて調べてみると、どうやらVue.jsなどのフレームワークの利用が前提的っぽいということがわかったので、まず先にVue.jsについて簡単に入門してみます。 Vue.jsについてはCDNから開発用のビルドを読み込む形で利用することで簡単に試してみることができます。

    SPAに入門してみました
    gt0824
    gt0824 2020/06/04
  • pandasによる時系列データ分析の初歩

    はじめに GMOアドマーケティングのS.Sです。 プロダクトに機能追加などを行った時に、プロダクトの各種指標にどのような影響があったか簡単に調べたいことがあります。 そこで今回はpandasを使って時系列データをふわっと分析する方法についてみていきたいと思います。 データフレームの作成 はじめに分析を行う対象となるダミーデータを用意します。 ダミーデータは二つのグループ(AとB)について、2020-04-01から2020-05の下旬のある日(具体的には記事を書いた日)まで得られているとします。 import numpy as np import pandas as pd np.random.seed(0) dates = pd.date_range("2020-04-01", pd.to_datetime("today"), freq="1D") rA = np.random.normal

    pandasによる時系列データ分析の初歩
    gt0824
    gt0824 2020/06/03
  • BigQueryでクエリのスケジュールを使ってみた

    GMOアドマーケティングのT.Oです。 BigQueryの「クエリのスケジュール」機能を使ってみました。この機能を使うとプログラムを書かずにクエリを定期的に実行して、結果をテーブルに書き込むことができるので便利です。ここでは利用手順をご紹介します。 0.前提 クエリのスケジュールを利用するためには、ユーザーに以下の権限が必要です。 *)権限が不足している場合、利用できませんので管理者の方に権限の付与を依頼してください。 bigquery.jobs.createまたはbigquery.transfers.update … 転送を更新するための権限です bigquery.datasets.update … データセットのメタデータを更新するための権限です 1.クエリの作成 定期実行するためのクエリを「クエリエディタ」に記述します。以下はクエリの例です。 *)「クエリのスケジュール」を実行する前

    BigQueryでクエリのスケジュールを使ってみた
    gt0824
    gt0824 2020/06/02
  • Celebration Gridをやってみました。

    こんにちは。GMOアドマーケティングのT.Mです。 はじめに スクラム開発を始めてからふりかえりはKPTで行っていましたが、 マンネリ化して書くことが無くなってきたので、別のやり方を導入してみようと考えました。 技術書典6でふりかえり読というを購入してから何かやってみたいなと思ってたのもあり、Celebration Gridが面白そうだったので、こちらをやってみました。 やったことが成功、失敗に関わらず、結果を視覚的に表現する方法です。 振る舞い(ミス、実験、プラクティス)、結果(成功、失敗)の組み合わせ6パターンを表にします。 出典:Celebration Grids: Celebrate Learning with this Management 3.0 Practice https://management30.com/practice/celebration-grids/ 図の

    Celebration Gridをやってみました。
    gt0824
    gt0824 2020/05/29
  • MariaDBでAUTO_INCREMENTの値が戻る罠

    GMOアドマーケティングのT.Kです。 MariaDBでAUTO_INCREMENTの値が戻る現象に遭遇したので、紹介したいと思います。 発生条件はパーティションを使っているテーブルに対して、並列トランザクションでINSERTを行い、片方のトランザクションで払い出したAUTO_INCREMENTの値を使わなかった場合です。 検証環境 OS: CentOS 7 DB: MariaDB 10.4.13 各種設定はデフォルト値 再現手順 テーブル CREATE TABLE `hoge_report` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `hoge_id` INT(10) NOT NULL , `request` INT(10) NOT NULL, `report_date` date NOT NULL, PRIMARY KEY

    MariaDBでAUTO_INCREMENTの値が戻る罠
    gt0824
    gt0824 2020/05/26
  • アプリエンジニアのAnsible入門

    自宅で執筆してますGMOアドマーケティング GMOSSP開発担当の@KazuakiMです。 コロナの影響で私の生活環境は大きく変わりましたが、私は元気です。 今日はGMOSSPの環境構築、リリースなどで活躍しているAnsibleに触れる機会がありましたので、 Ansible初心者の私がAnsibleのPlaybookを修正して番環境に反映するまでをコードと共にご紹介します。 Ansibleの知識が全くないため、Ansible構築・運用ガイドブックを参考に既存のコードを読み解いていきました。 こちらのは弊社のインフラチームに良だとお墨付きをもらい、じっくり読み込んでなんとなく理解が深まりました。 ではさっそく、Ansible独自?の用語と合わせて、設定方法をご紹介します。 インベントリ Ansible適用対象のホストを記載します。その際にホストグループを設定する事ができます。 書き方的

    アプリエンジニアのAnsible入門
    gt0824
    gt0824 2020/05/25
  • もっと早く、ラクに–TensorFlow 2.0を紹介

    こんにちは、GMOアドマーケティングのS.Rです。 2019年9月、Deep Learningのツールの一つであるTensorFlowは2.0に更新しました! 今回はTensorFlow 2.0について皆さんへご紹介します。 何が良くなっていたか 1 複数のplatformで実行できる。 TensorFlow 2.0は多数のクラウド, ウェブ,ブラウザ, モバイルで動かすことができる。 2 大規模なデータに対して分散処理のAPI( Distribution Strategy API)を提供している。 3 APIが簡単になる。 使いづらい、またはあまり使われていないAPIが削除された。(例えば:tf.app、tf.flags、and tf.logging、tf.math..) APIの書き方が奇麗になった。 4 グローバル変数をなくした。 TensorFlow 1.X にたくさん使われていた

    もっと早く、ラクに–TensorFlow 2.0を紹介
    gt0824
    gt0824 2020/04/08