はじめに
動画像処理系の研究をしている大学院1年生です。
株式会社ゆめみのサマーインターンにサーバサイドのプロジェクトリードとしてに2週間参加してきました。
その期間の内容とどう感じたのかを残しておきたいと思います!
他の人も書いてそうなので内容より、感じたこと重視!!
2週間の内容
毎日あること
始業時間なく、朝5時から〜22時までで8時間働けば良いというフレック制でした。
ただ、11時から朝会があったので大体11時には皆働いてたと思います。
あとは、17時からフロントエンドとバックエンドに分かれてKFCCという良かったこと(good),失敗したこと(Failure),挑戦したいこと(Challenge),他の人を褒めたいこと(Cekebrate)をして、17時30からバディと1対1で今思ってるモヤモヤを話す時間でした。
バディとの1対1対は、心が折れそうな自分を励ましてくれる本当に良い時間でした!
Day1
午前中は、今回参加するフロントエンドチーム(4人)とバックエンドチーム(3人)合計7人で自己紹介などをしておしゃべりしてました
午後は、社内で使用しているアプリの課題提示してもらったので、それの実装準備をしました。apiの仕様書を書いたり、環境構築したり
Day2, Day3
今回取り組んだアプリは、社内の案件サイトです。課題の提示の内容は、案件サイトは募集期間が終了しても表示されるので、一つフィールドを追加して、募集期間終了したらわかるようにするでした。
ただ、バックエンドはRustでアーキテクチャとしてはDDD+オニオンアーキテクチャを採用していました。😭
少しはRustの勉強をしたのですが、Rustでアプリ開発やったことなかったのでコードが読めない。そして、アーキテクチャをこれまであまり考えずやっていたのでどこに何を書いてあるのかが分からない状態でした!
ただ、Day3の最後にはみんなに手伝ってもらいながら課題を完了しました。
あとは、昼頃に実際に求人サイトを使用している人たちにインタビューをして、現在の不満を聞きました。
Day4
学会のため休みました
Day5
Day3に聞いたインタビューからどんな課題があるのかをフロントと交えて話しあい、どの機能を追加したら良いかを決めました
Day6
午前中は、POに機能の提案するためにスライドの作成
午後は、POに提案をし、意見をもらいもう一度皆で話あった。
Day7
POにもう一度提案を行い、作業に取り組んだ
この日は、API定義を書いた。
機能については、
- 求人のスキルがどこまでかの温度感が分からないので必須と推奨に分ける
- 工数がトップページで見られるようにしてほしい
Day8
この二つの実装をサーバサイド二人で行いました。自分はプレゼンテーション層とアプリケーション層を担当にもう一人がドメイン層とインフラ層に分かれて書きました。
分からないことだらけだったので、ペアプロなどで教えてもらったりしてました
ずっと通話してたかも笑
Day9
1日中通話しながらコードを書いてた。
この層には、これを書くというのはわかっていたが、どのように書くの?やどう渡せば良いの?などでエラー連発
なので、他の人の足をひっぱった(チームの人ごめん!)
Day10
結局、求人のスキルがどこまでかの温度感が分からないので必須と推奨に分けるしか終わらなかった。フロントエンドも全て終わってる訳ではなかった。
最後に、社員さんにこの一週間の発表をして、みんなで反省会して、最後に懇親会!
感じたこと
この二週間を通して、まず自分が井の中の蛙ということを知った。
最近、あまりアプリを作成してなかった部分はあったがそれでも、アーキテクチャについての理解や、エラーの読み方は他の人と比べて全然だと感じた。
また、型定義についてもRust特有な書き方に戸惑った。
ただ、今回のサーバサイドは、APIの定義を書いて、このエンドポイントの時は、DBに接続をして、ごちゃごちゃして値をjsonにつめて返す。これをやってるだけ。今回自分が他の人より劣っていると思ったレベルの差は、これまでどれくらいアプリを作ってきたのかとRustの書き方なだと思う。なので、勉強すれば良いのねって思ったら気が楽になった。
他には、エンジニアはコードをかけるというのは前提で、他の部分での付加価値を磨かないといけないと思った。例えば、要件を深く知り、どのようなユーザを対象といて、どの機能を追加すれば良いのかなどをちゃんと明確にする。
プロジェクトリードとしては、工数の見積などコード以外の部分にも色々やらないといけないと思った。
一方で、自分の強みは、チームでの立ち回りだと思っている。みんなでやるよとかの声かけや、チームの雰囲気が悪くならないような立ち回りは、12年間野球をしてたことや大学で多くの人と遊んできたことで備わったと思っている。また、説明をするときに、結論を言って、他の人でもわかりやすい言葉で話す。言葉のレベルを下げられるのも良さだと感じた。
何度も心が折れた二週間ではあったが、自分の実力、自分の良さ、これからどのようなことを考えてやらないといけないかを教えてくれる二週間であった。本当にためになったと思っている!
最後に
多分、これを見てる人は、株式会社ゆめみのインターンを参加しようか迷っている人だと思います。
株式会社ゆめみのインターンに参加しようと思っている人は、自分の力を試したい人、アプリ開発をゴリゴリやってない人やチーム開発をしたい人にはおすすめです!
自分は、エンジニアとしての成長や、心の保ち方を学ぶことができて、本当にインターンに参加できてよかったと思っています!是非迷っている人は応募する人ことをお勧めします!
日本語が下手ですみません😞