第4話 たんたん、エンジニアに会う
大切な前置き
このお話はフィクションです。実在の人物や団体、事件などとは一切関係ありません。
たんたん、新企画の担当になる
SQLを学んでデータ分析の闇を知ったたんたんであったが、その後は徐々にグロースハック作業にも慣れ、仕事にも余裕が出てきていた。
そんな中、たんたんはよりーさんから新しい作業をお願いされた。
「実は今度新しい機能がリリースされるんだけれど、その機能のグロースハックをやってほしいんだ。石神さんっていうプランナーの人が中心でやってるプロジェクトだね。」
その名前を聞いて、たんたんは一瞬身構えた。
石神誠。通称がみーさん。高学歴な切れ者で、自分にも他人にも厳しい人物と社内では噂されている。たんたんはそういった人物が苦手というわけではないが、それでも一緒にお仕事をするとなると緊張してしまう。
「機能の詳しい資料ももらってるからまずそれを読んでね。次に、最初の時点で把握しておきたいKPIのリストはもらってるから、まずはダッシュボードを作る作業をお願いできるかな。そこから先はリリースされてから考えよう。」
「わかりました!!」
たんたん、行き詰まる
新機能の資料を読んだたんたんは、さっそくダッシュボードの作成に取り掛かった。ABテストを始めとしてこれまでの業務でダッシュボードをどう作ればいいかは理解していた。
それに加えて先日、深淵を垣間見るほどにSQLを書いたおかげで多少のSQLならかけるようになっていたのだ。難しいことはなにもない、はずだった。
(データはどのテーブルにあるんだろう。。。)
これまでたんたんは、ABテストに必要なデータがあるテーブルをよりーさんに聞いて、そのデータを参照するSQLしか書いていなかった。今回は新機能であり、データがどこに入っているかはよりーさんも把握していないだろう。
よりーさんに確認すると、それはエンジニアに聞いてみてくれという返事だった。担当エンジニアは資料に載っていたはずだと思って資料を見返すと、エンジニアの欄に見知った名前があった。
寺沢弓彦。社内ではハンドル名から「てくてく」とか「てくてくさん」と呼ばれている彼は、料理人兼エンジニアという異色の経歴を持っている。現在はエンジニア業が主となっているが、社内にあるキッチンで社員に料理を振るまっている姿がよく目撃されている。
てくてくさんは栄養士時代のたんたんの友人の1人であった。たんたんにとってエンジニアと聞いて真っ先に思い浮かべる人物である。
時間はちょうどお昼前、たんたんは、彼に会うべくキッチンに向かった。
キッチンにつくと、果たして彼がいた。
「お、たんたんじゃん。久しぶり。」
「てくてくさん。久しぶり。よかった。やっぱりここにいた。ちょっと相談したいことがあるの。」
たんたんは彼が参加しているプロジェクトのグロースハックを任されたことや、ダッシュボードを作るためにデータの場所が知りたいことなどを説明した。
「なるほど。それだとサーバーエンジニアに聞かないとわかんないね。っていっても多分たんたんはサーバーエンジニアっていうのがわからないよね。」
「わからない!!」
「相変わらず素直でよろしい。ちょうど鍋を煮込み始めて暇なところだし、説明するよ」
完全図解、これがエンジニアの分類だ!
「エンジニアについて知るにはまずサービスのサーバーの構成とかをざっくり知る必要があるんだ。その構成を作るのがエンジニアの仕事だからね。」
「ふむふむ。」
「で、FUみたいなスマートフォンアプリの一番簡単なサービスの構成はこんな感じになる。」
「ユーザー側からの流れで説明するとわかりやすいんだけど、ユーザーがスマートフォンからアプリを使うと、アプリがデータを取得するためにAPIっていうのにアクセスする。そのAPIはユーザーからのアクセスを受けてデータベースにデータを取りに行ってデータをアプリに返すから、その結果をアプリがいい感じに表示する。データが書き換わるような操作をした場合にはこのデータを取りに行くの部分が更新しにいく処理に変わるね。」
「アプリがDBにデータを直接書いたりしてるのかと思ってたけど、間にAPIっていうのがあるのね。」
「DBはデータベースっていうくらいだから、データが入ってるだけなんだ。そこにどうやってデータを書き込むかとかっていう処理をするための判断は別のところでやるしかなくて、それをやるのがAPIなんだね。」
「なるほど。でもそれってアプリの中で計算とかすればいいんじゃないの?」
「それには3つ問題があるんだ。1つはアプリの挙動がものすごく重くなってしまうこと。2つ目はアプリを改造されて間違った値が送られてきたときに不正をされてしまうこと。3つ目はこれもアプリを改造されたときに、DBにある他のデータも見られてしまうことだ。」
「そっか。アプリはユーザーの手元にあるから、悪い人は改造できちゃうんだね。それでSQLを書き換えちゃえばいろいろできちゃうのね。」
「お、SQLは覚えたんだね。いいね。つまりそういうことだね。」
「ふっふっふ。私も日々成長してるの。」
「さすがだね。じゃあ続き行こうか。で、エンジニアの種類についてだけど、このスマートフォンアプリを作るだけで3種類の仕事があるんだ。」
「1つはスマートフォンで動いているアプリを作ること。2つ目はAPIサーバーでの処理をするためのプログラムを書くこと。3つ目はAPIサーバーとDBサーバーを用意して管理すること。」
「わかりやすい!」
「この3つがそれぞれ要求される能力が違うから、それがエンジニアの中での職種ということになるね。
1つ目のスマートフォンアプリを作る人がアプリエンジニア。2つ目のAPIサーバーでの処理のプログラムを書く人がサーバーエンジニア。サーバー全体を用意して管理するのがインフラエンジニアって呼ばれる。インフラエンジニアは最近はSRE(Site Reliability Engineering)って呼ばれたりもするね。」
「実際にはこれに加えて、不正や攻撃からサーバーを守るセキュリティエンジニアとか、アプリじゃなくてWEBサイトを作った場合にWebサーバーで動くアプリケーションの部分を作るWebフロントエンジニアとかいろいろいるね。とりあえず最初の時点で覚えておけばいいのはこのあたりかな。」
「わかった、ような気がする。ということは、欲しいデータがどこにあるかはインフラエンジニアに聞けばいいってこと?」
「いや、どういうデータ構造にするか決めてそこの取得や更新をするのはAPIサーバーだから、サーバーエンジニアに聞くのが正解だね。」
「わかってなかった!!」
「まあ、そのうち覚えるよ。グロースハックをする人からすると、エンジニアにもいろいろな種類がいて、DBに入っているデータについて聞くならサーバーエンジニアに聞けばいいっていうのが分かればいいんじゃないかな。」
たんたん、サーバーエンジニアに会う
「説明はこんなところでいいかな?」
「うん。ありがとう。それじゃあ、サーバーエンジニアっていう人に聞けばいいのね?」
「そうなんだけど、多分そろそろ。」
その時、キッチンに1人の人物がはいってきた。
「あ、翔くん。ちょうどよかった。たんたん、彼が新機能のサーバーエンジニアだよ」
藤田翔。社内では親しみを込めて「翔くん」とか「翔さん」とか呼ばれる彼はこの春から入社したピカピカの新卒の社員である。新卒ながらその技術力は確かなもので、今回の新企画でもサーバーサイドを一手に担っているらしい。
実は今日は体調がよろしくないということで、てくてくさんが消化に良い料理を振る舞うということになっていたようだ。
(体調の悪い翔くんにお粥をつくってあげるてくてくさんは、まるで腸内環境を整えて腸の働きを良くするビフィズス菌ね。でも、)
「体調が悪いなら無理しちゃだめです!!!」
体調を崩している人を見ると、相変わらず栄養士の血が騒いでしまう。それに対し、翔くんは少し咳き込みながら返事をした。
「これは仕方がないんです。実はとある事情で今年の有給を全て使い切ってしまって。多少の風邪くらいだと休みにくくて。」
「あれ本当に大変だったよね。特別手当が出てもいいくらい。」
「え、なにかあったんですか?」
新卒でこの時期に有給を使い切るとは、よほどのことがあったに違いない。てくてくさんがその事情を説明しようとするのを、翔さんが慌てて遮った。
「お願いだから蒸し返さないでください。まだ完全に立ち直ってないんですから。それはそうと、僕になにか用でしょうか。」
何があったのか非常に気になりながらも、たんたんは彼に事情を説明した。
「なるほど。では昼食を食べたらSlackでテーブル構造の詳細をお送りします。えっと、」
「たんたんです。Slackだとtantanっていう名前です。」
「わかりました。ではそちらにお送りします。」
たんたんは二人にお礼を言って、キッチンを後にした。
たんたん、ダッシュボードを作る
席に戻ってしばらくすると、翔くんからテーブル構造の詳細が届いた。
かなり複雑なことになっているテーブル構造をなんとか読み解き、よくわからないところは翔くんに質問したり、よりーさんにクエリのレビューをお願いしたりしながら、たんたんがダッシュボードを完成させたのは2日後のことだった。
「新機能。たのしみだなー。」
目の前には、まだほとんど何もデータを表示していないダッシュボード。
(ここに少しずつデータがたまっていくんだ。プロジェクトのみんなと、会社のみんなの、期待を乗せて。)
そこに表示されるのがうれしい結果であることを祈り、たんたんは別の作業に移った。
次回予告
やめて!切れ者プランナーに塩のような対応をされたら、グロースハッカーになりたてのたんたんの精神まで燃え尽きちゃう!
お願い、死なないでたんたん!あなたが今ここで倒れたら、新機能のグロースハックはどうなっちゃうの?新機能はまだリリースしたばかり、ここで立ち直れば、KPIを伸ばせるんだから!
次回「たんたん死す!」。デュエルスタンバイ!