はじめに
こんにちは、今年の4月に新卒として入社しグノシー事業部に配属されました齊藤です。
自分は現在グノシー事業部でグノシー(アプリ)の分析を専任しています。データ分析部の方はニュースパスやオトクル等複数のアプリを横断的に分析、ロジック開発を担当しています。
今回は各アプリの分析担当がどんなことをやっているのか、2ヶ月間どのような事を学んだかを新卒エンジニアの立場から紹介していこうと思います。もう働き始めてから2ヶ月経ったのか・・・
分析
分析とだけ書くとやたら広い意味になりますが、主にプロモ指標などを作成、集計し部署の人が見やすい形に整えたり、キャンペーンや特集タブに関する集計、UI変更時のA/Bテスト*1などを行っています。RedashでSQLクエリを書いて可視化したり、以下の記事のようにGASでSlackへの通知を作ったりすることもあります。
分析業務において特に重要だと感じたのは「『施策考えるためにとりあえず数字見る』をやめる」ことです。ある機能を改善する際になんとなくの指標(クリック数など)を見て考えよう、となることがありがちですが、出来れば避けたいです。
・どういう目標を達成したいのか
・その目標はどういう要素に分解できるのか
・各要素についてどこがどれくらい低い場合はどういう施策を行うか
までを事前に決めてから数字を出した方が効果的な施策を打つことができ、結果的に時間の節約にもなります(数字を出すためのクエリを書くのにも時間がかかるので・・・)。 要はKGI*2とKPI*3と施策をちゃんと前もって考えようねという話なのですが、強く意識しないとできないことでもあると感じました。実際働く前の自分だったらこの文を読んでも「そんなの当たり前やん・・・」程度に捉えて読み流していただろうと思います。
とはいえ、
・それ何のために見るんですか?
・それ見る必要あります?
・これ低い時何するんですか?
をオブラートに包まず言いまくると当然角が立つのでそこはコミュニケーション能力の発揮しどころですね。円滑なプロジェクト運営を目指していきたいです。
施策の改善という点ではビジネス系の方々と関わることが入社前の想像より多いです。逆に言えば選考時と入社前にインターンで業務体験をしていたのでそれくらいしか入社後のギャップ的なものはありませんでした。
A/Bテスト
UIやロジックを改善した際にA/Bテストを行い効果を見ており、この集計を担当することがあります。実装する機能によって集計項目を考えて追加することもあります(上の話と同じ)。集計した数字を見て高い低いを気にするだけでなく、必要なサンプルサイズが集まっているか、そもそもの群に差はなかったかなど意外と注意しないといけないことが多いです。
ETL
Gunosyではアプリから様々なログを収集し、サービス改善に役立てています。 分析時に必要なデータが異なるデータソース上にあったり、中間テーブルを作成しないと実行時間やクエリの複雑化的に不便となる場合にETL*4 を行いデータの移行、変形をしています。現在はairflow、digdag、embulkの3つを必要に応じて使い分けてETLを行っています。ミーティング中も〇〇の集計をするのにこういう中間テーブル必要だからETLしないとな・・・ということを考えていたりします。
おわりに
数字の変動の説明を完璧にするためにグノシー事業全体の動きを把握するのと、プロジェクトの分析業務を
・KGI/KPIの設定
・施策の実行
・集計
・改善
までを一人で担当できるようになるのが現在の目標です。そもそも集計に必要な統計の知識も一部怪しいところがまだあるのでそこの復習も必要ですね(
学ぶべきことは沢山あるため、一つずつ身につけていきたいと思います。
前回前々回はデータ分析部の先輩と同期が記事を書いておりますので、そちらもよろしければご覧ください。:
Gunosyでは新卒エンジニアの採用を通年で行っています。
*1:UI変更などを行う際にユーザーから「操作を行う群」と「操作を行わない群」を抽出し数値の変動を見る手法。詳しくはこちらをご覧ください。
*2:KGI…Key Goal Indicator。最終目標を定量的に評価するための指標。
*3:KPI…Key Performance Indicator。KGIを達成するためのプロセスを評価するための指標。
*4:Extract, Transform, Loadの頭文字をとったもの。データソースから抽出、変換してOLAPデータベースへロードする一連の流れ。詳しくはこちらをご覧ください。 tech.gunosy.io