https://qiita.com/aobeee/items/7ec5ca967bc7c2543ee5
上記記事でfreeeの雰囲気や働き方について記載しました。今回の記事ではインターン2週間の流れを簡単に書いていこうと思います。
インターン初日(オンライン)
PCの環境構築
・環境構築用の資料をいただいたので、資料を参考に環境構築を行いました。
・自己紹介をslackで書いたり、freeeについての概要などを人事の方から説明していただきました。
・お昼休憩の後は、各々配属された部署で初日ガイダンスを行いました。部署ごとで環境構築もあったので、1日目は自己紹介と環境構築で終了。
2日目
初出社!
・2日目以降はオンラインか出社するかを選ぶことができたので、会社の雰囲気を知りたいということもあり全日程出社しました。
・私は「販売・工数管理」チームに配属されました。チームの朝会に参加したり、社員さんの方とお話しする機会がありました。また、自分たちが扱うサービスについて知るためにそのサービスをいじったり、色々試したりする時間がありました。
・既存のコードを読み解くのが難しかったのですが、メンターから開発ツールを使用したコード解析方法を学ぶことができました。単にソースコードを読むだけでなくツールを使って効率よく読めることがわかりました。
・ランチは社員さんと同じチームのインターン生と食べました。近くに美味しいご飯屋さんがあるのも魅力的だなあと感じました。
・午後は工数管理サービスの課題の聞き取りmeetingがありました。今回のインターンでは、ユーザーさんが実際に抱えている悩みを解決するためにどう対応していけばいいかを考え、開発するというものでした。このmeetingを通して、何に対してユーザーさんは悩みを感じているのか、どんな課題を解決したいのかを聞くことができました。
・そんなこんなで2日目終了。ドリンク飲み放題でとても最高です。レモネード推しで、たくさん飲みました。
3日目
・ユーザーさんからヒアリング。直接悩みを聞くことで最も優先させて解決すべきことは何かを明確にすることができました。
・午後はDesign Docの記載。課題解決のために実装すべきことのアイデア出しをひたすら行いました。本当にユーザーさんが使いやすいか、課題の本質が解決されるかを考えながらアイデアを出すことは難しかったです。かなり頭を使いました。笑
4日目
・Design Docの進捗確認。プロダクトマネージャーの方やメンターからアドバイスをいただきながら設計で足りていない箇所やあやふやな箇所を洗い出し、修正を行いました。
・1 on 1でプロダクトマネージャーの方からお話しを聞くことができました。具体的にどういうお仕事をされているのか、やりがいや大変なこと、freeeでの働き方についてなど様々なことを聞くことができました。
5日目
・開発タスク(チケット)の洗い出しと誰がどこを担当するかを決めました。タスクの洗い出しでは、具体的にDBに何を追加し、どのファイルにどんな関数を実装するかなどを決め、スムーズに開発に入れるよう意識しました。
・また、それぞれのタスクがどの程度時間かかるか、どこまでインターン期間中にやるかを話し合いながらまとめました。
・インターン5日目だったので、中間振り返りがありました。今、どこまで進んでいて2週目以降どう開発していくのかを各チームのインターン生が発表し合いました。同じチームでないインターン生がどんなことをしているのかが分かりました。
6日目
・5日目の途中だったタスクの振り分けを最初に行い、その後開発に入りました。
Pull requestには確認してほしいことや正しい挙動などを具体的に書き、誰が確認しても分かりやすいように意識しました。
・gh pr checkout <prの番号>
で他の方が実装したPRをとってこれるということを知りました。めっちゃ便利なコマンドで感動です。
・1 on 1ではfreeeの内定者インターンをしている方からお話しを聞くことができました。なぜfreeeを選んだのか、普段の1日の流れ、身につけておくべき技術などたくさんアドバイスをいただくことができました。
7日目
・自分のタスクを一つmergeすることができました。mergeされたときは毎回嬉しく感じます。笑
・「実装したはずの内容はあっているはずなのになぜか上手く動かない...」と悩んだときは、slackのハドルで社員さんが助けてくれました。ファイル作成の階層が間違っていたことが原因だったのでファイル構成やアーキテクチャを改めて意識するきっかけとなりました。
・開発中、同じチームのインターン生(3人)は常にハドルで繋ぎながら疑問に思ったことや上手くいったことなどを話し合いながら進めました。メンターや社員さんも入ってきてくださり、詰まったときにすぐ聞ける環境がとてもありがたかったです。
8日目
・課題解決のためのメイン実装はバックエンドとフロントエンドに分けてタスクを振り分け、私はフロントエンドを実装しました。メンバーには自分から「フロントエンド挑戦したい」と伝え、任せてもらったのですが、Web開発経験の少ない私にとっては既存のコードのどこを参考にどう書いていけばいいかよく分からず、メンバーやメンターに何度も質問し、基礎から教わりながら開発しました。メンバーそれぞれもタスクがあるのに本当に丁寧に教えてくれました。本当に感謝です。
・自分の良かったところは、分からない箇所を「分からない」と伝え、悩んでいる箇所を皆に相談できたところだと思います。でもそれ以上に、技術力不足を痛感しとても悔しかったです。もっともっと深い理解をしていく必要がある、そもそも勉強時間全く足りてない!頑張らねば!!と強く思いました。
9日目
・フロントエンド実装のPull requestを出し、mergeできました。嬉しかった!けど悔しい気持ちがずっと残っていました。
・最後mergeし終え、実際に動かしてみるとやりたかったことがしっかり完成していました。動いたときはとっても嬉しかったです。
・社員さんたちにインターン生が作った機能のデモを見ていただくことができました。完成したものを見たとき、とても喜んでくれて「作りきれて良かった...」と安心しました。「ユーザーさんに価値を届けられることはこんなにも嬉しいことなのか」と実感しました。
・デモの後、最終発表に向けて資料を作成し、作り終えた頃に9日目のインターンが終了しました。
10日目
インターン最終日
・それぞれのチームの最終発表がありました。自分の配属されたチームのことで頭がいっぱいだったので、他のインターン生はこんなことをしていたのか!と発表を聞き、刺激を受けました。聞いたことのない技術スタックなどもあり、めちゃくちゃ勉強になりました。
・自分たちのチーム発表の際は、メンターと社員さんが見守ってくださり、発表終わりすぐに「良かったよ!!お疲れ様!!」と声をかけてくださり、その温かい雰囲気に感謝の気持ちで一杯になりました。「楽しかったなあ。もっと頑張ろう!!」という思いでインターンが終了しました。
・最後の打ち上げでは他のチームのインターン生や社員さんとたくさん話すことができました。「インターンどうだった?」「どんなことしたの?」「普段はどんなこと勉強してるの?」などなど、皆が経験したことや普段勉強していることを知ることができたのも良かったです。また、横のつながりが増えてとても嬉しかったです。とても盛り上がり(お酒強い人が多かった)、帰宅準備を始めたのが23時頃でした。
・本当に学びの多い、貴重な、楽しい2週間を過ごすことができました。freeeの皆さん、メンターさん、チームメンバー、本当にありがとうございました!!技術力をもっともっともっと高められるよう頑張ります!