adtech studio

エンジニアの組織に必要なエージェンシーチームとは?

By takao

BI 組織文化 開発

こんにちは!
株式会社サイバーエージェント
アドテクスタジオ
アドテク本部
技術戦略室
Central Infrastructure Agency
エージェンシーチームの鷹雄です。

今回はアドテクスタジオのIT総務的なエージェンシーチームの役割について紹介しようと思います!

 

業務内容ですが、主に下記のような作業を行っています。

・検証端末の貸し出し管理業務
・購買業務
・コスト情報の管理・収集・可視化
・資産管理業務
・アカウント・ライセンス管理業務

基本的には総務的な立ち位置な役割なのですが、
エンジニアの人数が200人を超える組織では総務的なポジションにも技術力が求められます

まずはそれぞれの業務についてご紹介しましょう!

・検証端末の貸し出し管理業務

検証端末とは、実際に広告が正しく表示されているかチェックするための実機を用意しています。
サイバーエージェントグループでは、STF(https://openstf.io/)というスマートフォンをリモートで検証できるシステムを社内向けに公開しています。利用できる端末の数も多いですし、何しろリモートで表示チェックが行えるのはとても便利です。

ただ、最近では動画広告や位置情報広告などリモートで検証するのが難しい要件が増えてきており、物理検証端末も数多く必要になります。

アドテクスタジオでは実際の自社の広告配信データから、シェアが高い携帯端末を抽出して定期的に購入しています。

少し前まではサンプリングしたログからプログラムを実行してトレンドをチェックしていたのですが、最近ではBigQueryによるデータ分析でシェアを出すようにしています。

大量のログデータから今どんな機種がユーザーに使われているかなどが一瞬で出てくるので便利ですね。

検証端末は今では古い端末から、新しい端末まで東京オフィスだけでも250台程度保持しており、沖縄のデバックチームでも相当な台数を保持しています。

この規模だと少し少ないように見えるかもしれませんが、「検証端末管理者の会」というサイバーエージェントグループの検証端末管理者が入っているチャットグループで端末の在庫状況を共有し、貸し借りを行ったりもしています。

全体的に見るとiOS系のシェアが多いため、iPhoneの新機種が発売されるとすぐに纏まった台数を購入し、バージョンを固定化したりして同じ端末でも幾つかのバージョンのバリエーションを保持しています。

これによって、何か問題が発生したときに原因の切り分けなどがしやすくなります。

今回のiPhoneXは予約合戦が激しく、1台しか予約できなかったため
頑張って担当者が行列に並んで確保しました。。。

・購買業務

購買ではSSLやドメインなどの購入、各種ライセンスの包括契約など購買に関わる業務です。

SSLはサービスの種類や重要度、セキュリティなどの要件によってDV,OV,EVを選んで購入しています。

一般的な証明書ではDV証明書にComodo Essential SSL (Wildcard)を3年($200くらい)で購入するようにしています。

広告系のサービスだと大体3年以上は続くのと、証明書の切り替えにはそこそこの人的コストと、更新ミスによるサービス停止のリスクが掛かるため、出来るだけ長く取得しています。

OVやEVではcybertrustの証明書を使うことが多いですね。

 

ドメインは最近ではRoute 53で購入することにしています。

更新が自動なのと、そこそこ安いのと、安心して任せられるのが大きいですね。

また、利用しているAWSアカウントに合算されて請求されるのも便利です。

そのままRoute53をすぐ使えるのも便利ですね。

 

ライセンスの購入などはグループ全体でボリュームライセンス契約を行い、費用を削減したりしています。

例えばTableauやDatadogなど、サイバーエージェントグループ全体でまとまった数をコミットして契約をすることにより、良い物を割安で使えています。

サイバーエージェントでは全社的に何かのツールをトップダウンで契約することはありません。

これは各部署には高い裁量が移譲されているため、何かしらのツールを強制して使わせることが出来ないためです。

このためボリュームディスカウント契約の交渉などがとてつもなく難しい環境なのですが、勉強会を開催したり社内報を書いたりすることで認知を上げて良いツールを広めたりして、広がったタイミングで契約を行ってます。

Tableau,Datadog以外にも各種包括契約を行い、費用の削減と合わせて利便性の高いツールの利用を拡大しています。

 

・コスト情報管理・収集・可視化

クラウドを使っているとコストの管理が難しいと考えている会社は多いのでは無いでしょうか。理由として、見込みが立てづらかったり、請求が月初に分からなかったり。オンプレを使っていても各種資産の減価償却やネットワーク費用やラック費用の利用実態に応じた費用計算などコスト計算や、翌月の費用予測などはとても大変です。

今まではExcel、Google Spreadsheetを利用して費用計算をしていたのですが、最近では一部BIツールのTableauを利用し始めています。

APIで自動的にデータを収集し、デイリーで各クラウドの費用を集約し、各事業責任者にTableau Serverで共有しています。

 

・資産管理業務

サーバーなどの資産チェックはある程度の規模になると棚卸しも一苦労です。
現在は各サーバーにQRコードシールを貼り付けており、棚卸しの速度も以前に比べると格段に向上しました。

 

・アカウント・ライセンス管理業務

意外に大変なのがアカウント管理です。

入社や移動なども多いですし、サービスが次々に立ち上がったりする環境では一般的にアカウントの管理が疎かになりやすいです。

そこで、現在では出来るだけSingle Sign Onを利用するようにシフトしています。
サイバーエージェントではSingle Sign OnにPing Identity(https://www.pingidentity.com/en.html)を導入しており、各種システムとのつなぎ込みが容易です。

ですが、残念ながらSSOに対応していないサービスも存在します。

その場合はAPI経由でユーザー一覧を取得し、社内データベースと連携することで移動による権限の付与、剥奪などを自動化しています。

 

アカウントと同様にライセンスの管理も重要です。

基本的にユーザー数がライセンス数よりも多くなることは無いのですが、逆にライセンス数が過剰に余ってしまうケースが存在します。

これは人員の移動や、ライセンスを使わなくなった時などに起こりえます。

このため、ライセンスの棚卸しは頻繁に行う必要があります。

現在では殆どが自動化され、一定期間利用しないライセンスは回収しています。

これも社内データベースと連携することによりかなり精度が高くなりました。

ライセンスの無駄を減らす取り組みでは他にもJetbrainsのライセンスサーバーの導入なども行っています。
https://www.jetbrains.com/help/license_server/getting_started.html
JetbrainsはIntelliJやRubyMine、DataGripなど高度なIDEを提供している会社で、エンジニアであれば誰しもが一度は触ったことがあるのでは無いでしょうか。

商用ライセンスがそこそこ高く(All Products Packが1年で$649ドル)、導入に躊躇してしまう方も多いかと思うのですが、Jetbrains社ではライセンスサーバーを提供しており、購入するのは同時起動数のライセンスだけで済むようになっています。

ライセンスサーバーを導入してから無駄なライセンスを購入しなくて良くなったのと、同時起動数だけで済むため、計算したところ年間100万以上のコスト削減に繋がっていました。

 

このような感じで、IT総務を担当しているエージェンシーチームでは技術で時間・費用コストを抑えると共に、エンジニアの開発を支える動きをしています。

まだまだ紹介出来ていない取り組みもいっぱいありますがまたの機会にでも!