Forkwell Press

エンジニアの生き様をウォッチするメディア

Linux Kernelのソースコードを、半年間読んでいました。小原崇寛(株式会社Fusic)~Forkwellエンジニア成分研究所

f:id:grooves:20181102175458j:plain

「どうやって動いてるんだろう?」って知りたかったんです

――現在の業務内容について教えてください。

小原 主に、WEB系の業務システムとインフラを担当しています。WEB系は業務システムを作ったりするのがメインですね。インフラは主にAWSのサービスをお客様に提供したり、お客様がAWSを使いたい時のお手伝いをしたりしています。

――インフラ、サーバーまわりのことをやられているんですね?

小原 そうですね、インフラまわりで相談を受けたりしますね。

――メンバー紹介ページには、印象的なエピソードがありますね。入社前に就職せず半年間、Linux Kernel関連のソースコードをとことん読み込まれたとか。

小原 「働き始めたら、好きなことができなくなる」と思って(笑)。フリーターという形で時間を作って、好きなことを半年間やろうと思ったんです。それで興味のあったLinux Kernelを読んでみようと思いました。

――就職しないことで、ご家族に心配されたりしませんでしたか?

小原 「他人に迷惑をかけなかったら大丈夫」と言われてましたので、特にそのことに関しては心配してなかったと思います(笑)。

――それで半年間、Linux Kernelのソースコードをとことん読み込まれたと。

小原 実際にコードを読んだり、Linux Kernelの本を参考にして「どの部分がどの部分と紐づいているのか」などを読んでいました。構造がどうなっているかを完全に知りたかったのですが、めちゃくちゃ難しくて。「本当にこんなの、人が書いたのか?」というぐらい難しくて、一部分ずつ読んでいきました。それであっという間に半年経ってしまったので、しょうがなく就職活動を始めようと思ったんですよね。

――すぐに就職しないで休暇を取るぐらいLinux関連に引き込まれたということじゃないですか。その理由ってどのあたりだったんですか?

小原 「これどうやって動いてるんだろう?」というのと「自分が使うものなのである程度知っておきたいな」という気持ちが強かったですね。

f:id:grooves:20181102175548j:plain

ハマったら、とことんやり込んでしまうんです

――Linux自体に触られたのはいつ頃からなんですか?

小原 18歳の頃なので専門学校に入学してからですね。入学して半年ぐらい経ってからLinuxを触り始めました。

――最初に触った時はどんな感触だったんですか?

小原 学校の先生に「サーバーまわりをやりたいんですけど」と相談した時にLinuxというものがあると教えてもらって。LinuxがOSなのも、その時初めて知ったぐらいでした。

専門学校はゲームを作る学校だったんですけど、「これからはオンラインゲームだろう」と思ってインフラを勉強しようと思いました。サーバーまわりについて相談したのもその頃です。Linux中心でサーバーを構築したり、ネットワークの資格の勉強をしたり、インフラメインで勉強していました。

――そこまでインフラに惹かれた理由は、どのあたりにありましたか?

小原 アプリケーションを支えている、というところに魅力を感じました。例えばサーバーとクライアントの間にネットワークがつながる際、どんなことをしてるか、どうやったら最適な経路でメッセージを送れるか、などそういうことに惹かれて勉強してました。技術的な領域が自分の興味のある部分とマッチしてたというのもあります。

――インフラ周りが整備されていないと、アプリケーションも十分なパフォーマンスを出せないものですよね。

小原 そうですね。例えばサービス内容にもよりますけどWEB画面を開くのに10~20秒かかったりしたらお客様のストレスになったりしますよね。アプリケーションが問題である場合もありますが、インフラが整備されていないとそういうことが起きたりします。

――専門学校に入るまでは、それほどプログラミングは勉強されていなかったんですか?

小原 全く知らない状態でした。専門学校に入った理由も「ゲームが好きだったから」程度で。プログラミングは知らないけど、とりあえずゲームが好きだから入ろうと。勉強は全然していませんでした。

――気になったものは、その成り立ちから調べないと気が済まない気質だったりするのですか?

小原 成り立ちというよりもハマったらとことん続けてしまうところがありますね。学校に行ってる時も、インフラの勉強がしたかったので先生に許可を取って授業中にインフラの勉強をしたりしてました。ゲームも好きだったので夜間にずっとゲームをして、学校ではあまり授業を聞いてなかったこともありました(笑)。ハマったらとことんやりたくなってしまうんですよね。

――Linux Kernelもやり込み要素があるんですか?

