採用

プライベートクラウドは総合格闘技!?

新卒1年目でインフラエンジニアと社外登壇と採用の3足のわらじを運用してみた

2019年4月、サイバーエージェントに395人(連結)の新入社員が入社をしました。先日開催した社員総会では、半年間で特に高いパフォーマンスを発揮し、活躍した新人を表彰する「グッドスタート賞」として5名の新入社員を表彰。新人賞を受賞したエンジニア職は、半年間どのように過ごしてきたのでしょうか。

Profile

  • 中西 建登(ナカニシ ケント)

    技術本部 PrivateCloud

    2019年新卒入社。現在はメディア事業部プライベートクラウドグループにて、プライベートクラウドの開発などを行っています。

新卒1年目で大型カンファレンスに登壇

― 新卒1年目ですでに複数のカンファレンスに登壇していますが、対外活動を通してどんな体験を得ていますか?

カンファレンスに登壇すると、聞いてくれていた人が懇親会で話しかけてくれたり、発表内容を深掘りした意見交換ができたり、いろんな所属のエンジニアと交流する機会が増えるので、それが楽しいんですよね。

学生の頃から技術勉強会を主催したりして、コミュニティ活動に積極的に関わっていましたし、スライドを作って登壇すること自体も好きでした。対外活動に積極的なエンジニアが多いサイバーエージェントなら、就職後も活動が続けられると思ったのも入社を決めた理由の1つです。

就職してからは発表内容も業務に絡んだ内容になりましたが「どういう話題なら社外の人が興味を持つだろうか」という視点でテーマを考えたりします。

スキルアップと発表ネタ探しの両方を兼ねて、著名なテック企業の技術ブログは欠かさず読むなどして、情報のキャッチアップを日頃からしています。学生の頃から続けている習慣ですが、結果として自分の仕事にもプラスになっていると、実務に携わってみてあらためて実感します。

― 2019年8月末に開催された「builderscon tokyo 2019」という大きなカンファレンスで登壇しましたね。

2019年4月に「TKY02」というディスクレスで運用する、プライベートクラウドの新しいリージョンを立ち上げました。VMをユーザーに提供するのがプライベートクラウドですが、そのVMを動かす物理的なサーバーにHDDやSSDを搭載せずに運用するのが特徴です。

インフラエンジニアである私は「TKY02」の開発運用に携わっていて「builderscon tokyo 2019」では「なぜディスクレスハイパーバイザに至ったのか」というタイトルで登壇しました。

ディスクレスのメリットは、VMなどの状態を物理サーバに配置しないことにより、様々な工数を削減できる点にあります。何よりハードディスクという壊れやすい機材を搭載しないことで、ディスク交換をはじめとした運用管理コストが大幅に削減されました。

一方で、OSが保存するような再起動前の情報もまっさらな形になるので、その都度必要なプロセスを立ち上げたり、各種設定を反映させる必要があります。そのフローをいかに自動化するかは苦心しました。

なぜディスクレスハイパーバイザに至ったのか

プライベートクラウドは総合格闘技!?

― 新卒1年目で参加した、プライベートクラウドの大規模刷新プロジェクトでは、どんな体験を得られましたか?

実は、ディスクレスのアーキテクチャ設計は、私が入社する前にほぼ終わっていました(笑)。入社してからの私のミッションは、主に周辺のバグ修正に取り組んでいます。

「TKY01」という1つ前のリージョンでは起きなかった不具合が「TKY02」では発生するというケースもありました。例えばLANケーブルや光ファイバーを挿すNIC (Network Interface Card) のドライバにバグがあり、それが原因でメモリリークが発生していた障害もありましたが、この問題の解決にはネットワークだけでなく、OSSのソースコードを読解する力も求められるなど、総合的な技術力が求められるもので、かなり苦労しました。

先輩や上司はよく「プライベートクラウドは総合格闘技だ」と言っていて、僕もこの言葉が好きです。

例えばクライアント開発が得意な人、フレームワークを駆使してWebアプリケーションを開発するのが得意な人などが社内にいます。その担当部分はOSI 7階層モデルで表現するならアプリケーション層と呼ばれるL7(レイヤー7)となります。

一方、プライベートクラウドは職業柄、L1(レイヤー1)という物理層から始まってL2のデータリンク層、L7のアプリケーション層まで、幅広く対応する必要があります。

また、ヒューマンコミュニケーションや交渉力まで求められるのがインフラエンジニアの難しいところでもあり、楽しいところでもあります。

