Y.N.さん(バックエンドエンジニア)
小学生のころからプログラミングに夢中。新卒なのに入社した時点でプログラミング歴は10年以上。高校生のころにはRaspberry Piでサーバを組み始め、入社をきっかけに仮想基盤を構築したことでさらに自宅サーバが充実してきている。 利用技術:Golang、Python、JavaScript、PHP、Ruby、Kubernetes、Dockerなど
今回は「ITエンジニアのやりがい」をテーマに社員インタビューを行いました。登場するのは、今年4月に新卒入社2年目でテックリードに就任したバックエンドエンジニアのY.N.さん。社内の共通開発基盤であるJ-Stream Cloud(ジェイストリーム・クラウド)の開発を率い、同基盤の設計や技術選定、コード・品質向上に向けて取組んでいます。
幼少期からコンピュータを楽しみ、学生時代から開発経験豊富なY.N.さん。Jストリームでは、どのような経験や挑戦をしながら、自身の技術力をやりがいに変えているのでしょう。Y.N.さんの半生や仕事観についてたっぷり聞かせてもらいました。
プログラミングに夢中になった学生時代
― 最初にY.N.さんが、ITに興味を持つきっかけについてうかがえればと思います。いつ頃、どのようなことがあったのでしょうか?
小学4年生の頃でした。きっかけは、父のパソコンが壊れたことです。父は、パソコンを新調したのですが、「直ったら譲るよ」と古い方も修理に出してくれたんです。戻ってきたそのWindows XPのパソコンが、私が初めて所有するパソコンとなりました。
最初は「ソリティア」や「ペイント」で遊んでいましたが、そのうちExcelで遊ぶようになりました。表計算や図の挿入に始まり、小学6年の頃にはマクロ機能にも触れるように。そこでVBAを知ったことが、プログラミングを始めるきっかけになりました。今振り返ると、Excelの何がそんなに楽しかったのか?と疑問なのですが(笑)。当時は「ボタンを押すと数字や図が変わる」という不可思議な仕組みに面白さを感じていたのかもしれません。
― Excelで遊んでいたとは驚きました。中学以降も、変わらずプログラミングを続けたのですか?
そうですね。中学時代ではVBAだけでなくVB.NETも覚えて、ちょこっとしたツール系のアプリケーションを作り遊んでいました。数としては、100本ほどでしょうか。高校で入った部活は、主にコンピュータについて学んだり体験したりする電気部。高校時代には、「パソコン甲子園」という競技プログラミングの大会にも出場しました。その後、縁あって、パソコン甲子園を主催する会津大学への進学を決めました。会津大学はコンピュータ理工学部 コンピュータ理工学科のみで構成された単科大学です。興味を惹かれ、私も飛び込びました。入学してみると、キャンパスは、コンピュータ好きな面白い人であふれていました。
― 大学時代は、どんなことに取り組んでいましたか?
今の自分に最も影響を与えたでき事は、大学1年から修士までかかわった「Aizu Geek Dojo(アイズ ギークドウジョウ、以下Geek Dojo)」での経験です。「Geek Dojo」とは、3Dプリンタやレーザーカッターといった最新の工作機械が設置されている大学内のラボで、学生が思いついたものをすぐに形にできる場所です。私が大学1年の時に、Geek Dojoがオープンしまして、私は、初代スチューデントアシスタント(SA)、そしてティーチングアシスタント(TA)を務めました。
Geek DojoでのSA、TAの役割は、工作機械を利用する学生に対して、モデリングの方法をレクチャーしたり、事故を未然に防ぎながら支援・指導することです。私はたまたま教授からの推薦がありSAになったのですが、なにしろソフトウェア側の人間なので、それまで工作機械に触れたことは一切ありませんでした。
しかしAdobe IllustratorやCADソフトについて勉強したり、3Dプリンタで棚を作ったりするうちに、その楽しさが分かるように。そしてハードウェアもソフトウェアも同じ「モノづくり」だと気づき、自分はモノを生み出すことがとにかく好きなのだと気づいたんです。
― ソフトウェアだけでなくハードウェアにも触れたことで、自己理解が深まったんですね。その後の学生生活においても、たびたびモノづくりのやりがいを感じたそうですね。
チーム開発の醍醐味を感じた経験としては、大学3〜4年にわたり同級生5人で学内ブックセンター(学内の書店)の在庫管理システムの開発があります。実際に利用する方からの要望をもとにゼロからシステムを作るのは、初めてだったので、印象に残っていますね。学内ブックセンターの課題は、「棚卸し作業をラクにしたい」というものでした。それまでは毎回1冊1冊スキャンして在庫を確認していたため、リストを見るだけで在庫が分かる状態にしたいとのことでした。
実はこのプロジェクトは、歴代多くの先輩が取り組んできたものの、志半ばで完成を断念し引き継がれてきました。学業との両立という背景もあり、開発を続けるのは大変でした。引き継ぐといっても、まったく新規に作る形で開発に着手しました。我々も一度頓挫しかけたのですが、何とか完成させたいと気を引き締め直し、週1度は集まってビルドアップしていきました。その甲斐あって、システムは無事に完成しました。
― それは、よかったですね。そのシステムは、その後どうなりましたか?
システムは現在も使われているんですよ。完成の要因には、仲間の存在が大きかったと思います。私一人だったら、なしえなかったと思います。この時のメンバーは、皆、学生ながら高い技術力を持ち、プロ意識の高い人達ばかりでした。
このプロジェクトで、「最後まで諦めずにやり抜く」という成功体験を積むことができ、チームの大切さを実感しました。
大学院に進学後も、たくさんの貴重な開発経験ができました。ある時は、大学からの相談で、職員の方と友人の計3名で、コロナ禍での学生支援物資の受付・予約システムを1か月ほどで作りました。またある時は、他大学での研究室用システム開発を経験しました。
― チャンスとチャレンジにあふれた大学生活だったんですね。今年の5月には、JストリームITエンジニアとして母校訪問をされました。
はい、会津大公認の技術系サークルZli(ジライ)が主催するLT大会があり、JストリームのITエンジニアとして登壇しました。主催者の皆さんから、「ぜひ配信系の話を」というリクエストをいただいたこともあり、私は、動画配信を1フレーム単位の高精度で切替える技術についてプレゼンテーションを行いました。
会津大学公認の技術系サークルZli(ジライ)主催LT大会での登壇風景
― 当日は、参加学生の皆さんの声援がすごかったですね。
心強かったですね。当日は、学生も企業の垣根なく技術について語りあいました。またJストリームに関連する技術を知ってもらえ、とても楽しい母校訪問でした。
未来への可能性を直感した面接、未経験の技術領域へのチャレンジ
― では、就職活動についても聞かせてください。選考を受ける企業はどのような軸で選びましたか?
企業選びはとても難しかったです。私のまわりは、先ほどの在庫管理システムの開発メンバーなど優秀な人がとても多くて、なかなか自分に自信が持てなかったんです。モノづくりがしたい、そして作ったモノに対して愛着を持って育てたいと漠然とは思っていました。しかし、その気持ちをどのように昇華すべきかが見えていませんでした。
そのため、就活時期になっても積極的には動けず、自分がしたいことも見つけられずにいました。そんなときに知人から教えてもらったのが、企業側からスカウトが届くタイプの就活サイトでした。そして、このサイト経由で声をかけてくれたのがJストリームだったんです。
― 応募当時、Jストリームに対して、どんな印象を抱いていましたか? また、入社後に印象が変わった部分はありましたか?
正直に言うと、BtoBサービスということもあり、最初はJストリームがどんな会社なのか全く知りませんでした。「大丈夫な会社なのだろうか…?」と不安も感じていました(笑)。
その後、企業説明を受けたときは大きな衝撃を受けました。まだ動画配信という言葉が一般的でない27年も前からこの事業を手がけていること、数多くの有名企業と取引していること、インフラ構築、配信プラットフォームをはじめとした自社プロダクトの開発、ライブ配信、そして動画制作と、動画配信に関連するあらゆる領域を自社でカバーしていることなど、技術力の高さや27年間にわたる蓄積の重みを目の当たりにしたんです。
― Y.N.さんは、他社からの内定も出ていたそうですが。
私は、大学や大学院で情報セキュリティに関する研究をしていたので、セキュリティ企業からも内定をいただきました。学生時代の専攻分野でもあり、興味はありましたが、違う可能性へ踏み出したい気持ちもありました。
― アーキテクトの大川さんとの面接が、入社の決め手だったと伺いました。
そうなんです。初めて面接でお話しした際に、「大川さんがいる限り、この企業はITエンジニアのための環境をしっかり作ってくれるだろう」と直感したんです。
まず、面接といえば、見ず知らずの人と喋る緊張感があるのが普通ですよね。ですが大川さんとは、まるで知り合いと喋るかのように自然に技術の話ができたんです。またお話の中で、大川さんが非常に優れた技術者であることや、ITエンジニアのことを第一に考えて職場環境を整備している方だということが窺い知れました。
実際にJストリームは、ITエンジニアのための人事制度や教育・自己研鑽などをはじめとした施策を多く企画・実行していて、とても働きやすいです。ITエンジニアより営業組織を重視する企業も珍しくないなかで、とても希少だなと思います。
加えて、未経験の技術領域へチャレンジできるのも魅力的でしたね。私はこれまで多種多様なシステムやアプリを手がけてきましたが、動画配信に関する技術には触れてきませんでした。難しそうというイメージもあり、なかなか手が出せずにいたんです。そのため、ここでの経験は自分自身の勉強にも繋がるだろうと考えました。
その上で、「モノづくりが好き」という気持ちを仕事に活かせること、愛着を持って自社プロダクトを育て続けられること、という要素が重なりました。そして、希望通りの環境でITエンジニアとして安心して技術に打ち込むことができるという結論に至ったのです。
― ご自身のITエンジニアキャリアとしての可能性を、Jストリームに見いだされたのですね。
新卒1年目、配属後3か月で新機能開発を主導
― 入社1年目はどのような仕事を手がけましたか?
2ヶ月ほど全社研修を行ったあと、社内の共通開発基盤であるJ-Stream Cloudの開発・改修を行うチームに配属となりました。配属当初は簡単なバグ修正や開発環境の整備といった業務から始まり、9月頃から開発を担当しました。
Jストリームでの初めての開発は、J-Stream Cloudにおける動画の配信形式変換に関する新機能でした。この機能について、補足説明します。動画配信の形式には、HLS(HTTP Live Streaming)やRTMP(Real Time Messaging Protocol)など複数あるのですが、それぞれ機能面の違いや特徴があります。
この時でいうと、擬似ライブ配信(録画済みの動画ファイルをライブ配信すること)のためにはHLS形式を用い、暗号化ライブ配信や認証配信のためにはRTMP形式を用いる必要がありました。そのため、複数の動画配信形式をシステム側で自動的に変換し、一連の流れを成立できるようJ-Stream Cloud側に機能追加しました。この新機能は、会社でも重視しており、1年目でこんな大きな仕事を任せてもらえるんだと驚きました。
さらには、開発後のリリースも私が主導で進めることに。メンターの先輩社員に手伝っていただきながら、何とか乗り越えたのを覚えています。大変な仕事でしたが、その分刺激的で貴重な経験となりました。
― 配属直後から、即戦力としての活躍ぶりですね。その他、印象に残っているプロジェクトはありますか?
動画配信用のチャットサービスをリプレイスしたのも印象的でした。本来はちょっとした機能追加だけで終わる予定だったのですが、その後の性能テストで「処理できるチャット投稿数が想定以上に少ない」ということが判明し、バックエンド側の言語をPythonからGoにまるっと書き換える大規模プロジェクトに様変わりしたんです。
― 「処理能力が想定以上に少ない」ですか。
はい、「チャットサービスを作る」ことと、「大規模案件にも耐えうるチャットサービスを作る」ことは、別物です。Jストリームでは、国際的な有名イベントなどをはじめとした大規模な配信を数多く手がけており、自社が求める開発難易度の高さを感じました。
しかも、プロジェクトに参加していたのは当時入社3年目の先輩社員と、1年目の私、そして数か月前に参画いただいた業務委託の方という若手3人でした。最初は戸惑いましたが、3人で「言語をGoに書き換える」という解決方法を導き出し、提案しました。私は、設計・開発を主導しましたが、最終的には、当初の約10倍という大幅なパフォーマンス向上ができ、本当に嬉しかったですね。
新卒2年目でのテックリード就任
― 2年目となる今年4月より、テックリードとして活躍されています。現在はどのような業務を手がけているのですか?
引き続きJ-Stream Cloudの開発・改修を手がけています。テックリードとして技術選定や設計のリード、コードレビューを含めたコード・品質向上に向けた取組みを行っています。
― 心境や意識の変化はありましたか?
今までは自分のペースで過ごしていた部分もあったのですが、そんなにのんびりしていられないなと思うようになりました。私が行った技術選定が将来に影響を及ぼしてしまうこともあるので、まずは適切な判断ができるよう技術を磨いていかねばなりません。今春にネットワークスペシャリストの試験を受けたのですが、近くDBスペシャリストの試験も受験する予定です。
― テックリードとして、バックエンド開発上の課題や重点項目について考えを聞かせてください。
実は今、J-Stream Cloudの構造をゼロベース思考で考え直すプロジェクトが始まっています。既存のものはAPIが複雑化していてメンテナンスコストが上がっていたり、ユーザーフレンドリーではない部分もあります。現在のJ-Stream Cloudは、社内のITエンジニアのみが使用していますが、将来を見据え、それ以外のユーザーも視野に入れて考え直しています。現在は、幅広い次世代モデルという枠組みで発想して、大胆に構造改革すべきときだと考えています。もちろん堅牢性も担保しつつです。
先ほど「DBスペシャリストの試験を受ける予定だ」と話しましたが、これも次世代を見据えた準備の一つです。ユーザーのリクエスト内容を保存して、今後の行動予測から最適なJ-Stream Cloudの構造を見通したり、使用ボリュームを計測して課金システムを作ったり……など、それは新たなビジネスの可能性を含むものになります。
そのためにDBの知見が必要なので、テックリードとしてプロジェクトを率いていけるよう専門性を高めていきたいです。
― 入社して1年半で、さまざまなミッションや技術に取組まれていますね。
そうですね。Jストリームは動画配信関連技術が非常に強い上、最新技術を惜しみなく取り込もうとする姿勢があります。新人や若手の意見も大切にして、反映してくれる環境なので、私もこの1年半弱で様々な経験を積めました。「新しいことにチャレンジして新しいモノを生み出す」という仕事ができていることが、今の何よりのやりがいです。
― ご自身の価値観と照らしてみて、入社後のギャップはありましたか?
いいえ、ありませんでした。ITエンジニアとして成長するために、自分が学生時代から大切にしてきたことは、チャンスを逃さずチャレンジすることでした。チャレンジが次のチャンスをもたらし、またチャレンジすることで成長を続けられます。若手の意見を尊重し取り込んでいくJストリームの環境は、若手ITエンジニアにとってチャンスとチャレンジにあふれています。Jストリームを選んで本当によかったと思っています。
― 新卒入社2年目ということで、正直なところ、上下関係の難しさや仕事のしにくさを感じることはありませんか?先輩社員から質問や相談を受けることもあると思いますが。
これがJストリームの大きな魅力だと思うのですが、そういった難しさを感じることは全くありません。社歴や年齢による「こうしなければならない」がないんですよね。1年目の時から、先輩や同僚とはお互いに「これは、どうすればいいかな?」と軽いノリでお互いが質問しあい、雑談みたいに会話してきました。1年目の時も必要に応じてコードレビューをしていました。その点、テックリードになり業務内容が大きく変わったという気負いもなく自然体でいられます。
私は、単純に技術が好きで、技術のことになると楽しくて、話がとまらないんです。JストリームのITエンジニア組織は、同じような方が多いと思います。当社には40代50代のベテラン社員も多く在籍しているのですが、誰とでもフラットに話せるんです。むしろ、ベテラン層の方々のほうがノリノリで喋ってくれるくらいです(笑)。その気になれば社長ともフランクに話せるはずですよ。私が2年目でテックリードになれたのも、風通しがいい当社だからこそだと思っています。
― 今後の目標や、理想としているITエンジニア像を教えてください。
まだ先のことはあまりイメージできていないのですが、理想としているのはやはり大川さんです。どんな難題にもスッと答えを出せる、技術力の高いITエンジニアになれたらいいなと思っています。
― 終始笑顔のY.N.さんとお話ししていると、こちらも自然と笑顔になり、好奇心を掻き立てられました。これからのチャレンジと活躍も楽しみにしています!
※在籍年数や役職を含む記載内容は、取材当時のものです。その後、状況が変化していることがあります。