小原 そうですね。そもそもOSがどう動くのか、割り込み処理が発生した時にCPUでどう処理されているのかとか、やり込み要素がありますね。例えばマウスを動かした時に、マウスを動かすイベントを挟み込んで、今動いているものを退避させてマウスを動かす、その時にどう処理されているかとか。あとはメモリ空間をどう使っていて、どのようにアクセスしているかだとか。主に読んでたのがメモリ部分だったんですけど、メモリ管理の方法とかもやり込める要素ですね。

f:id:grooves:20181102175623j:plain

好きな言葉は「初期値鋭敏性」です

――メンバー紹介ページに「初期値鋭敏性」という文言があるのですが、これはどういう意味ですか?

小原 例えば角度が1度上がっている状態を伸ばしていくと、最終的にものすごく幅ができてしまう。それが「初期値鋭敏性」です。今やっていることは将来的にものすごく影響のあることなので、今を大事にすること。ちゃんと勉強をしたり、こういうエンジニアになりたいという将来像を見越して少しずつ積み重ねること。それをモットーにやってます。

――初期値鋭敏性というところでいうと、「これをやっていたから今こういう成果を得ている」と実感することはありますか?

小原 学生の頃にインフラの勉強をしていたことは、今の仕事に活かせていますね。大規模なネットワークの構築に携わらせてもらう機会もありました。インフラ関係で相談を受けることもありますし、AWSの案件なども基本のインフラを知っているのと知らないのとでは理解の深さが変わってくると思うので、学生の頃に勉強していてよかったと実感しています。

――ご自身の成長のために日々行なっていることはありますか?

小原 エンジニアとしては、外部発信を日頃から意識してやるようにしています。勉強会とかで登壇したり、福岡で開催されたPHPカンファレンスで登壇させてもらったり、ブログやQiitaで記事を書いたり。できるだけ、外部に発信することを日常的にやっていこうと思っています。

僕は、あまりリモートワークを使いません

――ここからは、小原さんが働く上で大切にしていることについて、「事業内容」「仲間」「会社愛」「お金」「専門性向上」「働き方自由度」の6つの項目から合計20点になるよう、点数を振り分けていただきます。

f:id:grooves:20181102175650p:plain

・専門性向上 5

スキル向上は一番重視している部分です。業務で使わないような技術もちゃんとキャッチアップして、専門性が身についていないと、言ってしまえばどこにでもいるエンジニアになってしまうので。それだとつまらないですから。

・仲間 5

刺激になる人と一緒に働くと「自分も頑張らないと」という気持ちになります。あとは、面白い人がいればその人の知識を共有してもらえるので。「この人と働きたい」という人と一緒の環境にいたいです。自分よりもすごいエンジニアがたくさんいますし、知らない知識をすごい勢いで話したりする人もいるので、今の環境はすごく恵まれた環境だと思います。

・お金 1

あまりお金にこだわりはなくて。あればあるほど使ってしまうので(笑)。典型的な貯金できないタイプです。お金は、本や資料を買えて最低限生活できれば良いかなと。全然こだわりはないです。

・事業内容 3

自分のやりたい仕事ができることは大前提ですが、ただやりたい仕事だけやってると幅が狭くなります。今はお客さんの前で話すことや、自分が得意でないこともさせてもらえる機会があるので。そういう部分も大事ですね。

・働き方自由度 3

ある程度自由に仕事ができれば良い一方、会社としてある程度のルールはあったほうがいい部分もあります。双方良し悪しあるので、3ぐらいかなと思います。

――小原さんご自身はリモートワーク制度を使われないんですか?

そうですね、あったとしてもあまり使わないと思います。出社するとスイッチが切り替わりますし、会社の方が環境が整ってたりしますから。会社の方が家よりいい環境なので休日に会社に来て業務とは関係のないプログラムを書いたりとかもしています。休日に家にいると、どうしてもダラダラ過ごしたり誘惑が多かったりするので。会社に来てがっつりやる方が効率的にできるかなと思います。

・会社愛 3

働いてて楽しいですし、気持ち高めの点数ですね。会社の雰囲気も良いですし、働きやすい環境を整えてくれています。エンジニアを大事にしてくれる会社なので。

――最後に、転職を志している方にメッセージをいただけますでしょうか?

転職すると決めたら、やり遂げないといけないと思いますね。転職先で後悔しないような選び方とか、転職元の会社に対して誠意を持って対応するのが大事かなと思います。あとは、後悔することはあるかもしれないですけど、自分の気持ちに正直になるのが一番だと思います。

<了>

ライター:澤山大輔


Forkwell Portfolioは、エンジニア向けのポートフォリオサービスです。 Gitリポジトリを解析して、あなたのアウトプットをグラフィカルに可視化します。

Forkwell Portfolioのご登録はこちら!

20180925152538