連載「Technology Company Internals」では、テックカンパニーの内側で働くエンジニアに、技術に精通したエキスパートが対面で話を聞き、テックカンパニーとは何か?を探るだけでなく、テックカンパニーを目指す企業の指針となることを目指します。
コロナ禍は飲食業界のDXを促進する
白石: 本日はよろしくお願いします。自己紹介からお願いします。
鄧: 鄧 皓亢(デン ハオカン)と申します。CTOを務めています。普段の仕事は、一言でいうと「なんでも屋」ですね。アーキテクト的な役割を担うこともあれば、お客様に価値を少しでも早くお届けするためにソリューションをチームに提案したり、場合によっては自分でもコードを書いたりします。
北川: 北川 真理(キタガワ マコト)です。フロントエンドエンジニアです。コロナ禍における新しいプロダクトにおいては、マネージャーも担当しています。
白石: トレタさんは、飲食店向けの予約管理サービスを提供しているわけですが、コロナ禍において大きな逆風が吹いているのは間違いないかと思います。そんな中、どう戦おうとされているんですか?
鄧: 確かに逆風は大きいのですが、私たちはある意味チャンスとも捉えています 。というのは、飲食業界はまだまだ手書きの文化も残っていたり、デジタル化の余地が大きく残されている業界です。そこにこのコロナ禍がやってきたわけで、飲食業界全体が大きくデジタル化するきっかけになるとも考えられます。
白石: 確かに、コロナ禍をきっかけにDXが大きく進みそうですね。先ほど北川さんがおっしゃってた「新しいプロダクト」というのも、その一環なんでしょうか。
トレタの新しい3プロダクト
北川: はい、そのとおりです。大きく分けると、今 3つの新規プロダクトが走っている 状態です。
白石: 3つも!
鄧: 1つは セルフオーダーのシステム です。私たちはトレタO/X(Order Experience: 注文体験)と呼んでいますが、飲食店におけるお客様の「注文」という体験を刷新しようとするものです。
白石: セルフオーダーのシステムと言うと、自席から注文を行えるタブレットを置いているお店などのことでしょうか。
鄧: そうです。それに対して私たちは、 自身のスマホで注文から会計まで行える ようなサービスを提供しています。
白石: 自分のスマホで注文するというのは、ぼくはこれまで体験したことがないです。新しいな。
鄧: 更に、私たちが重視しているのはカスタマイズ性です。 飲食店というのは世界観を重視している場合が多い ので、オープンAPIを前提とした、フルカスタマイズ可能なサービスを提供しようとしています。
白石: 確かに注文する画面にも、飲食店のこだわりが反映されていてほしいですね。じゃあ、2つめのサービスはなんですか?
鄧: 2つめは、 席の指定まで可能にするような、新しい予約サービス です。これまではお店を予約しても、席についてはお店側の都合で決めてしまうのが普通でした。ですが、コロナで席に余裕がある今は、席もお客様が指定できる方が理にかなっています。
白石: なるほど、新しい。
鄧: 新幹線とか飛行機の予約みたいなUIで、席を予約できたら面白いかな、と。席料という形で、席によって異なる料金にできるというのも可能性があると思っています。
白石: 面白いですね〜。これまでの2つとも飲食店向けサービスですが、最後の一つもそうですか?
北川: 最後の一つは…秘密です(笑)近いうちに発表できると思うので、楽しみにしていてください。
鄧: うちは、 「食の未来を、アップデートする」というビジョンがある ので、新しく作るサービスもやはり飲食店向けになります。とことん飲食業界に特化していることこそがうちの強みでもありますから。
Ruby on Rails以外の選択肢
白石: メインのプロダクトを改善しつつ、新規サービスを同時に3つ立ち上げるのって大変だったんじゃないですか?
北川: そうなんです。チームを分ける必要がありますし、プロダクトの基盤となるシステム自体も分離していかなくてはなりません。
白石: チームごとに同じ技術スタックを使用しているんですか?
鄧: いや、そこには変化が出てきています。これまでうちのサービスは Ruby on Railsをベースとして開発されていましたが、Go言語やClojureを使うケースが増えてきています ね。
白石: なるほど、チームごとに異なる技術を採用し始めていると。でも、なんでわざわざRubyからGoに?
北川: 色々理由はありますが、やはりスピード感でしょうか。新規プロダクトは少しでも早くリリースして、どんどん変化させていったほうがいいですから。
白石: でも、 一昔前だと、「スピード感を持って開発する」と言えばRuby on Railsでしたよね…時代が変わってきていますね。
北川: そうですね。web APIベースのモダンなサービス開発を行おうと思うと、 Ruby on Railsだと色々と余計な手続きも多い のです。ぼくらはクライアントをAngularとTypeScriptで作っていますので、サーバーサイドでもTypeScriptを使ったほうが無駄がないだろうなんて話もありますし、Firebaseなんかを使えばそもそもサーバーサイドの開発が不要になります。
白石: なるほど。あとRubyと言えば、先日 Ruby 3 が出ましたね。型定義が可能になったとか。
北川: 型定義できる言語を使いたい、というニーズはやはりありますね。Ruby 3にもチャレンジしてみようという話は出ていますが、Railsのバージョンアップはいつも割と大掛かりな作業になるので、まだ手を付けていない状態です。 最近Go言語を採用しているというのは、型定義できる言語であるという点も正直大きい です。
Datomic…変更履歴を自動保存するClojure製データベース
白石: 他には例えば、データベースはいかがでしょう?チームやプロダクトごとに異なるものを使っていますか?
鄧: そうですね、以前はAmazon AuroraやDynamoを使っていましたが、最近ではテスト的に Datomicを使ってみています 。
白石: Datomicって初めて聞きました。
鄧: Datomicの大きな特徴はClojure言語を使用することと、 データの変更履歴が自動的に残される ことですね。なんでこれを試しているかというと、最近弊社で扱うデータに変化が出てきたからです。
SoE(System of Engagement: ユーザーとのエンゲージメントを重視するシステム)や SoR (System of Record: データの正確な記録を重視するシステム)という言葉に象徴されるように、ユーザー体験やユーザーニーズを中心として柔軟に組み上げるシステムと、扱うデータをきちんと整理して堅く作り上げるシステムでは、必要とされるデータベースの要件も異なります。
弊社では最近、データの正確性を重視するSoR的な観点を持った基盤も必要になってきていて、そこでDatomicを実験してみているという流れです。
白石: なるほど…業界的には逆風が吹いている中、いろんな技術にトライしようとされていること自体、なかなかチャレンジングですね。技術面で保守的になってしまっても不思議はないと思いますが。
鄧: うちの会社にはもともと、行動規範に「リスペクトオール」っていう価値観を盛り込んでいるんです。お互いの違いを尊重しましょう、という意味ですね。なのでその価値観を技術にも当てはめて、「技術的な多様性も尊重しよう」という形に持っていっています。
白石: なるほど、 開発チーム内に技術的な変化をもたらすにあたっても、会社の価値観を拠り所にした というわけですね。
マイクロサービス、そしてマイクロチームへ
白石: チームを分けたということで、開発体制とかマネジメントについてはいかがですか?もともとモノリシックだったサービスやチームを分割していくのは、相当な苦労を伴うんじゃないかなと。
北川: そうですね…そのとおりです(笑) 試行錯誤の連続。
鄧: 基本的には、サービスごとにチームを分けた感じです。サービスとチームが1:1で対応しています。
北川: 例えばエンジニアの役職一つとっても、フロントエンドやバックエンド、インフラなど、役割で分けちゃってたんですね。なので、チームを分けようとすると、それぞれのチームに役職ごとのエンジニアを割り当てなくてはならなくなり、どうしても人の配分が難しくなります。こうなると、フルスタックなエンジニアが欲しくなってきたり。
白石: これまで1チームだったときには存在しなかった問題が生じてきているということですね。
北川: そうなんです。これまできちんと体系化してこなかった部分、例えば採用とかに関しても、プロセスを整える必要が出てきています。エンジニア採用の経験がある人に来てもらって、より強いチームを作っていきたいですね。構造化面接とか、理想的な採用プロセスを構築したいです。
ミッションドリブンだから「ムーンショット」を目指せる
白石: サービスでチームを分けたとなると、目標もそれぞれ別に管理しなくてはならなくなるのも大変そうです。
鄧: そう、しかも先ほど挙げたサービスも、相当高い 「ムーンショット」的な目標を掲げていますから、なおさら大変です。
白石: コロナの逆風の中、ムーンショットを掲げるというのもすごいですよね。しかも3つも。
鄧: うちの会社の良いところは、ミッションドリブンなところだと思います。先ほども申し上げたように、「食の未来を、アップデートする」というビジョンが根底にあるので、コロナで混乱している中でも方向性がブレないでいられます。
北川: うちは創業8年で、人数もそれなりの規模ではありますが、最近の雰囲気的にはベンチャーの初期みたいな感覚がありますよね。
鄧: 今のトレタは、言ってみればクリーンなキャンバス。理想とするゴールも自分たちで決められる。自由度の高さはすごいです。楽しいですよ。
Expert’s Voice
今回の対談を経て一番印象に残ったのは「ミッションドリブン」という言葉だった。コロナという劇的な環境変化を、新サービスを生み出す前向きな力に変えているのは、ミッションを追求するという文化が浸透しているからなのだろう。
そして、新しいサービスを生み出すにあたって、新しい技術にもチャレンジするという好奇心、言ってみれば「技術愛 」が、ミッションを語る口調と同じテンションで語られたことも印象的だった。Tech Company Internalsという連載をこれから続けるにあたり、「ミッション」と「技術愛」は一貫したテーマとなりそうな予感がしている。
株式会社トレタはエンジニア/エンジニアリングマネージャーを募集しています
The photos' visual components are quite extraordinary, with an stickman hook impressive three-dimensional appearance.
Looking for some online gaming excitement? Look no further! Dive into the world of online gaming at Rocketplay Australia. Whether you're a casual player or a hardcore gamer, there's something for everyone. Don't miss out on the fun – visit https://rocketplay-australia.com/mobile now and let the games begin!
この面接に参加する方法を知りたいです。wordle、仕事が必要なのですが、面接への応募方法を教えていただければ、大変感謝いたします。
Be a smart consumer when using smart directions mapquest driving directions
The visual components of the images are really remarkable, with a three-dimensional appearance that is pretty astounding. Furthermore, the addition of sound enhances the aural experience doodle jump