インターンはじめに大阪産業大学3年の関佑太です。2023年12月18日~2024年3月31日の間N予備校のAndroidチームにインターンで参加していました。私がこのインターンに参加した時のスキルレベルとしては次のような感じです。個人開発でアプリを作ったことはあるテストコードは簡単なものしか書けないアーキテクチャは最近意識し始めたドワンゴのインターンに参加するのに上記のスキルが必須かというと全くそのような事はなく、後述する開発サポートの時間で分からない事を現場のエンジニアに聞く事ができる時間があるので個人開発でアプリを作ったことがなかったり、テストコードを書いたことがなくても大丈夫だと思います。私は、インターンが始まった後にスキルレベルを聞かれましたが、その際に素直に言えば学習する時間を取ってくれると思います。私は以下のインターンに応募して今回参加させていただく事になりました。私の場合は毎日30分ほど開発サポートという時間があり、業務をしていく上で分からない事や迷っている部分を相談できる時間がありました。この時間では業務以外の質問をする事ができます。この時間を使って、業務に関係のない雑談や就職活動に関する相談もできました。メンター以外の人ともこの時間を使って話す事ができるので、色々な人と話す事ができて良かったです。開発サポート以外の時間でもSlackで質問をすることもできます。業務で使用するパソコンは自分でWindowsかMacを選ぶ事ができました。私はWindowsを選択しました。業務で使用していたパソコンのスペックは最新の物ではないものの業務的には特に問題のない性能でした。8を支給していただきました。(最新のPixelを欲しくなった、、、)N予備校のAndroidチームは自分を含めて6人で全員がリモートで働いていました。リモートワークの方が出社する時間がないので個人的には嬉しかったです。インターン生はかなり柔軟にシフトを決める事ができて、午前中の2時間だけ働くというような事もできました。日によって違いますが、ある1日のスケジュールはこんな感じでした。出勤時間や退勤時間に関しては、自分の場合は週20時間以上という条件でインターン生が自由に決める事ができたので、例えばもう少し出勤して早めに退勤したりという事もできます。次にN予備校定例ですが、これはN予備校に関わっているデザイナーやAndroidエンジニア、iOSエンジニア、Webエンジニア等が出席してN予備校全体での相談事などを話す時間です。昼休憩に関しては、予定が入っていない時間であれば自分でいつ取るかを決める事ができます。チーム日例では、チーム内で今どの作業をしているかなどの共有と相談事等がある場合はチーム内で相談したりします。レビュー中、完了」のどの段階にあるかをバックログで管理していました。以下の画像だと、作業前のタスクと進行中のタスクは2つずつあります。タスクの作業が進むと次の段階の場所に移すという風になっています。未着手の作業に手を付けると一番左の作業前の場所から進行中の場所に移動させます。することで、自分のタスク管理もできる上に他のチームメンバーが今何をしているかなどの情報を簡単に知ることができます。最後に開発サポートでは、日替わりでチームメンバーと面談をして業務で分からない事や相談したい事を話す時間が設けられていました。業務以外の相談もできるので私は「なぜドワンゴに入社したのか」や「就職活動に関する質問」、「おすすめの技術書」などを聞いたりもしていました。私がインターン期間で行った業務は大体このような感じです。静的解析ツールの調査この中から今回は、「古くなったコンポーネントの置き換え作業」と「静的解析ツールの調査」について軽く紹介します。古くなったコンポーネントの置き換え作業N予備校のAndroidアプリではJetpackComposeという物を使ってアプリを開発しているのですが、JetpackComposeのバージョンが上がり、テキストのincludeFontPaddingのデフォルト値が変わったことによってレイアウトが崩れるので、今まで応急的な対応していたものを恒久的な対応したものに置き換えるという作業を行いました。以下の画像は変更前と変更後の比較をしたものになります。みると左右で少しレイアウトがずれているのが分かると思います。これはAndroidのincludeFontPaddingという仕組みが関係しています。興味がある人は以下のリンクから調べてみてください。【工夫した点】1つのPullRequestで出してしまうとレビュワーの負担が大きくなるので数回に分けてPullRequestを出した事と、レビューしやすいように変更を加えた部分を確認できるスクリーンショットを全て添付しました。静的解析ツールの調査チーム内のバックログに静的解析ツールの調査のチケットがあったので、やりたいと伝えるとやらせていただく事ができました。そもそも静的解析ツールとは何かと言うと、プログラムを実行する事なくプログラムを解析するツールの事です。静的解析ツールを利用する事によってプログラムの書き方がルールに則っているかやプログラムの複雑度等を調べる事ができます。この静的解析ツールを導入することによって、既にあるコードの書き方の統一等の質の向上やチームメンバーの書くプログラムの質の向上を狙っているようでした。私はこの調査タスクを通して個人開発だけだとあまり意識する事がなかったことを考える事ができました。使用するツールのライセンスや事例の数、コミット数等の指標を参考にしながらどのツールを提案するかを考えました。個人開発だとこの部分を意識する機会がほとんどなく、目的を達成できるかという事しか考えていなかったので今回いい経験をさせていただきました。見たことの無いアーキテクチャだったので理解に時間がかかった。(珍しいというわけではなく私の知識不足)開発の際に特定の環境では動かないという事を知らなかった。他職種の方との連携の大切さテストコードを書く際の考え方(どこまで書くか)技術に関する調査をする際の考え方まとめ私はこのインターンを通して大規模なアプリの開発での業務や開発する際にどういう事を話し合いながら進めるかなど個人開発では体験できない貴重な経験ができました。就業型のインターンに参加する事によって自分がエンジニアとして働くイメージを鮮明に持つ事ができるので、エンジニアになりたいという方やエンジニアという仕事に興味があるという方は是非参加を検討してみてはいかがでしょうか?また、プログラミング初心者の方も技術力が低いからという理由で諦めずに応募してみてはいかがでしょうか?3か月間という短い間でしたが、たくさん学ぶ事がありました。ありがとうございました。...2022-11-18ドワンゴ新卒採用はじまっています2022年度のドワンゴ新卒採用がはじまりました。(3)引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。