CRI Middleware

RECRUIT
採用サイト

TALKエンジニア対談

クラウド、リアルタイムコミュニケーション、AI、大規模配信――。 世の中の“当たり前”を支える技術の裏側には、バックエンドエンジニアの地道で奥深い作業と工夫があります。
今回、登場するのはクラウド/Web技術を軸に、新規サービスから運用までを一気通貫で担うクラウドソリューション開発部(以下CSOL開発部)でバックエンドを担うM.NさんとR.Hさん。
自社開発と受託開発の両方を手がけ、幅広い業界で多くの技術に触れてきた二人に、仕事内容、技術の面白さ、そして「CRIでエンジニアとして成長する感覚」について語ってもらいました。

 

■お二人はなぜCRI・ミドルウェアに?

M.N前職ではゲーム開発に携わっていましたが、次第に「別の形で、Webサービスやクラウド技術に向き合いたい」と思うようになりました。
転職活動の中で、CRIは音や映像といった明確な強みを持ちながら、Web技術にも本気で取り組んでいる会社だと感じました。そのバランス感が、自分に合っていると感じたのが、入社の決め手でした。

R.H僕はもともとインフラ寄りで、オンプレやサーバー管理からキャリアをスタートしました。徐々にインフラとバックエンドを両方見るようになり、自然と今の立ち位置に落ち着いた感じです。バックエンドはフロントとデータをつなぐ「縁の下の力持ち」。派手ではないけれど、性格的にも合っていると思っています。
転職活動中にCRIから声をかけてもらったのがきっかけで入社しました。当初は別の部署で入社を検討していました、CSOL開発部の話を聞く中で、インフラとバックエンド、両方の経験を活かせる環境だと感じました。「CRIなら、これまでの仕事の延長線上から、もう一段成長できそうだ」と考え、入社を決めました。

■想像と違った? CSOLに来て驚いた「一人あたりの裁量」

二人が口をそろえて挙げたのが、CSOL開発部の一人あたりの裁量の大きさです。

R.H 機能単位で「入口から出口まで携われる」ケースが多いですね。インフラも含めて自分で見ていることが多いです。前職では、一つの機能でも5人以上関わることがあり、入社して間もない時は裁量の大きさに驚きました。

M.NCSOLは、仕様を誰かが決めて、それを実装するだけ、という分業ではありません。 開発者自身が仕様に意見を出し、設計から関わる。良くも悪くも、制限が少ないんです。だからこそ、設計の責任は重いですが、その分「サービスを作っている実感」は強いですね。

■許諾×受託×多業界。視野が広がるバックエンドの現場

CSOL開発部の特徴は、自社プロダクト(許諾製品)と受託開発の両方を扱い、業界も限定されないこと。

R.H 受託開発では、様々な企業のエンジニアとお会いします。設計書や運用の考え方も会社ごとに違う。その「流儀」を見ることで、視野が一気に広がりました。
印象に残っているのは、あるクラウドから別クラウドへの移行案件です。オンプレからクラウドへの移行はよくあるのですが、クラウド間移行は比較的珍しいケースですね。設計から移行まで担当しましたが、デプロイに8時間かかり、正直きつかったです。無事に移行できたときは達成感がありました。

M.N 許諾製品を提供する場合でもお客様の業界はアパレル、車、QA、家電など様々です。「動画を配信する」「リアルタイムでやり取りする」という同じ技術でも、業界が違えば求められる品質や価値が全く違う。その違いをどう設計に落とすかが、バックエンドの面白さです。

 

■リアルタイム技術・大規模配信──難しさは「速さ」だけじゃない

CRIの業務の特徴はWebRTC・WebSocketといったリアルタイム技術や、大規模配信基盤を前提としたバックエンド開発が「一部の特殊な案件」ではなく、音や映像を扱うCRIの事業と地続きで日常的に登場する点です。

M.N リアルタイム性が必要になるのは、遅延そのものが価値を壊してしまう場面ですね。例えば、一瞬の遅れが結果に影響するケースや、複数人で同時に操作する共同編集が該当します。CRIの場合、「音が聞こえる」、「映像が再生される」だけでなく、その体験が“違和感なく成立しているか”まで問われます。
最近では、AIによる音声対話システムの案件がありましたが、そこでも「どれだけ早く応答を返せるか」が体験の質に直結します。バックエンド側での設計や技術選択が、そのままCRIの価値提供につながります。

R.H 大規模な配信は性能の話に見えて、実は設計とコストの話でもあります。例えば、配信の非公開制御をどこで判定するのか。CRIでは、配信規模が大きくなることを前提に考えるケースが大半のため、初期段階から考えておくことが重要になります。
CDNのエッジで毎回処理するのか、それともキャッシュと組み合わせて必要なときだけ評価するのか。配置を誤ると、リクエストごとに処理が発生してしまい、レイテンシーやコストが一気に跳ね上がります。
動画配信では、クラウドコストの大半を配信コストが占めることは珍しくありません。だからこそ、CRIでは「動くかどうか」ではなく、「この設計で長く運用できるか」、「事業として成立するか」まで含めて、設計段階から考えています。

 

■基盤技術と設計──「当たり前をちゃんとやる」

リアルタイム性や大規模配信のように、体験品質やコストがシビアな領域に向き合う上で欠かせないのが、土台となる基盤づくりです。CSOL開発部では、コンテナ実行基盤(k8s/ECS)を前提に、AWSを中心としたクラウド基盤、IaC、CI/CDまでを“日常の道具”として使い、安定した運用と開発のスピードを両立させています。

