技術に熱中する6日間。実務レベルのハンズオンから開発合宿まで
「TECH JAM」インターンは、エンジニアの働き方を体感できるインターンシッププログラムです。
2023年3月1日~3月8日(土日を除く)の6日間にわたって開催いたしました。
メンターとして技術を教えるのは、サイバーエージェントグループを支える技術統括本部のエンジニア。
全国トップクラスのエンジニアから直接学ぶことで、実務レベルの技術習得はもちろん、エンジニアとしてのキャリアを明確にイメージできるようになります。
本レポートでは、そんな『TECH JAM -Next.js編-』開催の様子をお届けいたします!
当日のスケジュール
【1日目】オリエンテーション
1日目はオリエンテーションとして会社説明と自己紹介ゲームを実施。
会社説明では、改めて事業内容と当社のエンジニアの特色などをお伝えしました。
当社はサイバーエージェントの戦略的子会社として、広告、メディア、ゲームなど多岐にわたる事業を展開しています。それに付随するエンジニアの業務も幅広く、フロントエンドからバックエンド、インフラ構築までを行っています。
具体的な業務内容を知ったインターン生からは
「Webアプリの開発もやっているとは知らなかった」
「DXなどの、今回のテーマとは直接関係のない内容も質問できた」
などの声が上がり、好評でした。
▲会社説明の様子。質疑応答の時間で、気になったところを深堀り
会社説明の後は、メンターとなるエンジニアを交えて「噓つき自己紹介」を実施。
これは自己紹介の中に一つだけ嘘を混ぜ、何が嘘だったのかを当てるゲームです。
お互いのことを楽しみながら知ることで緊張がほぐれ、少しずつインターン生とメンターとの会話も活発になりました!
質問などのしやすいラフな空気感の中、2日目に向け、環境構築を始めていきます。
「学校の授業では、実際の開発環境に触れる機会はなかった」と話すインターン生。
授業や自主学習でのチュートリアルとの違いに戸惑いつつも、メンターの説明に併せて環境構築に取り組んでいきました。
▲初めての環境構築作業に戸惑いながらも、必死に食らいつくインターン生
【2日目】Next.jsのハンズオン
2日目は、初日に取り組んだ環境構築の続きからスタート。
その後、課題に取り組みながら技術の習得に励みます。
ただ正解をなぞっていくのではなく、
「より美しく実用的なコードはないのか」
「他人が見ても分かりやすい書き方になっているか」
など、実務で重要となる観点を伝えつつ取り組んでいきました。
また、ハンズオンの内容はNext.jsとデータベースの連携など、かなり本格的なもの。
つまずく箇所があればメンターが一緒に修正できるまでサポート。
答えを直接教えることは控え、気付きが得られるような指導を行っていきます。
▲ハンズオンで課題に取り組むインターン生とメンター
▲インターンシップ中は昼食つき。技術習得にのみ集中していただきます。
【3日目】Webサービス設計
3日目は、ハンズオンで習得した技術を基に、Webサービスを設計してもらいます。
今回のお題は「グルメ紹介サービス」。
学んだ技術をどう活かしていけるか、お題に沿ってどうオリジナリティを出していくかなどを考えながら、インターン生自身で設計してもらいました。
設計では、開発に掛けられる工数も重要なポイント。
機能を盛り込みすぎても、納品に間に合わなくなってしまいます。
何を優先的に実装すべきなのか、ユーザー目線に立って考え、設計する必要があります。
▲メンターと一緒に実装する機能を考えるインターン生
設計したものは、メンターがレビュー。
プロのエンジニア目線で、実装したほうがいい機能や、アイデアで良かったところなどをお伝えし、4日目以降の開発に向けて準備を進めます。
▲考えた設計内容を発表するインターン生と、それに対してレビューを行うメンター
【4~5日目】開発合宿
4日目からはいよいよ開発合宿!
ペンションに泊まり込み、静かでお洒落な空間で開発にフルコミットしていただきます。
▲お洒落な空間で、インターン生自身が設計したサービスの開発に集中
▲運営メンバーが食事をご用意
▲半個室ベッドを各自割り当て
「グルメサービス」というお題をもとに、どんな特徴を持ったサービスにしていくか、これまで得た知識をフル稼働させながら開発に当たります。
メンターから内容の中間レビューをもらいつつ完成度を高めていきます。
開発期間内に完成させるのも、プロのエンジニアの仕事のうちです!
【6日目】成果発表会の様子
最終日には開発したWebサービスをデモンストレーションしながら発表します。
成果発表会にはメンター以外の開発エンジニアも参加。
緊張感に包まれる中、自身が開発したWebサービスを紹介してもらいました。
▲緊張の中、自身が開発したサービスをプレゼンするインターン生
発表後にはエンジニアから機能に関する質問や、もっとサービスを良くするためのアドバイスなど、相互的なコミュニケーションが行われました。
インターン生にとっては、全力で開発に取り組み、エンジニアから率直に意見を貰える貴重な機会となったのではないでしょうか。
▲メンターからサービスに対する評価を受けるインターン生
参加した学生の声(抜粋)
【TECH JAM 参加者】K.Nさん
大学で学ばないnext.jsやreactを使って開発した点が難しいと感じましたが、難しすぎず個人に合わせて実装する機能を柔軟に変えられる点は良かったです。
ハンズオンや開発の中で分からないことがあってもメンターにすぐ相談でき、開発ペースや進捗を見て「実装できる/できない機能」の見極めなども一緒にやれたので、不安なく開発できました。
個人で開発を進め、メンターに相談したりレビューをしてもらいながら一つのものを企画・開発まで行うことができた経験は貴重だと感じました。合宿形式での開発はとても楽しく、充実した6日間を過ごすことができて良かったです。
開発系のインターンは初めてで、分からない点も多かったのですが、親切に教えてくださって嬉しかったです!
担当メンターより一言
今回、病欠で急なメンバーの変更が入り少々ドタバタするシーンもありましたが、最終日にはクオリティの高いWebアプリを実装していただき発表に臨むことができて本当に良かったと思っています。
弊社では、各エンジニアが得意とする技術セットを活かしつつ、最新トレンドに沿った技術でプロジェクトを推進するマインドセットを良しとし、日々システム開発を行っています。
傾向としてRailsやNode.jsによる開発が多く、新しく入社される方にはこれらの技術を中心に研修やOJTを実施し、切磋琢磨しながら成長していただければと考えています。
「新しい技術でウェブアプリを開発してみたい」
「AWSを活用したシステム開発に挑戦したい」
という方がおられましたら、ぜひ弊社にお問い合わせください!