Guniの備忘録

日々の進捗・ポエムのごった煮

ペパボのインターンシップに参加した

ブログ更新するのは久しぶりですかね。
2/14~2/23の間、GMOペパボ福岡支社にインターンシップに参加させていただいた。
友人(@gamerkohei)とともに参加しました。

なるほど、先輩方が勧めるのもわかる。
人権が保証されている。そして何よりも技術的な刺激を多く受けられる。
大学内, サークル内ではなかなか触れられないものに触れる機会がたくさんあった。
その中でも、書いても大丈夫そうなところだけ書いていこうと思う。

インターン中のぐに

インターンの内容

ムームードメイン

ムームードメインのフロントの方を触るのがメインタスクだった。
f:id:guni1192:20180224121127p:plain

UI挙動の修正

UIはカートの金額周りの挙動(値段のグルグルするところのフラグ)の修正を行った。
更にES5で記述されたところが多かったので、ES6に書き換えを行った。
実際にレビューしてもらって早めにリリースできた。(個人的にはまだ遅い)
f:id:guni1192:20180224123013g:plain

リファクタ

テストを生やすことを最優先にしてみようと思ったが、
テストするVueインスタンスが大きく、テストケースを用意することが難しそうだと思い、
クラス化して分割するか、Vueコンポーネント化するかで迷った。
テストのしやすさ、今後のSPAに移行したりする可能性なども考慮して、Vueコンポーネント化することにした。
仕様と何回もぶつかったけど、なんとかコンポーネントに分けることができた。

テスト

今までほとんどテストを書くことがなかったため、
いきなりJavaScriptのテストを書くのはなかなか大変だった。
モック周りはどうにかなったものの、
非同期処理のテストなどになると、かなり苦戦した。
テストケース単体は普通に実装できたが、
これらのテストケースをすべて並列実行せているため、
テストの結果が他のテストケースに影響を及ぼしてしまい、
それに1時間以上苦しんだ。
解決策として、非同期処理を行っているテストケースを順序実行するようにした。
テストを書き終えたらまたレビューしてもらい、2回めのリリースを迎えた。

Chefのハンズオン

第2リリースが終わって、
最終日が暇だったのでChefのハンズオンを受けた。
内容としては、Chefの環境を構築して、
NginxにRailsのサンプルアプリをデプロイするまでだった。
ちゃんと構成管理ツールを使ったことがなかったので、
「おお!Ruby入った!」って感じでワクワクしながらやっていた。

pmr-checkerの機能追加

リリースもハンズオンも終わり、成果発表まで暇だったのですが、
急にホスティング事業部の@pyama86さんからのタスクが降ってきた。

PHPでできたサイトで、外部に見えてはいけないファイルをチェックするpmrコマンドというのがある。
そのpmrを使って漏れファイルを簡単にチェックを自動化するツールをRubyでpmr-checkerの機能追加をしてほしいとのこと。
具体的にはホワイトリスト形式で、設定ファイル(yaml)に書かれたものをチェック時スルーする機能を追加する。
時間と即興で書く実装力、Ruby力が足りなくてプルリクが最後まで行けなかったことに後悔。
もうちょっと限られた時間でどれだけコードが書けるかという経験も必要かもしれない。

KPTA

インターンを振り返ってKPTA(Keep, Problem, Try, Action)を行った。
自分がやりたいこと、今後の課題を見つめ直すことができた。
f:id:guni1192:20180224121350p:plain

Hacker Tackle

2/17日に開催されたHacker Tackleのセッションを聞いてきた。
並列プログラミングの話や、機械学習周りの話が多かった印象。
Rustの話や、@udzuraさんのコンテナのセッションも聞いてきた。

これからどうするよ

大学1~2年の間は色々経験してみようと思って、
Webのフロント、バック、インフラをいろいろさわってみたけど、
本当にやりたいのはインフラだと気づいた。
サービスを作るより仕組みを考えるほうが好きなので、
インフラ周りは楽しいんじゃないかと。
研究室や就職先を選ぶ方向性が定まってきたのも、
このインターンでの大きな収穫だった。

感想

飲み会も多くて、とても楽しかったです❗
僕自身が少食+酒に弱いのがちょっとアレだけども。
多分ご飯についてはもう一人のほう(@gamerkohei)が書いてくれるでしょう。

最終日に技術部やペパ研の方々とも飲みの席で話せて興味がわきました。
実は飲み会の最後に@pyama86さんに「OSSの世界でまた会いましょう!」って言われたのが超嬉しかったのは内緒。
絶対また会いにいける戦闘力を手に入れてやる👊という意気込み。

インターンシップっていい制度だな~。
「あと2年で強くなって戻りたい!」って考えが何回も頭をよぎるぐらい良さでした。
ずるいなあ。そりゃファン増えるわ。

最後になりましたが、素晴らしい体験をさせて頂いたペパボの皆様に感謝を。
ペパボのみなさん、8日間、本当にお世話になりました。