サーバーコストを3分の1に。「諦めない」姿勢で STORES の技術基盤を支える
テクノロジー部門の技術基盤グループとして社内共通、あるいはプロダクトそれぞれの課題解決を担うシム・サンヨンさん。韓国から日本に渡り、およそ9年間のキャリアの中で社内のエンジニアをサポートする現在の仕事にやりがいを見出しました。大幅なコスト削減などの成果の裏には、シムさんの「諦めない」という熱い姿勢が。これまでのキャリアやお仕事についてお話を聞きました。
韓国のスタートアップからRubyを追って日本へ
──これまでのキャリアを教えてください。
出身である韓国のスタートアップが最初のキャリアです。エンジニアとして、その会社を含めて3社を経て STORES に入社しました。もともとRubyでエンジニアリングを始めたのですが、韓国ではあまりRubyが盛んではなくて。2社目からは、Rubyが盛んな日本に渡ってキャリアを積んできました。
前職にあたる3社目の同僚が STORES に転職し、そのリファラルで入社して今に至ります。
──月並みな質問ですが、日本語がとてもお上手ですよね。どうやって習得されたのでしょう。
よく聞かれるんですよ。実は、日本語はちゃんと勉強したことがありません。好きなアニメを見ているうちに自然に覚えてしまいました。日本の声優さんがとても優秀なので、セリフなどを聞き取りやすいんです。また、韓国で漢字を勉強していたことも日本語の習得に役立ちました。
リファラルで紹介された STORES 像は「やることがいっぱい」
──前職の同僚の方を通したリファラル入社をされたとのことですが、 STORES のことをどんな風に紹介されたのでしょうか。
同じチームではたらいていたエンジニアから「やることがいっぱいあります」と紹介してもらいました。詳しく話を聞いてみると「なるほど、それは大変ですね」という感じで(笑)。けれど、初期のスタートアップではたらいた経験があったので、やることが多いというのは、伸び代があるとも捉えられました。
──なぜ前向きに捉えられたのでしょうか。
ほとんどの場合、やること課題が多いのは企業が順調に成長している証拠でもあるので、決して嬉しいことではないけれど、一概に悪いことだとは言えないな、と。
その観点からだと STORES は人の手が足りてないゆえの課題が多いと感じました。私がよく使う言葉の「やるだけ」みたいな状況ですね。やるだけではあるけど量が多くて手が出しづらい状況。私はそういう時「やるだけなら、やればいい」と考えます。
確かに難しい課題を紐解き解決した時のような達成感はないのでこういうタスクを苦手としてる人もいますが、私はコツコツ作業を積み重ねて仕事を終わらせるのも苦手ではないんです。たとえば、インフラや、コードの“お掃除系のタスク”。少しずつコードを綺麗にしたり、少しずつインフラコストを減らす作業をするのはあまり苦になりません。
──それで、 STORES のこれからいろいろなことを整えていく状態も前向きに受け入れられたんですね。入社の決め手になったことや、条件はありましたか?
プロダクトの利用者が一定数いることです。プロダクトの大きさによりチーム構成も変わるし、各種課題の温度感も変わります。それこそ私の興味領域である、インフラや開発環境周りのタスクへのアプローチも異なります。制約条件になりうるくらいのトラフィックがあるプロダクトならではの課題があるところではたらきたいという思いがありました。
また、もうひとつの大切な条件は心理的安全性です。特に、失敗ができる環境であることを重視しました。STORES はその両方を満たしていて、とても魅力的だったので転職を決めました。
サーバーコスト3分の1を削減。
大幅コスト削減の舞台裏
──現在のお仕事について教えてください。
現在の仕事は、大きく分けてふたつあります。ひとつは、社内共通の技術基盤として、社内の技術的なこまりごとを解決するというもの。最近だと静的ページを社内限定で公開するための仕組みなどを作りました。いくつかのチームが同じものを独自に作ろうとしていて、車輪の再発明を毎度する必要はないなと感じたからです。このような社内共通の課題をSlackなどから観測したり相談されたりして一緒に考えたり必要であれば自ら作ったりしています。
もうひとつは、それぞれのプロダクトに紐づく個別の課題の解決です。こちらはいわゆる”通りすがり”で手伝うこともありますが、マネジャーの方から持ち込まれることが多いです。最近では、サーバー環境を再構築することで大幅なコストダウンを実現しました。
──このコストダウンは、かなりのインパクトがあったと伺いました。どのようにしてコストを削ることに成功したのでしょうか。
去年あたりから、上司とサーバー環境の再構築、いわゆるコンテナ化の話をしていてこのタイミングでコストを下げられるのではないかという話をしていました。例えば、アクセスパターンからすると日中が利用が多いのに一番負荷が高い時間に合わせて24時間同じ数のサーバーを動かし続けているなどなどがわかりました。そこで、サービスの利用率に合わせていろんな設定を見直して無駄を最小化するようにしました。
また、サーバーのコストを可視化できるツールを使って、目立つ数字を追いました。それが必要でなければ削る、ということを地道に繰り返してコストカットを積み上げました。結果、大幅なコストカットに辿り着くことができ、とても満足しています。
──いわゆる、さきほどお話しいただいた“お掃除系タスク”ですね。
そうですね。コツコツ数字を積み重ねることで、大きな結果を出すことができました。これが小規模な数字の削減だったらここまでの達成感はなかったかもしれませんが、今回はかなり大きな金額を削減できたのでとてもやりがいを感じることができました。カットした金額は、全体のサーバーコストの3分の1にも及ぶんですよ。
議論より先にプルリクエストを投げる。
「論より動くもの」
──こうしたお仕事の仕方が、STORES のテックマニフェストにぴったりだというお声も聞かれます。
ありがとうございます。テックマニフェストは私にとって、「そうだね」、というものが多いです。毎日それを意識してはたらくと言うよりは、タスクが終わって振り返りのときに、「これができなければ反省に値する」ようなもの。改めて言われずとも、普段から意識していることが言葉になっているような感覚です。
──中でも、特に共感するものはありますか?
「論より動くもの」です。論理的に設計を考えたり、方針を決めたりするのは簡単ですが、実際に動くものを作ると考慮できていないことがよく見つかります。私は、自ら設計したものをあまり信用しておらず、作ってみてはじめて確信を得ます。
設計やコンセプトをああしよう、こうしようと議論している間に実装してしまったほうが効率が良い場合も多々ありますね。そういうときはプルリクエストを投げてそこから議論を進めることもあります。
──お話を聞いていると、積み上げて成果を出すことも、すぐに実装する瞬発力もあるのだなと感じます。成果を出す秘訣は何でしょうか。
諦めないことです。まず、結果に辿り着くまでの見通しがある仕事は、諦めずにやれば成果を出すことができます。先ほどの「論より動くもの」も、まずは作ってみることで成果に早く辿り着こうとするアプローチです。また、自力では結果まで辿り着けない、あるいは見通しを立てられない仕事の場合は、落とし所を探し出すのをゴールにし、そこまで諦めずにやってみる。これまで私が成果を出してきたのは、すべて「頑張ればなんとかなる」という気持ちに基づいたものです。
──最後に、これからの展望を教えてください。どんな仕事をしていきたいですか。
仕事を始めて9年ほどが経ち、ユーザーに直接向き合う仕事よりも、社内で開発している人をサポートする方が向いているなと感じています。身近にいる人に使ってもらうことで生の声を聞くこともできますし、誰かの仕事が便利になると、嬉しさを感じます。そんな私に社内の技術基盤を支える今の仕事はぴったりです。これからも、そのサポートの幅を広げていきたいと思います。
そのためには、まだまだ知らないことが多いと感じています。例えば、システム設計やプロトコル、ミドルウェア周りの知識です。OSを自作したり、ウェブサーバーを立てたりしながら生きた知識を身につけていきたいと思います。
(写真・文:出川 光)
\ STORES では一緒にはたらく仲間を募集中です!/