M.N コンテナは必須なので、k8s / ECS は当たり前に使用します。以前、別のクラウドを使っていたこともありますが、比較するとAWSはやはり高機能で使いやすい。インフラもコンソールを手で触るのではなく、IaCでコードとして管理しておく方が圧倒的に管理しやすいです。
有名なサービスを運営している企業でも、まだ手動でAWSを使用している会社があると聞きます。それぞれ事情があると思いますが、CRIの使い方だとIaCでの管理が最適ですね。CI/CDも同じで、あるとないとでは大違いです。

R.H 基盤が整っていると、バックエンドの設計に時間を投じることができます。自社サービスの新規開発ではドメイン駆動設計(DDD)を採用していますが、正解が決まっているわけではありません。定期的にミーティングを開き「これはどういう意味だっけ?」「どこまでをこの責務として持つのか?」など、言葉の定義や境界を探り、“動けばOK”ではなく、運用や説明可能な形式に落とし込むようにしています。
基盤(k8s/ECS・AWS)と運用(IaC・CI/CD)を当たり前に整えることで、設計の議論に集中できる環境を作っているのが、CSOL開発部の大きな特長だと思います。

 

■AI活用──個人の便利さで終わらせない

AI活用も、CSOL開発部ではかなり踏み込んで行われていますよね。

M.N コードレビューやテスト生成など、AIはさまざまな分野で使用しています。特にテストはプロダクションコードに比べて多少の重複や作り直しを許容しながら、必要な観点を迅速に増加させられます。AIとの相性がとてもいいですね。
特に意識しているのは、AIを“個人の便利ツール”で終わらせないことです。ローカル環境だけで使うのではなく、Slackなどの共有の場で動かし、レビューできる形にする。そうすることで、チームのワークフローとして成立させています。

R.H 実装やテストのスピードは格段に向上しました。AIに同じ指示を出しても、人によって異なるコードが返ってくるので、その差分をどう扱うか、という新しい課題も生まれています。
またAIで変更が容易になった分、無理に共通化せず、それぞれ最適化した方が速いケースも出てきました。だからこそ、設計や判断などの重要性は、以前よりも増していると感じます。

M.N もう一つ当社で特徴的なのが、AIツールの導入が「現場起点」で提案できることです。新しいAIサービスやAPIを使用したい場合、技術戦略室(※)などに相談し、セキュリティやライセンス面に問題ないことを確認したうえで正式に導入可能です。
最初から全社導入という形でなくても、「この開発工程に効きそう」、「こういう使い方なら価値が出る」といった提案が受け入れられる土壌がCRIにはあります。社内で使用しているコードレビュー用の内製AIツールなども、そうしたアイデアから生まれました。
AI時代だからこそ、「なぜ使うのか」「どう組み込むのか」を説明し、チームとして責任を持ち活用する。
その姿勢を大切にしています。

 

※技術戦略室…全社の開発成果を最大化するために、技術資産や開発環境、品質やガバナンスなどを横断的に支えるCRIの部署

 

■チャレンジを後押しする文化と、開発しやすい雰囲気

技術的なチャレンジを支えているのは、ツールや制度だけではありません。二人が共通して挙げたのが、CRIの開発現場ならではの“空気感”です。

M.N CRIには「チャレンジ奨励制度(※)」という仕組みがあります。制度そのものはさておき、この制度があることで、日常的にアイデアを出しやすい雰囲気があると感じています。業務の中で感じた課題や、「これ、仕組み化できそう」といった気づきを、そのまま形にして提案できる。
実際、過去にはコードレビューを仕組み化するための内製ツールを作成したり、AIを用いた開発支援の仕組みを試してみたりと、業務の延長線上にあるチャレンジが発表につながったことが多数ありました。

R.H メンバー同士の距離が近く、黙々と個人で閉じこもるというより、自然と会話が生まれる環境があることも大きいですね。設計の相談、ちょっとしたアイデアを雑談ベースで話す。そういった積み重ねが開発のしやすい環境作りにつながっていると思います。
ソフトウェアだけでなく、ハードウェア開発のチームとも物理的に近い距離にあるので、「作る」ことが好きな人にとっては刺激の多い環境です。

 

※チャレンジ奨励制度:社員の自発的な挑戦を後押しする制度で、新規事業や既存サービスの改善につながるアイデアを提案・実行できます。年に2回発表する機会があり、成果は社内で発表・表彰され、将来正式な製品にブラッシュアップされ顧客に提供されることも少なくありません。

 

■「一緒に議論できる人」と働きたい

最後に二人が語った「CRIに向いている人」。これは、特別なスキルや経歴というより、日々の開発で大切にしているスタンスの話でした。

M.N 一緒に議論して問題解決できる人ですね。設計をはじめ、実装、運用など、どんなフェーズでも意見が食い違う場面は必ず出てきます。そういうときに、どちらが正しいかではなく、「なぜ、そう考えているのか」「どこが論点なのか」を整理して、納得感を持って方向性を合わせられることが大事だと思っています。
CRIでは、とりあえず動けばOK、というよりも「理解できているか」を重視する空気があります。理解できていないものは、長く運用できないし、安心して任せられない。だからこそ説明したり、図にしたりと、言語化する力は入社後も自然と鍛えられていきます。

R.H 複数人で開発していると、「ユーザーにとって本当に必要なサービス、機能は何か?」で意見が割れることがよくあります。CSOL開発部は、各メンバーそれぞれに仮説や信念があるので、なおさらですね。
だからこそ、相手を言い負かすのではなく、「では、どうすれば両立できるか」「どこまでなら妥協できるか」を一緒に考えられる人と働きたいです。
技術だけでなく、背景や意図を説明できること。その上で、周りを巻き込みながら前に進める人は、CSOL開発部で確実に力を発揮できると思います。

 

 

※ 部署名、担当業務等はインタビュー当時のものです。

ページTOPへ