ー ヒューマンコミュニケーションや交渉力とは?

物理サーバーの購入から、ネットワーク回線の敷設、データセンターのラック契約など、事業会社がサーバーを利用する場合、関わる設備は多岐にわたり、かつ高額な費用が発生します。まさに数%の価格の変化であったとしても、新卒の自分からしたら目玉が飛び出るほどの金額であらわれてきます。

そのため、ベンダーやプラットフォーム業者との価格交渉や、有利な契約を結ぶことが重要で、先輩たちは先頭に立ってその役割を担っています。技術やサービスについて知識と経験をもちつつ、ヒューマンコミュニケーションや交渉力をかけあわせてやりとりするので、エンジニアの強みが最大限に活かせるミッションとも言えます。

人と人との信頼関係も大切で「サービスが伸びているので何日までにサーバーを何十台 用意してほしい」とお願いされても、ベンダーとの関係性ができていないと、物理的なサーバーはすぐには調達できません。事業に必要なリソースをスピーディに調達できるかどうかも、インフラエンジニアに紐付く、人間関係や信頼関係が重要になってきます。

ー OSI7階層モデルから価格交渉、資材調達までやるという点では「総合格闘技」という表現はわかりやすいですね。

はい(笑)。先輩たちを見習いながら日々勉強中です。

― その一方、エンジニアとして普段から心がけていることはありますか?

最近はOSS文化が広まってきて、OpenStackやLinuxを含め多くのプロダクトでコードが公開されています。それらを導入したサービスの運用中に何かトラブルが起きたら、公開されているソースコードを読むことを心がけています。

「プログラムは思った通りに動くのではなく、書いた通りに動く」という言葉がありますが、まさにそうだなと思っています。

前述したNICのドライバに問題があったというケースでも、それまでLinuxのカーネルのコードなんて読んだこともありませんでしたが、LinuxのOSが認識できないメモリはどこにあるのかというところから始めました。そしてLinuxのカーネルのコードを読み進めていくと、メモリリークしている箇所になんとか行き当たることができました。

社内でよく使っているのはGo言語ですが、OpenStackはPythonで実装されていますし、LinuxカーネルはC言語です。個々の言語について専門とまでは言えなくても、仕事をする上で一定の理解は必要になってきます。その辺りも総合格闘技っぽくて私は好きです。

ー AWSやGCPなどパブリッククラウドを利用していれば、そういった障害対応をアウトソースできませんか?

AWSもGCPも非常に便利なのですが、一方で何か障害が発生した場合こちら側では何もできず、ただベンダーからの連絡を待つだけになってしまう可能性もあります。障害に関してもプラットフォーム側の問題なのか、自社サービス側の問題なのかの切り分けができることが必要ですし、もし自社のサービス側の問題だった場合はこちらで対応する必要も生じます

だからというわけでもありませんが、AWSやGCPで新しいプロダクトがリリースされると一通り調べたります。使っているのは同じコンピューターなので、どうにかすれば理解できるはず(笑)。もちろん実際に同じものは作れませんが「どうやって作っているのか」は常に気にしています。

大抵はプロダクトの一部だけでもOSSとして公開してるので「こういうのが出ていますね」とチーム内で話をしたり。技術的な雑談をする機会は多い職場だと思いますね。実はそこもサイバーエージェントを選んだ理由の1つです。

― プライベートクラウドとパブリッククラウドの棲み分けをどう考えていて、プライベートクラウドをどう利用してほしいと思っていますか?

パブリッククラウドとプライベートクラウドはどちらも良い面があると考えています。パブリッククラウドであればマネージドサービスが豊富なので、運用に人的コストを割きたくないのであればマネージドで、という判断になると思います。

逆にプライベートクラウドについては、一番の強みは価格だと思っています。例えばハイスペックなVMがたくさん必要になるようなケースなら、プライベートクラウドという選択は当然あると思います。

またサイバーエージェントには社内ベンチャーがたくさんあります。自分たちで運用する技術力があるなど要件が合えば、最初はプライベートクラウドでコストを抑えてスタートし、収益が上がってきたらパブリッククラウドに寄せていくという手法もあります。

世の中にはプライベートクラウドしか使わせてもらえないという会社もありますが、サイバーエージェントの場合は「ここはGCPで」「ここはAWSで」「この部分はプライベートクラウドで」という使い分けができます。

そこがサイバーエージェントの面白いところなんですよね。選択肢があるのは大きなメリットなので、自分たちに合うものを見極めた上で使ってもらえれば嬉しいです。

