サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大阪万博
ameblo.jp/principia-ca
みなさまこんにちは エンジニアブログ運営委員会の@kakerukaeruです。 エンジニアブログに登場するのはかなり久しぶりで、サンタ以来になります。ご無沙汰です。 さて、サイバーエージェント公式エンジニアブログですが、2010/08/09の最初の公開から約6年間続けてきて記事総数は300件を結構前に超え、平均すると最初に宣言していた週1の更新を綺麗に守ってきた感じになります。歴史を感じる数値ですね。 これもひとえにいつもエンジニアブログを読んでくださっている皆様といつも協力してくれている社内のエンジニアのおかげです。いつもありがとうございます。 ところで、本日は(執筆当時10/13)なんと引っ越しの日だそうで、面白いものですね。必ず毎日何かの日がやってきて、目まぐるしく過ぎていきますね。何でもない日おめでとうがなかなか言えない。 ということで、ココで突然の、 サイバーエージェント公式エン
こんにちは。サイバーエージェント17卒内定者で現在アメーバブログでアルバイトをさせていただいている柳耕太です。 少し日は空いてしまいましたが先日行われたHTML5 CONFERENCE 2016のレポートを書かせて頂きました。 基調講演 基調講演前半 基調講演は前後半に別れており、前半は慶應義塾大学環境情報学部教授でW3Cサイトマネージャーでもある中村 修教授が登壇しました。 中村教授はWEBというものが世の中に現存する媒体(雑誌、カタログ、ニュース)を表現するものにとどまるのではなく、新しいデバイスやデータの扱い方等をハンドリングしてユーザーに提供しなければならない。といった今後進化する技術にWEBが対応すべきであるという話、そして最近よく聞かれる IoT, ビックデータ, 人工知能等 という技術はWEBという基盤の上に成り立っているものであり、地球を取り巻く大規模なOSと化しているWE
技術本部 Advanced Dev.Center(略してADC)の大倉です。 私達は、Make Your Goals Come True. Easier + Faster. 、をコンセプトに1600人規模の開発環境の改善や統一化を行ってます。 この記事は、CircleCI Enterprise管理者を対象としております。今後、導入を予定されている管理者の方にとって、少しでも有益な情報になればと思います。 CircleCI kim様、kevin様、いつも迅速なサポートありがとうございます。とても感謝しております。 CircleCI kim, kevin Thank you very much always for your cooperation ! なぜ、オンプレ化したか当初のEnterprise版は.com版と同じようにクラウドサービスとして展開されていましたが、2016年にCircle
こんにちは 株式会社AbemaTVのAbemaTV FRESH!でフロントエンドの開発をしているすちをと申します。 今回は9月にオランダのアムステルダムで開催されたIBC2016(International Broadcast Conference)に参加してきましたのでその報告をさせていただきます。 IBCとはもともとはヨーロッパ内の放送局向けに、放送分野を中心とした映像・音響技術の展示会として開催されはじめたイベントですが、近年ではそれに加えインターネット配信に纏わる幅広い最新テクノロジーのアピール場所となっています。今年は世界各国から1,600を超える出展がありました。 会場 毎年RAI(東京でいうビックサイト・大阪でいうインデックス)という会場で開催されています。 会場内はジャンルごとに14のセクションへと分かれていています。 中央にある3のホールでは期間中講演が行われていました。
技術本部 Advanced Dev.Center(略してADC)の村上です。 私達はMake Your Goals Come True. Easier + Faster. をコンセプトに開発環境の改善や統一化を行ってます。 タイトルのとおり、私達の組織ではソースコードのバージョン管理システムとしてGithub Enterprise(以下GHE)を導入しており、今回久しぶりにアップデートを行ったので、それについて書かせていただきます。 なお、今回の作業にはADCメンバーに加え、敏腕インフラエンジニアの@kakerukaeruさんのお力添えあってこそということを彼の上司@strskへ向けてアピールしておきます。 規模・SPEC規模感としてはユーザ数は約1000名、Organization約400、Repository約10,000になります。 - Primary on AWS EC2 Inst
サイバーエージェント公式エンジニアブログをご覧の皆さんこんばんは、技術本部サービスリライアビリティグループの須藤(@strsk)です。最近2016年で3回目の役満、大三元を和がりました。 本日は、9月6日に行われたGCP NEXT World Tour Tokyoにて発表した資料を公開します。 Google Container Engine と Kubernetes で 無理をしないコンテナ管理 from Ryosuke Suto 一緒に登壇したGoogle社のDeveloper Advocate、イアンさんからは、Kubernetesが開発された流れから動作解説、私からはAbemaTVでGKE採用に至った理由と運用してみての感想について発表させていただきました。 Kubernetesはとても便利なDockerのオーケストレーションツールで、開発も活発です。これをマネージドサービスとして
どうもこんにちは。先日に引き続き技術本部の池田 (@yukung) です。少し日が空いてしまいましたが、 SpringOne Platform 2日目のレポートをお送りします。 他にもたくさんのセッションがありましたが、今回は私が聴講したセッションを中心にお届けします。セッション一覧はこちらです。 Main Stage1日目と同様、冒頭は Main Stage という Keynotes セッションでした。 Keynotes 前半主に前半は Cloud Foundry や OSS, Community の話や、ユーザーである Bloomberg, McKesson, Manulife といった企業がいかにしてソフトウェアを中心にした企業文化に変えていったのかといった culture の話、そして Cloud Foundry と Google, Microsoft, Accenture が協力
秋葉原ラボの高野です。2016/07/29に日本心理学会第80回大会で村瀬美月氏、鈴木麗璽准教授、有田隆也教授(共に名古屋大学大学院情報科学研究科)との共同研究が発表されましたので、それについてご紹介いたします。 ソーシャルゲームでは、多くのヒトが思い思いに自由に行動した結果が詳細に記録されているため、ヒト行動の研究に有用です。これまで私たちはガールフレンド(仮)のデータを用いたヒトの協調行動について研究してきました(以下の関連発表を参照のこと)。本研究ではヒトの協調行動にコミュニケーションのタイプ(1対1、1対多、掲示板)が与える影響について知ることを目的として、そのデータを分析しました。その結果、1対1と1対多のコミュニケーションは協調行動に正の影響を与えることがわかりました。これはコミュニケーションの性質(時間的・心理的なコストなど)によってを効果が異なることを示唆します。また、社会
こんにちは。Ameba 統括本部のポイントプラットフォーム事業室でサーバーサイドエンジニアをやっている山田です。 普段はスプラトゥーンというゲームで狙撃手を務めつつ、ドットマネーという Ameba のポイントサービスの保守・開発をしています。 さて、今日も昨日に引き続き、 SpringOne Platform のレポートになります。 このイベントについて詳細を知りたい方は、昨日の記事をご覧ください。 TimeLine今日のスケジュールはこんな感じ。 朝から晩までみっちり予定が入ってます。 Main Stage9:00am から Main Stage が始まりました。 広くて薄暗い会場に重低音の効いた心地よい電子音が響き、否が応にも気持ちが高揚しました。 Pivotal の錚々たる方々が、手の込んだ Keynote で会場を湧かせます。技術的な話というよりは開発プロセスやチームビルドの話がメ
どうもこんにちは。技術本部でサーバサイドエンジニアをしている池田 (@yukung) です。約4年振りの投稿になります。こち亀の日暮さんばりの登場頻度でスミマセン。 実は私、今ラスベガスのホテルにてこのエントリを書いています。なぜそんなところに居るのかというと、ラスベガスで開催されている SpringOne Platform (https://springoneplatform.io/) というイベントに参加しているからです。 SpringOne とはご存知の方もいらっしゃるとは思いますが一応軽く説明しますと、 Java のデファクトスタンダードなフレームワークである Spring とそのエコシステムをフィーチャーしたイベントで、去年も SpringOne 2GX として開催されました。今年から SpringOne Platform としてリブランドされ、Spring だけでなく、 OSS
技術本部 秋葉原ラボの高野です。2016/06/09に開催された人工知能学会全国大会にて、河津裕貴氏、鳥海不二夫准教授(共に東京大学大学院工学系研究科)との共同研究結果が発表されましたので、それについて報告いたします。 弊社で運営しているサービス(AbemaTV、AWA、アメーバピグ、アメーバブログ、ソーシャルゲーム)には多様な使用スタイルが存在し、そのすべてを把握し評価することは困難です。 本研究では、その多様な既知・未知の使用スタイルを発見し評価することを目的としたデータマイニング手法を開発しています。本発表ではソーシャルゲームに焦点を当て、そのプレイスタイルの発見を試みました。第一に隠れマルコフモデルを用いてユーザの抽象的な状態を抽出し、それの状態遷移ネットワークを構築、第二に、その状態遷移ネットワークのコミュニティをプレイスタイルと考えて分析し、その結果と考察を報告しました。 発表
みなさんこんにちは! エンジニアブログ運営チームの板敷です。 今回は、先日社内で行われたGo勉強会について紹介したいと思います。 今回の勉強会では、サイバーエージェントグループの各社から発表がありました。 勉強会ポスター。事前予約不要! Golangの注目度は高く、開始即満員御礼でした。(若手中心に立ち見もw それでは発表内容を紹介したいと思います。 ※勉強会資料は社内情報が含まれているため全公開はできませんが、 勉強会の雰囲気だけでも感じ取っていただけると幸いです。 「Goトラップ ~中級者向けGo言語でよく引っかかる同期処理など周りの問題、分析と解決方法~」 技術本部 基盤システムG マリオさんの発表です。 ※発表資料 https://github.com/imkira/gostudy 後述しますとおり、この他の発表内容は「サービスの中でGoをどのように使っているか」か話題の中心でした
こんにちは。Amebaの基幹系インフラ担当している鳥垣です。 ユーザーのサービス用途でElasticSearch(0.19.10)を使用しているのですが、先日ElasticSearchの障害で一部のShardが読めなくなってしまいまして、それを力技で無理やり読めるように復旧させたのでその時の奮闘記を記載したいと思います。 運用情報台数:30台CPU:24コアHeap:8GBインデックス数:3総データ容量:約300GBShard数:128レプリカ数:2バージョン:0.19.10※OpenStackの仮想サーバ ホスト障害発生OpenStackのホストサーバがダウンし、ElasticSearchのノードが1台ダウン。Shardの再配置処理が走り、ダウンしたノードが持っていたShardは他ノードに分散される。この時点ではElasticSearchのクラスタステータスはグリーンだった(Headプラ
みなさんこんにちは。 技術組織戦略G & 技術内閣の板敷です。 普段はAmebaのシステム障害の火消し → 障害対策ならびにエンジニアの育成評価等をしています。 今回は、先日終了したサイバーエージェント新卒エンジニア技術研修について紹介したいと思います。 研修概要従来の研修内容を一新、内製での技術研修に挑戦 これまでの新卒技術研修は委託先講師の話を新卒全員が聞くという、いわゆる「座学中心」の研修でしたが、ここ数年の技術的進歩、組織内でのエンジニアに対する期待の変化を反映するため、内製での研修へとゼロから再設計しました。 研修のコンセプトと概要 ベースとなる研修のコンセプトは以下2点からなります。 全体のアーキテクチャを俯瞰して設計、技術選定をする自分の頭で考え、動くこれらのコンセプトを実現するために今回の研修では、2つの某有名サービスを 自分たちで設計、実装するという形をとりました。 研修
SGE(Smartphone Games & Entertainment)のグレンジ所属の塚原と袴田です。 2016/04/20に開催されたリアルタイム通信ゲーム勉強会で発表してきたので報告をします。 グレンジについてCAのゲーム事業部(SGE)の中の1つです。 ・ポコロンダンジョンズ ・イグドラシル戦記 の2つを開発・運営しています。 勉強会ではポコロンダンジョンズの共闘(多人数の協力プレイ)の仕組みについて発表しました。 ポコロンダンジョンズについて2014年夏にリリースされた「なぞるパズルRPG」です。 当初は1人プレイのみでしたが、2015年春に最大4人の協力プレイ「共闘」が実装されました。 共闘はSocket.IOを使ったリアルタイム通信システムによって動作していて、勉強会ではサーバサイド/クライアントサイドの仕組みを「そこまで見せるのか」というほど公開しています。 サーバサイド
Unreal EngineでOculus Riftを使う前に Unreal Engine4.10.4では、Oculus Runtimeのバージョンが0.8でなければVRプレビューを利用できませんでした。Oculus Runtime のインストール後はコンピュータを再起動しましょう。(※Unreal Engine4.11以降の場合は Oculus Runtimeのバージョンが0.8で動作しません。公式サイトより最新のRift Runtimeをインストールして下さい。) Unreal EngineでMMDモデルを読み込む モデルインポートには、Unreal EngineにMMDモデルをインポートする時に便利なIM4Uプラグインを利用しました。こちらは、GitHubからアクセスすることができます。ご利用のUnreal Engineのバージョンに合ったプラグインを取得して下さい。 作者:bm9様
Goðan daginn!(こんにちは!) 秋葉原ラボのY.F.です。 ゴールデンウィーク、みなさんいかがお過ごしでしたか? アイスランドまで足を伸ばしてみました。 さて、連休明けにブログを書けと言われたもので、帰りの機内でぽつぽつ執筆しているのですが… 今回は、音楽から様々な特徴や情報を取り出すツール兼ライブラリ"OpenSMILE"で色々と遊んでみることにします。 ※OpenSMILEは個人・研究(企業での基礎研究も含む)用と商用ではライセンスが異なります。今回はあくまで基礎研究として取り扱っています。 まずはOpenSMILEのダウンロードはこちら。[1] おおむね、音楽分析の流れとしては 音楽(=サンプリングされた数値の列)を入力→これを基に一部情報を取得フーリエ変換でもって周波数単位のデータに変換各種分析を行って結果を出力様々な曲の結果データから音楽の特性を判定したり、類似する音
アドテクスタジオのDynalystというチームで働いている黒崎 (@kuro_m88) です。 たまに社内で自作ドローンを飛ばしたりしています。 早いもので入社2年目になりました。つい先月まで新卒だったはずなのですが…(・・;) 今年も新卒の技術者が約60名入社し、新入社員全体の研修が終わり現在はエンジニアの技術研修が行われています。 今回はその環境構築で行ったことについて紹介しようと思います。 エンジニアの新卒研修の概要 今年の研修のゴールは「アーキテクチャをゼロから考え、実装できるようになる」というもので、研修課題は2つあります。 1つ目は現在まさに取り組んでもらっているのですが、2週間でミニブログシステムを3~4名のチームで制作してもらいます。 チームによってスキルセットが違うので、ネイティブアプリに特化するチームもいれば、バックエンドやインフラでいかにスケールしやすい構成にするか、
こんにちわ Make Your Goals Come True. Easier + Faster. をコンセプトに開発環境の改善や統一化をおこなっているanzaiです。 2013年10月よりチャットツールとして某Hを導入しておりましたが、2015年12月にSlackへ乗り換え(移行し)ました。 今回は、管理者視点で以下項目について書かせていただきました! 数あるチャットツールの中から、なぜ、Slackを選んだのか?移行時に意識したところはまったところ大規模組織で運用してみて今後の課題※以下記載した情報は移行時点のものです。Slackは日々アップデートが行われていて、新しい機能やAPIが実装され続けています。あくまでもご参考までとして、移行を計画する際には、最新情報をご確認ください! 数あるチャットツールの中から、なぜ、Slackを選んだのか?Integrationが豊富である昨今、IT界隈
Amebaのソーシャルゲーム全般のインフラを担当しつつ賃貸マンションの間取りを眺めたり、 戸境壁の工法による防音性の違いについて日夜研究しています。 いつかD値が60以上のマンションに住みたいです。
エンジニアブログ運営チームです。 今回は弊社エンジニアのイベント登壇情報をお伝えします。 現在、株式会社AbemaTVに出向し、「AbemaTV FRESH!」 の開発をしている @stormcat24 が アマゾン ウェブ サービス ジャパン株式会社の主催する AWS Summit Tokyo 2016 の Developers Conference(DevCon) に登壇いたします。 講演タイトル 「DockerだらけのFRESHな動画配信プラットフォーム」 日時: 2016/06/03 13:20 ~ 14:00 講演概要: 新たに開始した動画配信プラットフォームはMicroservices志向の元、全てのサービスをDockerを用いてAmazon ECSで運用しています。フルDockerのサービスが、サービス開発にどのような影響を及ぼし、新たな価値を生み出したのかについてご紹介しま
try! Swift: Type Erasureのユースケースを考えてみた話 | サイバーエージェント 公式エンジニアブログ こんにちは Ameba事業本部でiOSエンジニアをしている @tasanobu です。 先日(3/2~4)、弊社にて try! Swift を開催しました。 try! Swift 世界中のSwiftデベロッパーが一堂に会し、知識や技術を互いに共有し高め合うことを目的としたカンファレンスです。 各セッションは国内外の著名なエンジニアがスピーカーを務めたこともあり、深い話が多く、満足度が高かったです。 反面、一度聞いただけでは使いどころがイメージできないものがありました。 そこで、このエントリではGwendolyn Westonさんによる Keep Calm and Type Erase On にて解説されていた Type Erasure を題材とし、具体的なユースケー
技術本部メディア広告開発室のこまはらです。 A.J.A.という運用型広告システムの開発・運用を担当しています。 A.J.A.では、現在、アメーバブログ、Spotlight、by.Sといった自社メディアに、インフィード広告を中心とした広告を配信しており、配信先を順次拡大しています。 様々な種類の広告を配信していますが、すべてひっくるめると1日に10億impression前後の配信規模になっています。 今回は、A.J.A.の概要編ということで、前半で基本的なシステムの構成についてご紹介し、後半に高速なレスポンスを実現するための工夫について書かせていただきます。 基本構成A.J.A.の広告システムは、 ユーザの広告リクエストを受け、広告を返す配信サーバ数ある広告の候補から最適なものを選択するレコメンデーションAPIサーバ配信設定や実績のレポーティングを行うための運用管理画面配信実績のリアルタイム
(2019/04 追記 この記事の情報は古いです。今では、GCPのIAMでも IAM Custom Roles によってカスタマイズしたロールが作れたり、Cloud IAM Conditions が登場してリソースの制限がしやすくなったりしています。また、メディア管轄のAWS Organizationsの活用については 「これ危ない設定じゃないでしょうか」とヒアリングするための仕組み @AWS Summit Tokyo 2018 もご覧ください) メディア事業(アメーバなど)を中心にAWS/GCPを担当している柿島大貴です。前回は、Google Cloud Platform(GCP)の各プロジェクトでコストを追える環境を作る を書きました。前回の続報としては、一部には使ってもらいつつも、可視化の部分で cloudyn を検証中です。 今回は、GCPのリソースの認可の話になります。GCPの利
はじめまして@shohhei1126です! 2016年1月にリリースされたAmebaFRESH!のサーバサイドを担当しております。 ここ1、2年社内でもGo言語を使うプロジェクトが増えてきているのですが(Go Lang in Cyberagent こちらもどうぞ)AmebaFRESH!でもGo言語をメインに使っています。 今回はGo言語のテストへのアプローチについて考えたいと思います。 テストの書きやすさGoでは言語レベルでテストをサポートしている(https://golang.org/pkg/testing/#pkg-overview)のでテストを書くという敷居は他の言語より低く感じます。実際これまでのプロジェクトの中で一番テストを書いていますし、やっぱりテストがあると安心感ありますね(・∀・) Mock化の難しさテストの取っ掛かりとしての敷居は低いですがデータアクセスまわりのテストを書
2年半くらい画像システムを担当していたのですが、3月イッパイで異動することになりましたokzkです。 異動記念ということで、とりとめもなくエンジニアブログを書いてみます。長いです。よろしくお願いいたします。 画像システムのこれまでのストレージ事情最初にアメブロ(以下、単にブログ)のユーザ投稿画像関連でのストレージの歴史をアレコレをまとめてみようと思います。なお、以下swiftと書いたらOpenStack Swiftのことです。流行のプログラミング言語のことではありません。 はるか昔の状況昔は単純にWebDAVを複数台並べ、イッパイになったら更に次の世代のWebDAVを追加する、というような構成で、参照時に画像URLパスに含まれる年月ベースで適切な世代のWebDAVにルーティングしていました。 (参考:画像URLのパスの例) /user_images/20160401/00/shibuya/
こんにちは。 AWAでAndroidエンジニアをしている新家(ニイノミ)です。 最近インタラクションって言葉、よく聞きますよね。 インタラクションの役割や意味合い等はここでは割愛しますが、「インタラクションをつくる」といった場合、コードを書くエンジニアとしては「動きをつくる」という意味合いが大きいかと思います。 この「動き」について、今まではゲームやFlashを用いたスペシャルサイトなど、世界観の構築やブランディングが必要なサービスで用いられることは多かったものの、SNSなどのスマホのコミュニティ系サービスで取り入れられることはあまり多くありませんでした。 しかし、ユーザーの操作感や体験を重視するようになってきた昨今、コミュニティ系サービスの開発においても「動きをつくる」要件は増えてきました。 実際、僕が開発に携わっているAWAもユーザー体験を重視しており、その一つとしてインタラクションに
AirPlayはスマートフォンが本体であり、AppleTVを外部ディスプレイとして利用するイメージです。 再生・一時停止等のコントロールは全てスマートフォン側で行います。 一方、Google Castでは再生制御を行うのはあくまでReceiver側であり、SenderはReceiverに対して命令を行うコントローラーのような立場に過ぎません。 更に、実装方法によっては複数のSenderから一つのReceiverに接続するような1:nの接続(!)も可能になります。 この辺りをはじめに理解しておくと、この先も躓きにくいと思います。 注意点 実際に作るときはガイドラインを意識しましょう User Experience with Google Castのページに、Google Castに対応させる際のガイドラインが記載されています。 この記事ではコード量を必要最低限に抑えるためにガイドラインに沿っ
はじめに AWAでサーバサイドエンジニアをやっている山下といいます。初めてエンジニアブログを書かせていただきます。よろしくお願いします。 簡単に自己紹介をさせていただくと、2011年にSIerからサイバーエージェントに中途入社し、いくつかのコミュニティ系サービスの立ち上げ・運用、インフィード広告配信APIの作成などを経て、2015年4月からAWAチームに参加しました。 今回は、(今さら?な) DevOpsについてです。といってもスムーズな連携をするには といった話ではなく、現在のチームに参加してからというもの、「エンジニア間の役割が変わってきていて、DevOpsって現状にあってないんじゃないか」と感じており、それについてご紹介させていただきます。 AWAとは 定額制音楽配信サービスです。 スマートフォン、PCでアプリを提供しており、他のデバイスにも順次対応をすすめています。2015年のベス
次のページ
このページを最初にブックマークしてみませんか?
『サイバーエージェント 公式エンジニアブログ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く