O君Profile
入社 | 2020年4月 新卒入社 |
現在の職種 | プログラマ(PHP) |
職場 | 仙台・ときどきリモート |
出身 | 仙台高専 |
聞き手
仙台支社長 澤田周
実は全然知らない会社だった、ILに入社するまで
現在の仕事の内容を教えてください
PHPでゲームのサーバサイドの開発を行っています。僕が現在担当しているのはリリース前のタイトルで、ILは8人のチームです。具体的には、ゲームアプリケーション側から送られてくるデータを整形してDBに保存する、というような部分を担当しています。ゲームのどの機能、というよりは、ゲームのメイン部分だったり管理機能だったりと、様々な部分に携わっています。
-やってみてどうですか?
ゲームアプリケーションを手元で実際に動かして動作を確認できることもあり、やりごたえを感じています。動作を確認して、出来ているな、と見ることができる、良いサイクルで開発できていると思います。
学生時代はどのような学生でしたか?
仙台高専の機械システム工学科という、もう名前が変わったコースなのですが、旋盤で金属を削り出したりだとか、メインで勉強するのは工業力学ですね、数学、熱力学、応力計算といったようなことを学ぶコースを卒業しました。プログラミングはあまり授業ではやらないようなコースで、趣味でちょっとだけやっていたような感じです。部活はプログラミングを行うところに所属していて、Unityで簡単なゲームを作り、学校祭に出したりしていました。プログラミングを始めたのは高専に入ってからで、中学生までは普通に暮らしていました。
-どうして機械系からILに?
一般的な入社の時期を逃してしまって、12月ぐらいまで来ちゃっていて。今更学校推薦も無いよなぁという気持ちになり、仙台で一番ユルそう、と言ったら何ですが、面白そうだった会社がインフィニットループだったので、応募しました。
-確かO君の場合、それぐらいの時期に先生から電話があったように記憶しています
そうなんです、僕もあの場に居たんですよ。進路指導室みたいなところで、先生に「お前どうするんだ」って言われていて。うかうかしていると僕が何もしないので、僕が逃げられないようにその場で電話を掛けるという(笑)。その節は先生には大変ご迷惑をおかけしました。
-ということは、実はILのことをあまり知らなかった?
そうですね、正直この会社のことは知りませんでした。
未経験からでも、ちゃんと「なんで?」という疑問がもてればサーバサイドのエンジニアに育ててくれる
サーバの仕事って言われても全然わからないよね
ぜんぜんわからなかったです。ちょっとUnityをやったことがあるだけなので、サーバというものがあるという事は知っていても、何をしているのかは知りませんでした。
-そうすると、最初は苦労があった?
確かに最初は難しいなと思ったんですが、変な先入観が無かったというか、まっさらなところから来たので。勉強してみて、あ、なるほどね、みたいな感じでした。
入社当初の座学やグループワークはどうだった?
座学は新しかったです。PHPもSQLもやったことが無かったですし、gitも触ったことはあっても、gitってコマンドラインから使うんだ。みたいなところからだったので、最初は右も左もわからなかったです。
-グループワークは?
正直、出来るふりをしながら半分ぐらいはドキュメントを読んでいるだけでした(笑)。結構楽しかったです、学生時代は多くても2-3人のチームでしたが、僕の年のグループワークは6人になり、gitで管理することも初めての経験でした。案出しからやらせてもらえて良い経験になったと思います。役割を分けて開発するのは初めての経験でしたし、世界は広いんだなぁというか、自分がやれない分野がはっきりしたので、そういうところを勉強してみようというモチベーションになりました。
-その後も同期のみんなとは仲良くやれていますよね
それなりに…?仙台のお二人とは話す会の運営を一緒にやっていますし、札幌のSさんとは今同じチームですし、交流は続いているかなと、はい。
そこからOJT、実案件への配属となりますが、会社のサポートはどんな感じ?
そうですね、当然業務ではよくわからないところが出てくるんですけど、slackの分報(編注:チャンネルの種類の一つ)で何でも教えてくれるというか、先輩方に本当にフォローしていただいています。
それから、slackにはチームごとにチャンネルがたくさんあって、他の人の分報からも学ぶことができました。断片的にでも情報が見れますので、そこから広げていって、みたいな感じで最初のうちは勉強をしていきました。
-まわりからフォローしてもらいつつ自分で勉強を進めていく感じですね
そうですね、最初のうちはガリガリ重めのタスクなどは振られないので、僕の場合は実装していく中でわからないことがあれば、都度調べたり聞いたり、フォローを貰いつつ、段々知識を集めていくようなスタイルでした。
-確か、プライベートでも勉強がてらクラウド上で動くものを作っていたよね?
はい、オンライン販売されている商品の価格が下がったら自分に通知が来る仕組みを作りました。あれは、年末ぐらいの話す会で発表した記憶があるので、入社して半年ちょっとぐらいの時ですね。構成自体は先輩に相談して、まぁこれでいいんじゃない?というようなアドバイスを頂きつつ進めました。
わからないことを質問して回答を得られなかったことってありますか?
ないんじゃないかな…?プロジェクトの仕様の関係でちょっとすぐにはわからない、みたいなことは何回かありましたけど。それは、ちょっと片手間で調べただけだとわからないね、みたいな話で、それ以外にはなかったと思います。この点について疑問とか不満はないですね。
-サーバ開発をやったことが無いのは問題にならない?
僕的には、未経験の人でも論理的に考えられるといいんじゃないかなと思います。「なんでこうなってるの?」みたいなところが、分からなくていいんだけど、そこを疑問に思えるかが大事になるんじゃないかなと。それだけ出来れば、あとは調べるだけなので。分からないと言えることの方が大事だと思います、知らなくても馬鹿にされることは無くて教えてもらえますので。
サーバ開発って入り口はシンプル。プログラミングの楽しさはクライアントでもサーバでも一緒
サーバの仕事はどの辺が面白い?
どの辺が面白いか、っていうと、分からないかもしれないです(笑)。
僕はプログラミング自体を面白いと思っている節があったので、クライアントをやってもサーバをやっても、楽しいは楽しい、みたいなところがあります。自分が出来ることが増えるのが楽しいと僕は思っているので、そこが一番ですね。
サーバの方が入口はシンプルなのかなって感じはします。クライアントだと今やるならUnityですけど、結構ゴテゴテしてて難しいことをやろうとすると難しいので。サーバも難しいことやろうとすると難しいんだけど、入り口はめちゃくちゃシンプルというか、簡単なウェブページを作ってサーバに載せて運用するだけ、ぐらいならあまり難易度は高くないんじゃないかなと。そこまでやれば、でも、結構「ああこういう感じね」みたいなのは分かると思うので、間口は結構広いと思っています。
それから、インフラ寄りのところは面白そうだなと思っています。ピタゴラスイッチ的な面白さがあるというか、そういうところで工夫できるのは楽しいですね。
-初めてプロダクトにコードをリリースしたときはどんな感じだった?
実際にリリースされているタイトルのサーバでしたので、「うごいてるー!」とはなりましたね。
-メンテの時は緊張感あった?
ビビりましたね、あれは。大丈夫でしょ、って感じではあったんですけど。
-レビューも通っているし、万が一何かあってもO君の責任が、みたいな話にはならないけどね。とはいえ緊張感あるよね
ありますね。
自分の成長を感じるのはどんなとき?
そうですね、初心者がわかるようになったとき、ですかね。ああ、俺も通ったな、っていう記事を見たときとか、あーこれねー、みたいな、そういう時に感じます。
-先輩方には追い付けそう?
どんどん新しい技術が出てくるじゃないですか。新しい技術に関してはまぁ別にスタートラインは一緒なので、ある程度の基礎が出来ちゃえばみんな一緒というか。先輩方が過去に積んできた分は多分一生追い付けないんですけど、今から積まれるものはイコールなので、やる気があればそこに関しては一緒に出来るんじゃないかなと思っています。
仕事以外の社内のコミュニケーションはどう?って僕が聞くのもあれだけど(笑)
上下、みたいなのはないですね。あまり自分も意識したことは無いです。
-O君はわりと、先輩と飲みに行ったり徹夜でカラオケしたりしているよね
まぁ、好きで行っているので(笑)。
趣味が近しいところにあるというか、方向性が同じというところがあると勝手に思っているので、そういう人と話すのは楽しいです。あとはやっぱり、コミュニケーション取れないと仕事にならないので、そこは頑張るポイントというか。
-仕事以外の話をすることも多いというか、仕事の話じゃない話ばかりしてるよね
はい。8割がた雑談?飲んでるときは「この酒うまい」とか、中身は無いですね(笑)。話したいことを話しているんです、みんな。
-ILってどんな人が向いていると思う?
楽しく仕事したい人には向いていると思います。仕事も楽しいと嬉しい、みたいな。仕事は楽しくなくていいから堅実に行きたい、って人には向いていないかもしれないですけど。
最後になにかメッセージがあれば
まぁ、人生何とかなるんじゃないでしょうか。すみません、僕が真面目に生きていないので。。。
一日の仕事の流れ例
10:00~ | 出社 |
タスク確認 | |
コードを書く時間 | |
13:00~ | ランチ |
定例ミーティング | |
コードを書く時間 実装したところの動作確認したり | |
今日の進捗の報告、明日やることの確認 | |
19:00 | 退社 |