やんまーのはてなブログ

Webアプリケーションを開発したい人

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

GMOペパボ株式会社(以下ペパボと表記させていただく) 福岡オフィスの2019年 夏インターンシップに参加した。
2019/8/21から2019/8/30の平日8日間、ムームードメインチームのフロントエンドエンジニアとして開発させていただいたので、その記録である。

ペパボ福岡オフィスの入り口 ↑オフィスの入口。

インターンシップ最終日にパートナーさん^1の前で成果発表会をしたのだが、話しきれなかった部分もあるのでそれを消化する意味もある。 長文失礼したい。

ペパボとムームードメイン

ペパボとは

GMOペパボ株式会社は東京・福岡・鹿児島にオフィスを構えるGMOグループの企業の一つ。「インターネットで可能性をつなげる、ひろげる」をミッションに、インターネットで個人の表現活動をする人を支援するサービスを展開している。 レンタルサーバー「ロリポップ」、ハンドメイドマーケット「minne」等のサービスがある。

丁度インターンシップ期間中に企業紹介動画^2が公開された。( 別verもある。)

ちなみに私はインターンシップでDiscover New Something^3した。

福岡オフィスではホスティング系サービスの開発を行っていて、今回はその中のムームードメインチームに参加させていただいた。

ムームードメインとは

ムームードメインとは、インターネットの独自ドメイン取得サービスとしてペパボの中でも古くから続いているサービスの一つ。私も利用している。

インターンシップでしたこと

Nuxt.jsで作られているページへの機能追加を行った。

ドメインの価格一覧ページに価格によるソート機能を追加した。 ドメイン一覧表のヘッダ箇所にボタンが追加され、昇順・降順ソートが出来るようになった。

他のインターン参加者は次のようなことをやっていたようだ。各々のスキルに合わせて、チームに配属され実際の業務に加わる形式でインターンシップが進む。

  • 研究所でデータ解析
  • CIツール周りをごにょごにょ
  • Webサービスに機能追加
  • APIを書く

学んだこと - 技術の話

コードリーディング

今回のインターンシップでは新たなページの追加ではなく既存ページへの機能追加を行ったことから、既に完成しているドメインの価格を表示するロジックに手を加えることになった。 既存の実装の意図を汲みながら、他ページへの影響を与えないよう設計することに注意した。

コードを呼んでロジックとデータの流れを追うことは、経験が少なかったので新鮮だった。コードを読むのは面白かったが、実装の意図を汲むのは結構難しかった。似たような機能を持つOSSライブラリも見てみたりしながら設計を固めた。

名言 ↑かの有名なお言葉。

実際に動いているサービス

サービスの規模感、エンジニアや関わる人の人数、サーバーの構成や使用されている技術スタックを知れた。1つのサービスを俯瞰して、どのように動いているのかを学べたのは貴重な経験である。

またデザイナーさんとの分業の仕方やディレクターさんとの仕様の確認など、チームとしてサービスを支えている姿をみることができ、インターンシップの中で経験することもできた。

issueとPullRequest

恥ずかしながらチーム開発を今夏まで経験してこなかったので、GitHubのissueとPullreqを使う機会がなかった。 ソフトウェアの実装に関する相談やまとめ、記録としても非常に有用で期間中たくさんお世話になった。

コードレビューは学ぶことがとても多く、これからの私のコードにたくさん取り入れていきたい。(既に恩恵を享受している。)

PullRequestを出す際に参考にしたいのがこちら↓。私が出したプルリクがこれにどこまで沿えていたかはおいておいて(笑)、自戒の念としても今後の参考のためにも残しておく。 特に私のようなプルリク歴の浅い方にお勧めしたい。

参照元: ぼくのかんがえたさいきょうのPullRequest

テスト

個人で開発しているとテストを書くという発想に至らず、今までテストを書いてこなかった。そのため、今回のインターンシップでテストを書いたのもとても良い経験だった。 Vueコンポーネントを自在に手のひらで転がせるよう、転がれ転がれと念じながら過ごした(嘘)。

テストを書くといいことが沢山ある。他人のためになるだけでなく、既存の実装や構造を振り返るいい機会にもなるし、自分がのちに実装するときに恩恵(正しい動作を保証できる^4)を享受できる(した)。