また現時点ではまだ何も決まっていませんが、マネージドサービス的なものも今後開発できたら面白いなと思っています。先ほど言ったようにAWSやGCPの新たなサービスも追いつつ、より良いものを作っていければと思います。

インフラにちょっとでも興味がある学生のインターン 受け入れ中!

― 中西さんは採用に関しても積極的に関わっていますね。

「スクラム採用」という言葉もあるように、一緒に働くエンジニアの採用についてはエンジニア自身も採用に関わっていくべきだと思っています。実情として自分の所属するチームのメンバーがまだまだ足りていないというのもありますが(笑)。

そう思って積極的に取り組んでいたら、いつの間にかインフラ採用のリーダーの1人になっていました。もちろん誰もがそこまでする必要はありませんが、全部人事の方に任せていいのかと言えばそれも違うと思います。

特にインフラの場合、学生でインフラをやっている人が非常に少ないんですよね。例えばRailsやRubyでアプリケーションを作りたいのであれば、パソコンを1台持っていたらとりあえずインストールして動かして勉強することはできます。

ではインフラはと言うと、そもそも物理的なサーバーに触る機会がありません。定価でサーバーを買うと高いので、オークションなどでサーバーを買うのがコツだったりするのですが、そういったことをを知らないとお金の面からして最初からつまづいてしまいかねません。

ー インフラが好きな学生とはどんなレベルをイメージしていますか?

先日「データセンター見学会」というイベントをやったのですが、参加者6人が全員「家にサーバーがあります」と言っていましたし、そのうち4人はラックまであるということでした。

すごい人たちが集まったなと思い嬉しくなりましたが、インフラに興味があるといっても、そこまでディープでなくて大丈夫です(笑)。

「インフラにちょっと興味がある」ぐらいで構わないので、ぜひ参加してもらえればと思います。その結果、就職活動の第3候補ぐらいまでにインフラエンジニアが入っている人が増えたら嬉しいですね。

技術本部では積極的にインターンを常時募集していますので、興味がある学生はぜひ!

※ データセンター見学会は、2019年12月に第2回が開催予定。現在参加者 募集中です

―インターンではどんな仕事を体験できますか?

我々のチームのインターンではサーバ、ネットワーク機器、ストレージなどなど、大規模運用されている大きな物を使って遊ぶことができるので、学生にはなかなかできない経験が得られると思っています。

やはりインフラは、大規模なトラフィックが流れてこそ得られる知見もあるので、そういった現場の経験は、将来的に活きてくると思います。

インターン中のテーマについては、あえて自由にしています。最初の課題は「うちのプライベートクラウドをより良くする何かを提案/実装してみてください」に設定しています。

もちろん我々 社員が抱えているタスクを渡してもいいのですが、せっかくならもっと新しく面白いことをやってもらえればと思っています。

これまでインターン生が出してきた提案で言うと「FacebookのXDPという技術を導入できないか」というものがありました。これは端的に言うと同じLinuxのサーバーを使いつつネットワークの転送効率がより速くなるという技術で、導入できれば弊社のクラウド基盤でも高速に通信できるのではないかという提案でした。

ただ検証をするためにはかなりのマシンパワーが必要で、学生としても家では試すことができません。そこで会社の機材を使って検証してもらったわけです。最終的にはなかなか良くなりそうだという検証結果が出ました。

また別のインターン生(現 内定者)に書いていただいたインターン参加時に書いた「DockerオーバーレイネットワークとCalicoの比較」というブログ記事があるのですが、3年ぐらい前の記事にも関わらずPV数が非常に多く、そこで検証されている技術が今、Kubernetesでよく使われているというケースもあります。

― サイバーエージェントで働く楽しさってなんですか?

インフラ業界はやっている人が少ないですが、その代わりに業界全体の雰囲気がアットホームなところがあり、会社を超えた繋がりが多いのも魅力の1つだと思います。

私はサーバーの管理も面白いと思っていますが、開発やコードを書くことも並行してやっていきたいと考えています。そして今の職場ではそれが実現できています。

サイバーエージェントという会社はやりたいことをやらせてもらえる会社です。

私自身もプライベートクラウドを運営しつつ、対外活動や採用活動、パブリッククラウドの勉強など自由にやらせてもらっているので、色々なことに挑戦したい人には良い環境なんじゃないかなと思います。

新卒採用のオフィシャルSNSアカウントをフォロー

  • Facebook
  • Twitter
Page Top