本記事は、「モバイルエンジニアが内定者としてインターンシップにフロントエンドで参加した際の話」をざっくりまとめたものです。
もしかしたら、この話の各テーマごとに深掘りした記事を今後出すかもしれないです
自己紹介
自動車産業が有名な県で専門学生をしている20歳男性です。
高校の頃に独学でプログラミングを始め、専門学校に進学。
来年の4月にはビジネスチャットを提供している企業に、モバイルエンジニアとして新卒入社する予定です。
半年ほど前まではFlutterを書いていましたが、最近では入社に向けてSwiftを書いていています。
今回は、入社予定の企業のインターンシップに内定者として参加させていただいたので、その経験や感想をまとめていこうと思います。
インターンの内容
インターンの期間:3週間
-
講義パート :1週間
- 環境構築 から デザイン , React , 型システム , 要件定義 , ドメイン駆動設計 , 運用 , アジャイル・スクラム …などなど様々な講義を受けることができました
- 実際に業務をされている社員の方々というだけですごいのですが、社員の中にはその分野で超有名な方や、学校で先生をやられている方もいらっしゃって、とてもわかりやすくておもしろい講義ばかりでした
-
開発パート:2週間
- チームで開発を行いました
- (内定者で1チーム・参加者で2チームの計3チーム)
- 事前に作っていただいた チャットアプリ を 要求 に従って改良していきます
- 要求は、 ユーザはどんな悩みがあり、どんな機能を欲しがっている というようなことが記述されているだけ、実装方法やデザインなどの指定もない
- どうすればユーザからの要求に応えられるかをチームで議論し、プランニングして実装を進めていく
- チームで開発を行いました
内定者チームで行ったこと
-
全員でモブプロ
- FE,BE関係なく、全員で行った
- 開発の効率は悪いが、重要な部分の認識をチーム全員で揃えることができた
-
タスク管理にGitHub Projectsを使用した
- 初めて使う機能だったが、タスク管理しやすかった
- 個人でも使うこと決定!
-
スクラムマスターを毎日交代
- 全員が経験することで、スクラムの意識を高く持って活動できた
得られたこと
-
コードを読む力
- 既存のコードをいじる経験は学生のうちにはなかなかできない
- でも、入社後には非常に重要なこと
-
チーム運用
- アジャイル・スクラムの考え方
- 入社までにチームで実践する機会はないかもしれないが、個人的にはこの意識を続けていきたい
- 認識を合わせる
- ドキュメント
- モデル
- ユビキタス言語
- アジャイル・スクラムの考え方
-
プランニング
- 開発者目線ではなく、ユーザの視点に立って考えることが重要だと感じた
- どのユーザ?というところまで考えれるとGOOD
- 開発者目線ではなく、ユーザの視点に立って考えることが重要だと感じた
-
Web開発技術
- アーキテクチャ・開発の進め方など、モバイルに持ち帰れそうなものがたくさん
- まずはGitHubの運用から採用してみます
- 今まではMVVMで開発をしていましたが、MVVM+Clean Architectureのような感じにして、DDDの考え方を取り入れていこうと考えています
- アーキテクチャ・開発の進め方など、モバイルに持ち帰れそうなものがたくさん
-
GitHub
- チームでGitHubを使用したことがなかったので、初PR・初コンフリクトを経験
- PRは何をやったかを並べるのではなく、どう伝えるかを意識することが大切と感じた
- レビュアーのことを考えるのはもちろん、将来そのソフトウェアに関わる人のことまで考えられるとより良くなりそう
- タスク管理が便利
- チームでGitHubを使用したことがなかったので、初PR・初コンフリクトを経験
-
同期や社員の方々との交流
- 交流の機会が多くあり、入社前から関わることができたのがGOOD!
働いてみた印象
-
いい意味で緩い
- 仕事の無駄(硬さ)を省いて 働きやすくしている という印象を受けた(緩い≠だらけている)
- 社員同士でも仲が良さそうで、一般的な固いイメージの会社員とは違い、 話しかけやすかった
- 心理的安全性 を大切にしている会社です
まとめ
最初は「Web開発全然やったことないのに大丈夫かな?」と不安でしたが、何とか活動することができました。
その中で、社員の方や同期、参加者との力の差を感じることがありましたが、その差を縮めるために頑張ろうという モチベーション になりました。(20歳なので僕が ほぼ最年少 でした)
入社に向けて残り半年、たくさんの経験をして成長した状態で入社できるように努力します