<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>クラウド &#8211; Voice 動画配信の今を伝えるエンジニア情報サイト</title>
	<atom:link href="https://voice.stream.co.jp/tag/%e3%82%af%e3%83%a9%e3%82%a6%e3%83%89/feed/" rel="self" type="application/rss+xml" />
	<link>https://voice.stream.co.jp</link>
	<description>株式会社Ｊストリームが運営するエンジニア情報サイト。幅広い技術とエンジニア視点が必要となる動画配信開発の現場から、エンジニア執筆による専門領域に関する技術解説、エンジニア組織の特徴・魅力、関連イベントや講演登壇、ニュースなどをお届けします。</description>
	<lastBuildDate>Thu, 14 Sep 2023 06:55:40 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://voice.stream.co.jp/wp-content/uploads/2021/04/favicon.png</url>
	<title>クラウド &#8211; Voice 動画配信の今を伝えるエンジニア情報サイト</title>
	<link>https://voice.stream.co.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>社内共通開発基盤をレガシーからモダン移行した変化と効果</title>
		<link>https://voice.stream.co.jp/technology/20210401/</link>
					<comments>https://voice.stream.co.jp/technology/20210401/#respond</comments>
		
		<dc:creator><![CDATA[jst_recruit]]></dc:creator>
		<pubDate>Thu, 01 Apr 2021 00:57:19 +0000</pubDate>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[J-Stream Cloud]]></category>
		<category><![CDATA[クラウド]]></category>
		<category><![CDATA[バックエンドエンジニア]]></category>
		<category><![CDATA[業務紹介]]></category>
		<category><![CDATA[開発環境]]></category>
		<guid isPermaLink="false">https://voice.stream.co.jp/?p=4639</guid>

					<description><![CDATA[レガシーな開発環境を脱却するために、モダン開発をベースにして構築された全社共通の開発基盤「J-Stream Cloud(ジェイ-ストリームクラウド）」。その存在は、開発スピードと柔軟性を大幅に向上させ、開発体制に大きな変 [&#8230;]]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="4639" class="elementor elementor-4639">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-11075f4 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="11075f4" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7a271f6" data-id="7a271f6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-bbd7dfa elementor-widget elementor-widget-spacer" data-id="bbd7dfa" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7a7251c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7a7251c" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-42dcce9" data-id="42dcce9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5f48e3b elementor-widget elementor-widget-text-editor" data-id="5f48e3b" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>レガシーな開発環境を脱却するために、モダン開発をベースにして構築された全社共通の開発基盤「J-Stream Cloud(ジェイ-ストリームクラウド）」。その存在は、開発スピードと柔軟性を大幅に向上させ、開発体制に大きな変化をもたらしている。今回、構築を手がけた2人のエンジニアに話を聞いた。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-17d0dae elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="17d0dae" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-edd2564" data-id="edd2564" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-7fbf410 elementor-widget elementor-widget-spacer" data-id="7fbf410" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-8983fe7 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="8983fe7" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-89254b3" data-id="89254b3" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9d99253 elementor-widget elementor-widget-text-editor" data-id="9d99253" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><b><span style="color: #000000;">開発環境構築のキーは、マイクロサービス、インフラのコード化</span></b></h2>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2676507 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2676507" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7d4ac83" data-id="7d4ac83" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e809cd6 elementor-widget elementor-widget-text-editor" data-id="e809cd6" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――今回のテーマは「J-Stream Cloud」ですが、これは以前はなかったものですよね。どういう経緯で作ることになったのか、まずは、その辺りから話を聞かせてください。</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-9188510 elementor-widget elementor-widget-spacer" data-id="9188510" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-94dac84 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="94dac84" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-7b59d8b" data-id="7b59d8b" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-0ac3009 elementor-widget elementor-widget-image" data-id="0ac3009" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-a0bb609" data-id="a0bb609" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-80a0ab4 elementor-widget elementor-widget-text-editor" data-id="80a0ab4" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>「J-Stream Cloud」は自社のプロダクト開発やサービス開発を支える共通開発基盤です。2018年頃から着手し、現在も日々改良を重ねています。</p>
<p> </p>
<p>アジリティ面の特徴としては大きく２つあります。一つはSubversionからGitLabへ移行しモダン開発ベースでのマイクロサービス構成にて開発スピードと高い柔軟性を実現している事。もう一つは、DockerやKubernetesによるコンテナ技術やAnsibleなどを用い、Infrastructure as Codeをベースとすることで、CI/CDの概念によるインフラの構築や運用を自動化できる事です。</p>
<p> </p>
<p>各機能をモジュール化し、それぞれをステートレスに設計する事で機能の依存性をできるだけ分離し、スケール性も確保しています。それと同時に、共通する部分は汎用的に作りこむ事で、どこかのプロダクトで作った機能をそのまま他のプロダクトでも再利用できるようにしています。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-474e722 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="474e722" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f144426" data-id="f144426" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-06c7ec6 elementor-widget elementor-widget-spacer" data-id="06c7ec6" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-9f9acc3 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="9f9acc3" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-2af5ac1" data-id="2af5ac1" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b6da489 elementor-widget elementor-widget-image" data-id="b6da489" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-ca273ef" data-id="ca273ef" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-c4310c7 elementor-widget elementor-widget-text-editor" data-id="c4310c7" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>構築に関して使用されている技術は、着手当時から現在も色々変遷を重ねています。初期はRuby on RailsをベースにREST APIを実装していました。これは基本的なフレームワークのルールをより厳格なRailsによって社員に浸透させる狙いもありました。現在はある程度MVCなどの概念も理解が進んできておりますので、次の段階としては、将来的な機械学習などAI分野への進出を見越してPythonなどの言語への変換を進めています。</p><p> </p><p>とはいえ、インタプリタ言語だけではもちろん高速な処理などは追いつきませんので、APIの内部処理として動く各マイクロサービスではJavaやGolangなどのコンパイル系言語も取り入れています。この辺りはnginxやRedisなどのミドルウェアも組み合わせて開発していますので、一般的な開発経験があればすぐに取り掛かれるようにという部分に焦点をあてて標準化させています。</p><p> </p><p>「J-Stream Cloud」構築の背景には、Ｊストリームに特化した開発者ではなく、日本や世界で通用する開発者への成長を促す狙いがあります。いかにＪストリームで育ったエンジニアが他でも通用するか、また他で活躍しているエンジニアがそのままＪストリームで活躍できるか。オンプレミスのインフラや動画領域の経験など、コアコンピタンスな部分はどうしても特殊性は残りますが、それ以外のアーキテクチャはそれらの経験有無に影響されないので、スタートはきりやすいと思います。</p><p> </p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-b344a52 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="b344a52" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3fae187" data-id="3fae187" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cbbc90b elementor-widget elementor-widget-text-editor" data-id="cbbc90b" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――マイクロサービスアーキテクチャの導入により、開発者目線ではどう変わりましたか？</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-81c3d72 elementor-widget elementor-widget-spacer" data-id="81c3d72" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-96336f8 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="96336f8" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-89b8ab2" data-id="89b8ab2" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-7d7a849 elementor-widget elementor-widget-image" data-id="7d7a849" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-da324f8" data-id="da324f8" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1b5481c elementor-widget elementor-widget-text-editor" data-id="1b5481c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>つい5-6年前までは、まだサービス単位でモノリシックに開発されていたので、とても触るのが怖かったですね。機能が密結合されており、何かを触ると他の部分で想定外の動作になるなど、どこまで影響があるのか誰も把握できない状態でした。</p><p> </p><p>一つのコンテンツをアップすると同期されたタスクが同時に動き出すため、データベースからエンコードまで全レイヤーを見ることができないと開発できませんでした。もちろん技術的にもですが、非言語化された「過去の経緯」や「作成者の想い」なども知らないといけない属人的な開発スタイルに縛られていたともいえますね。</p><p> </p><p>マイクロサービス化によって、新しい機能を追加する際に既存のコードを触る機会が大幅に減りました。大きなクラスを触っていたら想定外のところでそのメソッドが呼び出されていてバグが出るなどのリスクも無縁になりましたので、過去の経緯を気にせず単機能の開発に集中できるようになり、みんな積極的に機能開発を行うようになりました。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-20b20c1 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="20b20c1" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fb1287b" data-id="fb1287b" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-dc726c1 elementor-widget elementor-widget-spacer" data-id="dc726c1" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-0ee14e2 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="0ee14e2" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-144b7cc" data-id="144b7cc" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-093a98c elementor-widget elementor-widget-image" data-id="093a98c" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" alt="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-d559bc7" data-id="d559bc7" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e108739 elementor-widget elementor-widget-text-editor" data-id="e108739" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>ステートレスなマイクロサービス化によって、スケールインやスケールアウトも容易になりました。また、CI/CDの整備によってデプロイリスクも軽減されましたので、開発者の心理として安全に集中した機能開発を行えるようにもなり、チャレンジする傾向が強くなってきましたね。チャレンジの数を増やせれば、成功の可能性も増やすことができる。そうやって技術者目線での新しい試みを増やすことが、会社としての強みを増やす事に直結しているんです。</p><p> </p><p>リスクもそうですが、マイクロサービス化されたそれぞれの機能は再利用が容易なのも大きいですね。サービスごとに同じような機能を作る「車輪の再発明」のような事は、とても多く発生していました。同一サービスの開発チーム内でも、バックエンドエンジニアとインフラエンジニアが同じようなサーバを作っていたりもしましたしね。全社員が使用できる共通開発基盤にすることで、再利用が基本的な考え方となり、大幅に開発スピードは向上しました。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-d756067 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="d756067" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6619c6d" data-id="6619c6d" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-a22bf4a elementor-widget elementor-widget-spacer" data-id="a22bf4a" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-4cde1d9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="4cde1d9" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-da14f43" data-id="da14f43" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1c23b25 elementor-widget elementor-widget-image" data-id="1c23b25" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b5bd640" data-id="b5bd640" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e3dc447 elementor-widget elementor-widget-text-editor" data-id="e3dc447" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>疎結合な開発体制が整ったことで、「動画のトランスコードに詳しい」というようなスペシャリティも発揮できやすくなるので、尖った特技なども活かしやすくなったかと思います。いろんな特技を持った人が参加する事で、小さな単位での機能レベルから底上げを図り、やがては大きな技術的変遷への対応、世の中のニーズへ決め細かくこたえられる。動画という技術の移り変わりの激しい領域だからこそ、マイクロサービス化は必然だったように思います。</p><p> </p><p> </p><p>今はリリース環境とステージング環境をKubernetes上で構築し、人的ミスを回避できるようにCI/CDによる自動化を取り入れています。導入当初はJenkinsなども使用していましたが、いまはArgoCDに変更するなど日々改善を続けています。</p><p> </p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-db33cca elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="db33cca" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d9b2234" data-id="d9b2234" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-24311ee elementor-widget elementor-widget-spacer" data-id="24311ee" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-29077e0 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="29077e0" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3e57474" data-id="3e57474" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cd51f1b elementor-widget elementor-widget-image" data-id="cd51f1b" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" alt="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-1d68cbd" data-id="1d68cbd" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-d42d900 elementor-widget elementor-widget-text-editor" data-id="d42d900" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>以前は、最初の一歩が重たい感じでしたよね。実機のサーバを調達して、開発するときにはtopコマンドなどでリソースの空きを確認し、historyなどを見ながら恐る恐る触る感じです。開発が終わってデプロイする際にも目視チェックなどを行っており、人的ミスが無いようにすごく神経を使っていました。それに比べれば、重たかった一歩はずいぶんと軽くできたのではと思います。</p><div> </div>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5c81b63 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5c81b63" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b7b5979" data-id="b7b5979" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-7567161 elementor-widget elementor-widget-spacer" data-id="7567161" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-8fbc6de elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="8fbc6de" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-4ce9d30" data-id="4ce9d30" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5a545f3 elementor-widget elementor-widget-image" data-id="5a545f3" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://ji-work.com/js_voice/wp-content/uploads/2021/04/図8.jpg" title="" alt="" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-e348afe" data-id="e348afe" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e0d6cab elementor-widget elementor-widget-text-editor" data-id="e0d6cab" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>インフラのコード化に関しても、現在はフロントエンドやバックエンドの開発者が自分たちでサーバやミドルウェアの構築、テストやデプロイまでをコードで表現します。自動化などのメリットもそうですが、インフラエンジニアと開発者がコードを通じてやりたいことを相互に理解できるよう共通言語化されたのが大きいですね。コミュニケーションロスもなくなりました。</p><div> </div>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-61ab071 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="61ab071" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b9e16d5" data-id="b9e16d5" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-66ca5ff elementor-widget elementor-widget-spacer" data-id="66ca5ff" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-c1306fb elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="c1306fb" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-8383654" data-id="8383654" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-af8aafd elementor-widget elementor-widget-image" data-id="af8aafd" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" alt="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-e03ef19" data-id="e03ef19" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-3c49e6e elementor-widget elementor-widget-text-editor" data-id="3c49e6e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>環境を作るまでの時間が圧倒的に短くなりましたね。コンテナなら、自分たちの開発端末にDockerをインストールしておけばそこでスクラップ＆ビルドを行い、納得できるまでコンテナのビルドチューニングを行える。そこで作ったコンテナはそのままステージングやリリース環境のKubernetes上でも使用される。Vagrantからlibvirtを使用してKVMの仮想サーバ自動生成も気軽にできるので、さっと動かしてみてダメなら壊して簡単にやりなおせます。</p><p> </p><p>何かを思いついたら自分の隙間時間を使ってちょっと試してみる。ダメなら壊す。また思いついたら触ってみる。開発者にとってのチャレンジって構えて行う「大きな何か」ではなく日常的に繰り返す「小さなひらめき」ですから、それを後押しし実現できる開発環境が必要なんです。</p><div> </div>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-db667f7 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="db667f7" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-edae382" data-id="edae382" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8c7f6d7 elementor-widget elementor-widget-spacer" data-id="8c7f6d7" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-9e7d8ad elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="9e7d8ad" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-773c554" data-id="773c554" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-43312b2 elementor-widget elementor-widget-text-editor" data-id="43312b2" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><b><span style="color: #000000;">技術変化の激しい動画領域で開発スピードを上げていく</span></b></h2>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-55e4aed elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="55e4aed" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-86e638f" data-id="86e638f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-39a9e5d elementor-widget elementor-widget-text-editor" data-id="39a9e5d" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――動画領域の開発では、「J-Stream Cloud」はどのようなメリットがあるものなのでしょうか？</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-df06107 elementor-widget elementor-widget-spacer" data-id="df06107" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-89e3c4b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="89e3c4b" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-cf3d34e" data-id="cf3d34e" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-11a3218 elementor-widget elementor-widget-image" data-id="11a3218" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-cf4e1a2" data-id="cf4e1a2" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-30c5e3d elementor-widget elementor-widget-text-editor" data-id="30c5e3d" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>一番は、技術や世の中のトレンドに素早く対応できることです。動画領域は技術変化が特に激しく、主流となる技術が4～5年で一変する事も珍しくありません。大きなシステムを作ってしまうと一部だけを変えようにも、全く関係のないところで想定外のバグが出たりなどで、世の中の変化のスピード的についていけない。</p><p><br></p>
<p></p>
<p>「J-Stream Cloud」では、例えばHLS配信においてもPlaylist作成部分を分離してあります。前段の処理をそのまま生かしつつ、Playlistのレンダリングの時点でMPEG-DASH用のPlaylist作成処理だけを追加しHLSと置き換えるイメージですね。そうすれば、そのままMPEG-DASH配信だけでなく、CMAFなど新しい規格にもすぐに対応が可能です。それらの機能をAPIで提供していますので、パラメータでHLSやMPEG-DASHかを選んでもらえればすぐに新しい機能をプロダクトに提供できます。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-06b2199 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="06b2199" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4472104" data-id="4472104" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-c817b64 elementor-widget elementor-widget-spacer" data-id="c817b64" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6c39c3a elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6c39c3a" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b306473" data-id="b306473" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9f4c738 elementor-widget elementor-widget-image" data-id="9f4c738" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://ji-work.com/js_voice/wp-content/uploads/2021/04/図8.jpg" title="" alt="" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b6141ba" data-id="b6141ba" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6771cc0 elementor-widget elementor-widget-text-editor" data-id="6771cc0" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>コロナ環境下では動画活用が急速に拡大しました。中でもインターネットライブをもっと手軽に使いたいという企業ニーズが一気に高まり、私たちも緊急開発を多く行いました。その中の一つに疑似ライブ（収録動画をタイムスケジュールに沿ってライブ配信する事）機能がありますが、これは自社プロダクトである「J-Stream Equipmedia（ジェイストリーム・イクイップメディア）」へごく短期間で追加できました。（※関連記事は<a style="background-color: transparent; transition: all 200ms ease-in-out 0s; color: #61b206; outline: 0px;" href="https://ji-work.com/js_voice/technology/%e5%8b%95%e7%94%bb%e3%80%81%e3%83%a9%e3%82%a4%e3%83%96%e3%80%81db%e3%80%81%e5%a4%a7%e8%a6%8f%e6%a8%a1%e9%85%8d%e4%bf%a1%e5%b9%85%e5%ba%83%e3%81%84%e6%8a%80%e8%a1%93%e9%a0%98%e5%9f%9f/" rel="noopener">こちら</a>）</p><p> </p><p>これはそもそも前述したようにレンダリングを別にしたエンジンを作っていたというのもあり、そこにフレーム制御でのカット機能を盛り込むことで機能の再利用を行った事によります。また当然、プロダクトの開発者であるフロントエンドエンジニアが全く動画について調べなくても良かったという、標準的なスキルによる分業化という事も大きいです。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-bf72dc2 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="bf72dc2" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f4a9630" data-id="f4a9630" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-3d6bbb2 elementor-widget elementor-widget-spacer" data-id="3d6bbb2" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-d6fa1cc elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="d6fa1cc" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-dfaa2e5" data-id="dfaa2e5" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-014e8ff elementor-widget elementor-widget-image" data-id="014e8ff" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" alt="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-ad2a2bf" data-id="ad2a2bf" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ffada5b elementor-widget elementor-widget-text-editor" data-id="ffada5b" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>動画由来のメリットという点では、動画データは滞納トラフィックが起こりやすいためスケールを考慮する必要があるのですが、その場合でも処理の重い部分だけをスケールする事でリソースの節約を行う事が可能になりました。必要な処理だけをいくつも複製できるので、一つのコンテナで障害が発生しても別のコンテナで処理を続行するなど、障害回避の構成を作るうえでも役立っていますね。</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ab8d954 elementor-widget elementor-widget-spacer" data-id="ab8d954" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2332062 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2332062" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3eeb1ce" data-id="3eeb1ce" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-36cdf46 elementor-widget elementor-widget-spacer" data-id="36cdf46" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2873452 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2873452" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5d9abf9" data-id="5d9abf9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8f6965f elementor-widget elementor-widget-text-editor" data-id="8f6965f" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――Ｊストリームでの開発の面白みとは？</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-c3a9e22 elementor-widget elementor-widget-spacer" data-id="c3a9e22" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-99c0115 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="99c0115" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b0fac36" data-id="b0fac36" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-375dc03 elementor-widget elementor-widget-image" data-id="375dc03" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5b5e9bb" data-id="5b5e9bb" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-94ba87f elementor-widget elementor-widget-text-editor" data-id="94ba87f" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Ｊストリームのユニークな点は、オンプレミスの基盤と設備を持っている事です。動画配信と開発を同時にやっている会社は日本でも数少ないですからね。オンプレミスで一から自分で作る楽しさは格別です。</p><p> </p><p>とはいえ、オンプレミスだけでやっていると全体スピードとしては落ちてしまう。「J-Stream Cloud」の構築ではまずはクラウドベースでスタートさえスピードアップを図りながら、徐々にオンプレミスへの移行を計画しています。インフラを柔軟に操作できるようになると、エンコードアクセラレーターなどの独自ハードウェアの組み込みや、キャリア網を使用したエッジコンピューティングなど、様々な利点がもっと出てくると思っています。</p><div> </div>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-0f79c6f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="0f79c6f" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-13908e4" data-id="13908e4" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-41fe96d elementor-widget elementor-widget-spacer" data-id="41fe96d" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-1ffa669 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="1ffa669" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5307741" data-id="5307741" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ace1a40 elementor-widget elementor-widget-image" data-id="ace1a40" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-c53da98" data-id="c53da98" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b178ca4 elementor-widget elementor-widget-text-editor" data-id="b178ca4" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>クラウドとオンプレミス、どうハイブリッドにしていくかですよね。クラウドの障害時にはオンプレミスに、またオンプレミスの障害時にはクラウドに逃がすなどを考慮すると、ハイブリッド化は必須になると思います。またクラウドも当然マルチクラウドであるとより堅牢になります。</p><p> </p><p>5Gなどを見据えると、各キャリアのネットワークに合わせたインフラ設計も必要です。マルチクラウドでありマルチキャリアな汎用プラットフォームは、インフラを含めた設計が必須になりますし、それができるポジションにいるのがＪストリームの良さですかね。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-444d974 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="444d974" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8cded51" data-id="8cded51" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cbfb04a elementor-widget elementor-widget-spacer" data-id="cbfb04a" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-c6dfcea elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="c6dfcea" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-e83c95a" data-id="e83c95a" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cfc3b5c elementor-widget elementor-widget-image" data-id="cfc3b5c" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3857c43" data-id="3857c43" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8522f2e elementor-widget elementor-widget-text-editor" data-id="8522f2e" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>直近の課題はそのあたりですね。まずは現在動いている物理サーバをなるべくたくさんコンテナに移行し、コンテナで動くことがまず当たり前の仕組みを作っていけるとよいのではと考えています。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-69d534f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="69d534f" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-979a026" data-id="979a026" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-f6c4589 elementor-widget elementor-widget-spacer" data-id="f6c4589" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7630d99 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7630d99" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c0d4269" data-id="c0d4269" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cce88cf elementor-widget elementor-widget-image" data-id="cce88cf" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="1024" height="683" src="https://voice.stream.co.jp/wp-content/uploads/2021/04/IMG_0779-scaled.jpg" class="attachment-large size-large wp-image-475" alt="" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7372faa elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7372faa" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a1f838f" data-id="a1f838f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-30fade4 elementor-widget elementor-widget-spacer" data-id="30fade4" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2eb904c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2eb904c" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-70de710" data-id="70de710" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8e3573a elementor-widget elementor-widget-text-editor" data-id="8e3573a" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2><span style="color: #000000;"><b>データ処理、双方向配信、MEC……「J-Stream Cloud」の成長の方向性とは？</b></span></h2>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-ff90c80 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="ff90c80" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-95113bd" data-id="95113bd" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-c469eb5 elementor-widget elementor-widget-text-editor" data-id="c469eb5" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――今後、「J-Stream Cloud」へどのような機能拡充を考えていますか？</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-bf90fdd elementor-widget elementor-widget-spacer" data-id="bf90fdd" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-bf02f32 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="bf02f32" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-603a491" data-id="603a491" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-cc9d49c elementor-widget elementor-widget-image" data-id="cc9d49c" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b023932" data-id="b023932" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-7a53831 elementor-widget elementor-widget-text-editor" data-id="7a53831" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>コロナ環境下での動画配信ニーズの高まりの中で、ライブやトランスコードなどの機能拡充の必要性を感じています。もちろんこれらの基本機能に関しては機能拡張を進めていければと思っていますが、ライブやトランスコードに関する詳細なフィードバックを提供できるように、高度な学習や予測なども取り入れていきます。今は配信するだけではなく、結果を問われる時代ですからね。</p><p> </p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7b69219 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7b69219" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c968868" data-id="c968868" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-f9bf7f7 elementor-widget elementor-widget-spacer" data-id="f9bf7f7" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-f7f877e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f7f877e" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-4b1e133" data-id="4b1e133" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b8a1ce0 elementor-widget elementor-widget-image" data-id="b8a1ce0" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-cd82a87" data-id="cd82a87" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5a1dc45 elementor-widget elementor-widget-text-editor" data-id="5a1dc45" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>データ処理基盤ですね。現在でもCDNプロダクトの「J-Stream CDNext（シーディーネクスト）」ではKafkaやHadoopなどを使用してログの大規模処理を行っていますが、それはあくまで結果を可視化するだけのもので、学習や予測などの領域には手を出せていませんでした。Pythonをベースとした機械学習や深層学習などのエッセンスを取り入れていき、AIの活用を前提とした基盤を作れれば、面白いデータが出せるのではと思ってるんですよ。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6028db7 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6028db7" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2e5b4f6" data-id="2e5b4f6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6cc274e elementor-widget elementor-widget-spacer" data-id="6cc274e" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5e1d161 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5e1d161" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-a3c9c4f" data-id="a3c9c4f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-007fc08 elementor-widget elementor-widget-image" data-id="007fc08" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" alt="8-p5npy1id7jc8m5hfy3pc01pudj8nzqgckq6kq7mcdc" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3e9500a" data-id="3e9500a" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-fa831e1 elementor-widget elementor-widget-text-editor" data-id="fa831e1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>ちょうど今、昨年入社の新卒メンバーにメインとなってもらい、ログ処理の基盤機能開発を進めている所です。彼の機械学習領域の経験を生かしてデータ部分を作ってもらっています。APIの使用データをPandasで読み込んだ後、scikit-learnなどで決定木にかけることでどういうパターンの際にどういうパラメータが望ましいかなどを自動判別するなど、徐々にAIの活用部分を増やしていければ面白いですね。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3f79273 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3f79273" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-95b8258" data-id="95b8258" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-0890236 elementor-widget elementor-widget-spacer" data-id="0890236" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-80285dd elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="80285dd" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-113f6b9" data-id="113f6b9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-afd1a27 elementor-widget elementor-widget-image" data-id="afd1a27" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/図7再-1-pm2inffyjmhfsg6454xenja0zikomdq584s0ou22hs.jpg" title="図7再" alt="図7再" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-562f6bd" data-id="562f6bd" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-d56fa85 elementor-widget elementor-widget-text-editor" data-id="d56fa85" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>それ以外では、新たな配信方式への対応ですね。動画配信のプロトコルや仕様はここ10年で大きく変わりました。昔はFlashによるRTMPベース、今はHTTPベースのHLS配信方式がデファクトで使われていますが、ここ数年はWebRTCを使うとリアルタイムな双方向配信だけでなく、大規模な配信なども対応できるようになってきています。そういう動きに対して素早く対応できる体制や仕組みを作っていきたいと思っています。</p><p> </p><p>双方向はやってみたいですね。1対多で配信者と視聴者が分かれている大規模配信はどこでもやっているけど、今は双方向性のあるものが求められています。見ている人がチャットで参加出来たり、音声通話でジョイント出来たりなどは昔からありますが、それ以外にも見るだけではなく参加できる為の様々なアクションを増やしていきたい、その為の機能開発を増やしていけると面白いでしょうね。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-d79efab elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="d79efab" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-50250f1" data-id="50250f1" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6e6da95 elementor-widget elementor-widget-spacer" data-id="6e6da95" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5cf4702 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5cf4702" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-d688258" data-id="d688258" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-da66312 elementor-widget elementor-widget-image" data-id="da66312" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://ji-work.com/js_voice/wp-content/uploads/2021/04/図8.jpg" title="" alt="" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5f940ac" data-id="5f940ac" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-024ddd6 elementor-widget elementor-widget-text-editor" data-id="024ddd6" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>私はSREについて本格的に取り組みたいですね。監視を細かく行い、月にどれくらいエラーや障害が発生しているかを把握できるようにする。それで「何％まで抑えていこう、これくらいまでなら大丈夫だからもっとチャレンジしよう」と具体的に進めていければと考えています。</p><p> </p><p>機能追加に関しても、今までは営業主体で顧客ニーズに応えるという、開発主体という視点で考えるとやや後手なところがありましたが、SREをベースにSLI(Service Level Indicators)を定義し、開発側からも先手を打って主体的に動けるためのデータを揃える事で、よりチャレンジの目標を明確にできるようにしたいですね。</p><p> </p><p>あとは5G関連でのMECであったり、H.266などの配信フォーマットを実証実験してみたり、…となるとやはりマルチクラウド環境ですかね。</p>								</div>
				</div>
				<div class="elementor-element elementor-element-7586434 elementor-widget elementor-widget-spacer" data-id="7586434" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-f5cd08b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f5cd08b" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3abf347" data-id="3abf347" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-0166839 elementor-widget elementor-widget-image" data-id="0166839" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://voice.stream.co.jp/wp-content/uploads/elementor/thumbs/7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk-pm2iq2dnpw3ed2c7qryq5dbkzfkr7t7196o25s5b1c.jpg" title="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" alt="7再-p6h0frglj82nvtyt5rk6l1ffror0qsurhstesfecrk" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">T.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b8d72d0" data-id="b8d72d0" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-37e7d31 elementor-widget elementor-widget-text-editor" data-id="37e7d31" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Ｊストリームは動画配信ネットワークから始まったこともあり、インフラの強い会社だという印象が強いのですが、共通の開発環境として「J-Stream Cloud」ができたことで開発力も確実に上がってきている。「J-Stream Cloud」構築の経験を通じて、開発環境がエンジニアにもたらす影響力を強く感じました。</p><p> </p><p>新しい機能を作ることがメインだから、結構チャレンジしていかないといけないし、それをできる為の環境がそろっている、と。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5547123 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5547123" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c85b9de" data-id="c85b9de" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-a7893ae elementor-widget elementor-widget-spacer" data-id="a7893ae" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6c1f218 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6c1f218" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-eaca831" data-id="eaca831" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-4142638 elementor-widget elementor-widget-image" data-id="4142638" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
												<figure class="wp-caption">
										<img decoding="async" src="https://ji-work.com/js_voice/wp-content/uploads/2021/04/図8.jpg" title="" alt="" loading="lazy" />											<figcaption class="widget-image-caption wp-caption-text">M.S.</figcaption>
										</figure>
									</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-1bb4176" data-id="1bb4176" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-85f09fb elementor-widget elementor-widget-text-editor" data-id="85f09fb" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h5><span style="color: #000000;">ロールバックもできるから楽ですしね。</span></h5><p> </p><h5><span style="color: #000000;">試行錯誤で悩んだ時も、APIを叩けばJ-Stream Cloudがポンと新しいコンテナを立ち上げてくれますから、安心してチャレンジしてもらいたいですね！</span></h5>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-97bfda4 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="97bfda4" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2676b84" data-id="2676b84" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-31a98f5 elementor-widget elementor-widget-spacer" data-id="31a98f5" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-0f4db17 elementor-widget elementor-widget-text-editor" data-id="0f4db17" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<span style="color: #000000;"><b>――今後の基盤拡充にも期待しています。ありがとうございました。</b></span>								</div>
				</div>
				<div class="elementor-element elementor-element-f11725b elementor-widget elementor-widget-spacer" data-id="f11725b" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7ec5f25 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="7ec5f25" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b08836c" data-id="b08836c" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-88cc991 elementor-widget elementor-widget-text-editor" data-id="88cc991" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>※在籍年数や役職を含む記載内容は、取材当時のものです。その後、状況が変化していることがあります。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		]]></content:encoded>
					
					<wfw:commentRss>https://voice.stream.co.jp/technology/20210401/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