感じたこと - ペパボの話

ペパボは次の「わたしたちが大切にしている3つのこと」を掲げている。

  • みんなと仲良くすること
  • ファンを増やすこと
  • アウトプットすること

パートナー皆さんにこれが浸透していて、日々実践されているのを感じた。

みんなと仲良くすること

まずパートナーさんが優しい。インターン生に対してだけでなく、職種やチームの壁を超えてそれぞれが仲が良い、(いい距離感だ)と感じた。 インターンシップ期間中、私をインターン生と知らないパートナーさんが声をかけてくださってお話したり、社内のシニアエンジニアの方に実装について聞いたり、いろんなパートナーさんと接する機会があったがどの方も親切だった。

づっきーさんと私
↑サポーターのづっきーさんに助けられている姿。づっきーさんにも沢山仲良くしていただいた。そして沢山助けけていただいた。

ファンを増やすこと

会社やサービスを好きな人が多い。(観測範囲において。) しかし会社に魅力があるだけでなく、パートナーさんにファンになってしまうような惹きつける力がある。これこそ「ファンを増やすこと」を実践されている姿だと感じた。

スリスリくん
インターン生が貰えるsuzuri^5のキャラクター「スリスリくん」のぬいぐるみ。非売品でパートナーさんも簡単には手に入れられないらしい。

アウトプットすること

開発でGitHub Enterpriseを利用しており、issueやPullreqもアウトプットの形だと思う。 そこに過去の経緯が残されていることで、今回も開発の資料としてとても参考になった。

その他インターンシップ中に紹介された参考資料がパートナーさんが社外に公開したスライドであったことや(先程のさいきょうのPullReqもその一つ)、パートナーの方が登壇する技術イベントに参加させていただいたこと等、アウトプットされているのを肌に感じた。

LT経験の浅い私のためにLTの機会を増やして頂き、インターンシップ期間中に合わせて3回発表をした。issueもPullreqも書いたし、私もパートナーさんを見習ってもっとアウトプットしていきたい。

感じたこと - 福岡の話

人生初の九州上陸だったが、福岡は住みやすそうな街だった。

コンパクトシティ

空港から街が近い、というよりも街に空港があるので移動が楽。(成田空港、お前のことだぞ。^6)

食べ物が美味しい

ペパボの福岡インターンシップで、日報にご飯が美味かったと書かれるのはあるあるらしい。もちろん私も書いた。 一つ一つ紹介しているとそれだけで記事になってしまうので、写真でまとめて振り返る。

福岡で食べたおいしいもの

帰りに空港でお土産をみて、明太子とごまさばを食べそびれたことに気づいた。

まとめ

上述の通り、技術を学ぶことと会社を知ることの2側面ともに得るものが多かった。

実は応募前は私の技術力が通用するのか不安だった。しかし、ペパボの皆さんに本当に優しく丁寧にフォローしていただいて、インターンシップ期間内に機能をリリースできた。

また同じ期間に他チームへ配属されていたインターン生にもよい刺激を受けた。特に私が新しい技術分野に触れていくモチベーションに繋がった。同年代の強い人すごい、みんなすごい(小並感)。

次は冬にも同様の就業型インターンシップを予定しているそうなので、この業界を考えてる人にぜひ勧めたい。

おわりに

インターンシップ中に関わらせていただいたた皆さんにとてもお世話になりました。 特にサポーターのづっきーさんには技術面で沢山サポートしていただきました。初日緊張してパスワードを永遠にtypoしていたのが懐かしいです。
本当にありがとうございました。

集合写真 ↑パートナーさんと我々インターン生。最高の夏。


  • ^1: ペパボで働く人のこと
  • ^2: 正確にはペパボ協賛の技術イベントbuilderscon2019の幕割CM
  • ^3: 記事中の動画を参照。buildersconのコンセプトらしい。(インターンシップとbuildersconに直接の関係はない。)
  • ^4: もちろん、テストはテストコードとして書かれた動作しか保証できないので、ある程度正しい動作を保証できるようなテストを書くこと、テストで何が保証されているのかを理解しておくことが必要がある。
  • ^5: ペパボが運営するオリジナルグッズの作成・販売サービス。suzuri
  • ^6: さいたまに住んでいると羽田も遠い。