イノベータを目指す学生を対象にした国内最大級の産学官連携ハックイベント「JPHACKS 2022」が、10月15日より開催されます。Jストリームは、本イベントに協賛し、新たな技術者の育成を支援しています。そこで、今回は、ITエンジニアを目指す学生の皆さんに向けた、エンジニアインタビューを企画しました。
今回のインタビューに登場するのは、2021年に新卒でJストリームへ入社したバックエンドエンジニアのS.O.さんです。学生時代は機械学習分野の研究を専攻し、卒業後はITエンジニアとして幅広い経験を積みたいと新卒でのJストリーム入社を選択しました。入社後は、研究室や学生時代の後輩へ就職に関するアドバイスや相談に応じることもあるそうです。JPHACKS2022初日に開催されるMeetupNightにも参加し、学生の皆さんと交流する予定です。
このインタビューでは、学生時代を振り返りながら、ITエンジニアとしてのキャリアパスを築くために就職活動で考えたこと、入社後の仕事内容と自らの成長機会について、語ってもらいました。
好奇心を軸に自己分析し、将来への解像度をあげた学生時代
――今日はよろしくお願いします。はじめに、学生時代のお話を聞かせていただきたいです。学部・大学院で機械学習の研究をされていたそうですね。
機械学習の画像処理という分野で研究を行っていました。私には、地元を離れ東京の情報系の大学に進学した8歳離れた兄がいます。その兄の影響で、小学校3年生の頃には情報工学へ強い興味を持っていました。兄が僕に話してくれる技術分野の話がとても面白くて、自分も同じ分野について学びたいと進路を決めました。
2つあるのですが、一つは幅広い技術を経験できる企業だということです。入社後はバックエンドエンジニアとして働いていますが、私自身の興味はフロントエンドにもありますし、インフラでも経験を積みたいと考えていました。
もうひとつは、日常生活に広く浸透しているモノやコトに関する技術開発ということです。自分が働く上で、やりがいの源泉は何かと考えると、先述した兄との想い出にたどり着くんですよね。兄は、帰省するたびに「コンピューターではこんなことができるんだぞ」と小さな弟に見せてくれました。私は、兄の話を聞きながら、「え、こんなことも」と驚きと感動の連続でした。「ということは目の前にある信号も、他にも……」と日常生活にある様々なものに好奇心を傾けるようになりました。
就職活動時に、Jストリームが企業向けに配信基盤を提供しているという事業内容を知り、今後伸びる業界だろうなと興味を惹かれました。一部のプラットフォーマーだけでなく、非プラットフォーマーである一般企業においても今後ますます動画の活用が進んでいきます。それを想像すると、幼い頃に抱いたコンピューターシステムへの驚きと感動の記憶と重なりました。
技術の力を使って、動画のある何気ない日常生活に対して「え、こんなこともできるの」という驚きと感動を世の中へ提供する仕事ができたらと。そこで、動画配信の技術領域へチャレンジしてみたいなと思ったんです。JストリームのITエンジニアとして、自社サービスの開発に携わりたいなと心を固めました。
自由度高く働き、上昇志向で仕事に向き合う
バックエンドエンジニアリングを担当しています。これまでの担当業務としては2つあります。ひとつは、社内共通開発基盤である「J-Stream Cloud(ジェイストリーム・クラウド)」のAPI開発で、もうひとつは大規模配信を想定したサーバ負荷試験です。
一つ目の「J-Stream Cloud」では、マイクロサービスを採用しており、部分的な機能追加や流用が柔軟にできるというメリットがあります。それにより、全社での開発スピードを向上させる大きな役割を担っています。私は、EQにおける動画トランスコード機能やライブ機能の拡充、既存機能のリファクタリングなどを手掛けてきました。
二つ目のサーバ負荷試験とは、自社のサービス提供において、大規模なリクエストが生じることがあります。その場合でも安定した配信が行えるように備え、サーバの負荷および配信キャパシティにおけるボトルネックの調査やバックエンドの処理性能向上と改修を行いました。
社歴や年齢ではなく、適性と意志によって仕事を任せてもらえることですね。「新入社員だから」とか「一年目だから」という理由でプロジェクトを外されることはありません。むしろ、私としては、チャレンジングだなと感じるタスクを任せてもらうことが多く、常に上昇志向で仕事に向き合えていますね。
また、上司から言われたタスクをこなすだけではなく、「この課題を解決するには、どういったアプローチが考えられる?」という問いを立てることから仕事を始めるケースが多いですね。自分自身で思考して開発する癖がつくので、仕事に対する理解と応用する力がつくと思います。
Jストリームのエンジニアリングでは、ネットワークも扱いますし、サーバ、ストレージ、Web、統計や機械学習を用いた膨大なログ解析、SREなど幅広い技術と視点を学ぶことができます。私はバックエンドエンジニアですが、職種間の垣根や縦割り感はなくお互いがサポートしあって仕事を進めていくような雰囲気が強いですね。
全社的にテレワークが浸透しており、開発もテレワーク中心で支障なく進められています。Slackなどを使い、情報共有やコミュニケーションも行われています。
また、人事制度では、全社人事とは別に、エンジニア向け人事制度「Tech人事制度」があります。この制度は、特定領域のITエンジニアリングのプロフェッショナルと、アーキテクチャやエンジニアと統括するテックリーダーのためのものです。策定にはエンジニアが携わり、社歴や年齢などに関係なく技術力をベースに半年ごとに昇進や昇給に関する評価が行われます。生涯エンジニアとして現場で活躍を続けられる働き方ができ、現在10名ほどのエンジニアがこの制度を利用しています。また、全社人事制度とTech人事制度は、行き来が可能です。
社内の中で職種を変更したり、渡り歩きたいという気持ちに対しては、相談もしやすく最大限考慮してもらえると思います。
自ら考え、踏み込む働き方で、一気にスキルアップする
――S.O.さんにとって、入社後、もっともチャレンジングだったプロジェクトについて、聞かせてください。
本当にたくさんありますが……先述した大規模な配信を想定した負荷試験のプロジェクトですね。昨年末から約4か月のプロジェクトでしたが、前半2ヶ月で調査を、後半2ヶ月で改修を行いました。
そうですね。この時は、プログラミングだけではなくフルスタック的な技術理解が求められました。バックエンドの配信構成の理解から始まり、実際の視聴を想定した負荷試験シナリオの作成、ボトルネックの特定および原因調査・解消に向けた処理改修を実施しました。また、突発的なリクエスト数の増減に応じ、配信サーバをオートスケール化することでリソースの最適化を行いました。
未経験となる技術領域での知識が多く必要で、情報整理とタスクに追われる日々でした。Jストリームでは動画という大容量で時間軸のあるデータを取り扱います。加えて、国内屈指の大規模案件にも数多く携わっています。それは、数十万人が同時視聴するライブ配信をほぼ無遅延で実現するレベルです。そのため、システム側では、高負荷な状況にも対処できるよう、無数のサーバを介してさまざまな処理を行う必要があります。
高負荷なシステムへの対処はどうあるべきか――どういうタイミングで処理が重くなり、配信の遅延につながるのかを検証して、改善する必要があります。機能追加を行う際には、プログラムの先にDBがあったり、ボトルネックが複数あったりと、全体像を把握し解決させなければなりません。
負荷試験では、調査内容を資料にまとめ、改修内容を定めるフローが発生するのですが、その過程での情報整理に難しさを感じました。膨大にある情報のなかから本当に必要な点を抜き出し、わかりやすくまとめる。それは組織で仕事を進めるうえで大切ですが、上手にやろうと思ってもつい煩雑化してしまうんです。そういった経験を早いうちに積めてよかったと感じています。
目の前のわからないことだらけの現状に近道でいく方法はなくて、ひとつずつ階段を上っていきました。まずは、セルフコントロールを意識しました。地道ですが、付箋を用意して、一つずつ書き出し、処理していきました。「上司に●●を伝える」「このコードを読む」とか本当に細かなことまで書き出して、達成したらゴミ箱へ入れていく。どんなに小さなことでも達成できたという成功体験を積み重ねていくことで、自信にもつながっていったと思います。
その上で、臆せず先輩に聞き、どんどん頼っていきました。その点では、とても恵まれていたと思います。
「幅広い技術を経験したい」という想いは入社時と変わっておらず、Jストリームで経験できる仕事の多くに携わり、知識や技術の幅を広げていきたいと思っています。バックエンド以外の技術領域も幅広く経験して、いずれはプロダクトマネージャーとしてサービス全体を統括できるポジションに就きたいです。
学生の皆さんへオススメしたいこと
――終盤ではITエンジニアを目指す学生の皆さんからよくいただく質問を、S.O,さんにぶつけてみたいと思います。企業との相性の見極め方にコツはありますか?
様々な企業の方や先輩と話す中で、「自分の2-3年後が描けるか」が、相性の見極めポイントかなと思います。冒頭の話に戻りますが、そのためには、「自分は何が好きで、何が得意なのか」について十分な時間を割いて考えることですね。
最初は、自分には当たり前すぎて「改めて考えるのもな」と思うかもしれません。しかし、これを明確にすると、本当に人それぞれであることに気が付きます。
一人で研究して実装するのが好きな人もいるし、論文読んでみんなでやっていくのも好きな人もいます。例えば、新しいもの好き、一途、アイデアを考える、形にする、型にする、事業を考える、研究する、効率化させる等々あるなかで、それにつながる職種を考えるとよいと思います。
また、キーワードとなる単語を一つに絞ってみるとよいと思います。ただ、その際にできるだけ制限かけないで、あえて“ふわっ”としておくとよいと思います。就職活動時にはまだ知らない会社、仕事、分野が山ほどあります。知らない中で「これしかやりたくない」と決めつけてしまうと、自分自身を狭めてしまうことになります。
エンジニアとしての勉強だけでなく、社会人としての勉強ですね。例えばタスク分解、タスク管理の勉強はエンジニアにも必須だと思います。
今は情報発信・取得ツールもたくさんあるので、情報収集そのものは比較的簡単かと思います。技術情報に触れることにおいて重要なのは、知ることではなくて、「知った上でどう判断し、行動するのか」という次のフェイズにあると思います。そのためには、得た情報をもとに話すことが重要だと思います。
チームや会社の中で話し合って、「今、こういうのがきているから、今後こういうことを勉強しておいたほうがいいよね」と話し合い、それを次の目標にして、新しい技術やスキルを吸収していくサイクルが作れればよいかなと思います。
趣味、開発、人間関係、研究、サークル、バイトなど、人生で培ってきたもののうち、どんなことが未来に影響を与えるのかなんて誰にもわかりません。だからこそ、自分の好き・得意なものを忘れず、のびのびと就職活動を経験してもらえたらと思います。
――JPHACKS 初日のMeetupNightでの交流機会も楽しみですね。参加される学生の皆さんは、ぜひ気軽にJストリームのブースをのぞいてみてください。皆さんといろいろなお話しができればとお待ちしています。本日はありがとうございました。
【関連情報】
・JPHACKS公式サイト https://jphacks.com/
・J-Stream Cloud概要紹介インタビュー 社内共通開発基盤をレガシーからモダン移行した変化と効果
・J-Stream Equipmedia サービス紹介ページ ※Jストリームコーポレートサイトへリンクします
・Jストリーム採用サイト(Development) ※Jストリーム採用サイトへリンクします
※Jストリーム採用サイトへリンクします。
・新卒採用 の求人一覧 ※Jストリーム採用サイトへリンクします
・採用公式LINE https://lin.ee/wyj3Gp2 ※QRコードから登録ができます
・採用担当メールアドレス saiyou(at-mark)stream.co.jp ※(at-mark)を「@」に置き換えてください
※在籍年数や役職を含む記載内容は、取材当時のものです。その後、状況が変化していることがあります。