DMMのインターンに行ってきました
こんにちは。マヤミトです。
夏休み中、DMMのインターンに参加させていただきました。
参加までの経緯
すべての元凶はこのツイートです。
冗談のつもりが、
エンジニアと人事の方に捕捉され、
あれよあれよという間に話が進んでいきました。DMMはフットワークが軽いです。
あと念の為に言っておきますが今回のインターンはFANZAではなくDMMです。
このあとカジュアル面談をし、「Androidとかでインターンが公開されたら連絡ください!」と言ったところ、インターン募集開始の案内ではなくインターン内定のお知らせが来てたまげました。DMMすごい。
もともとDMMのサービスはいくつか利用していましたし、仲のいい先輩が新卒でDMMに入ったこともあり、DMMには興味を持っていたので、ありがたくそのままインターンさせていただくことにしました。
インターンの概要
期間: 8/26 ~ 9/27
配属先部署: CTO室
憧れの id:kgmyshin がメンターでした。やばい(語彙力)
やったこと
新卒研修のAndroidパート
DMMの19卒の人達がやった新卒研修のAndroidパートをやらせてもらいました。
Kotlin + MVVM + Android Clean ArchitectureでJetpackやCoroutine、Daggerなどもバリバリ使ってたのでこれ本当に新卒研修の4日間のAndroidパートでやったのか?って感想でした。アプリの実装だけでなくテストもちゃんと書いてCircle CIで自動でテストが走るようにするところもやったので大変勉強になりました。
AquizのAndroidアプリ開発
新卒研修の内容を終わらせたあとはAquizのAndroidアプリ開発に関わることになりました。
AquizのAndroidは大学の先輩で在学時代からお世話になっていた id:slme9364 がチームリーダーをやっていて(この人新卒だよな…🤔)、いくつかタスクを振ってもらいました。
自分が担当したタスクは
- Retrofit2公式のコルーチン対応の導入(Jakeのretrofit2-kotlin-coroutines-adapterへの依存をやめる)
- 新機能の実装
こんな感じです。
Retrofitのコルーチン対応については、プロジェクトのコードがかなり綺麗で依存関係の分離もしっかりなされていたので移行自体は楽だったのですが、status codeが204 or 205でレスポンスのbodyが空だとぬるぽで死ぬRetrofit側の仕様(バグ?)によりそこだけsuspend funにできませんでした。ちょっと心残りです。
新機能の実装については具体的にどんな実装をしたかはNDAに触れそうなので言えないのですが、結構大きいタスクをいくつか振ってもらい、やりがいがありました。今まで苦手に思っていた設計の部分やUIの部分の実装力などが向上したように感じます。
Aquizには結構爪痕を残せたと思うので嬉しいです。
インターンを振り返って
今回のインターンは大学に入ってから二回目のインターンでしたが、やはり実際に業務に関わるのは学びが多く、成長に繋がるなと感じました。前回のインターンに引き続き今回もAndroidでしたが、メンターさんの教え方やタスクの振り方がちょうどよく、これまでの成長を実感したとともに自分に足りていなかった部分を補完・強化できたと感じます。
今回のインターンを通して自分の長所や得意分野、短所や苦手分野を見つめ直すことができたと思います。まだ大学2年生、時間はまだ残されているのでこれからも精進を続けていきたいと思います。
終わりに
DMMにはまるまる1ヶ月いたわけですが、インターンの目的である技術力の向上と社内の雰囲気を知るの2つは高いレベルで達成できたと思います。メンターの id:kgmyshin さんのもと、Aquizというまだ出たばかりのサービスにエンジニアとして関わることができたのは貴重な経験になりました。また、Androidだけでなく様々な技術分野の社員さんとランチに行くことができ、わくわくするお話をたくさん聞くことができました。
DMM、面白い会社でした。今回のインターンでお世話になった全ての方に感謝したいと思います。本当にありがとうございました。