jig.jpインターンシップ 2週間の振り返り(はらゆー)

おはこんばんにちは、はらゆーです!

今回は、私、はらゆー視点でjig.jpのインターンシップについて振り返って行こうと思います。

 

インターンシップ参加前

私は、友人のごじらくんと同様、過去2年間で友人が3名jig.jpのインターンに参加していたのをきっかけに、このインターンシップを知りました。

このインターンに参加するまでの私は1年間のWEBアプリ開発経験はあったものの、ハッカソンを経験したことがなく、自分がハッカソンでどこまでやれるのか、自分の体がどこまでハッカソンの開発に耐えられるのか、という興味本位でこのインターンに参加しました。

つまり、限界まで開発してぶっ倒れるつもりでした。

その結果がこちら

睡眠開発

なんだこれは!?(なんなんだこれは!?)

なんだこれは!?(なんだんだこれは!?)

 

というわけで今回は、最終日直前の開発でこうなってしまった私のインターンシップについて振り返っていこうと思います。

 

jig.jpへの移動(と愛知崩壊の危機?)

インターンシップ初日、私は愛知県から、8:51発の特急しらさぎ3号に乗って名古屋を発つ予定でした...

 

 

本来乗る予定だった特急しらさぎ3号が1時間ほど遅延しました。

↓当時の状況

 

また、そのすぐ後に愛知県付近で地震が発生し、初日からもうダメなんじゃないかと思わされました。

↓当時の状況

typhoon.yahoo.co.jp

今になって確認してみると、案外全然大丈夫でしたね

インターンが終わって帰ってきても、ちゃんと愛知県が残ってて安心しました。

 

道中、しらさぎが1時間ずつ遅延した影響で、しらさぎ5号の指定席に乗る予定だった方に「席を間違えていないか」という話をされながらも、なんとかお互いに誤解を解き、なんとかギリギリ予定時間の13:00までにjig.jpに到着することができました。

 

会社への移動に関しては、電車の遅延のせいで、しらさぎで食べようと思ってた朝食が10時ごろになったこと、昼食が抜きになったことくらいしか語ることもないので、とりあえず道中に撮影した橋の写真でも貼っておきます。

この川、藻類が太陽の光でキラキラと輝いていて、とても綺麗でした!

橋の写真

橋の写真です!

 

インターンシップ1日目

インターンシップ初日は、正直何があったかあんまり覚えていませんが、共有されている写真を元に書いていきます。

 

そういえば、まず自己紹介がありましたね。

ここ2年くらい、自分のアピールできるポイントがデータベース特化なことくらいしかなかったので、ここをアピールしました。

(インターンシップでも、いきなりMarkdownSQL好きをアピールして、他のインターン生を怖がらせましょう!)

 

自己紹介画像

自己紹介をする私(はらゆー)

あとは、アイスブレイクだったり、Git入門講座なんかもこの日にやった気がします。

非常にありがたいことに、あいうえお作文ではなぜか3連勝して、Tシャツやトランプなど、素晴らしい品々をいただくことが出来ました。ありがとうございます!(なぜか写真が見つからない)

 

あいうえお作文

あいうえお作文の発表をする私(はらゆー)

なぜか振り返る際に、都合よく自分の写真が出てきてすごいですね。(おそらく、ごじらくんが撮影しておいてくれたのでしょう)

 

夜はイタリアンを食べたりしました。

メニュー全制覇はできなかったけど、美味しかった!

 

イタリアンを食べる人々

食べ放題イタリアン(最高)

 

古民家

食事が終わった後は、古民家に行きました。

この古民家では、2週間インターン生メンバーと共に過ごし、苦楽を共にしてきました。

 

 

古民家の良いところに関しては、他のみんながいっぱい褒めちぎってくれていると思うので、私の方では、あえて悪かったところ・つらかったところを挙げていきます。

 

 

 

 

というわけで...

 

 

 

完全独断、古民家のここがダメ!5選!

 

 

第5位!洗濯機が1台しかない!

これマジでとんでもないです。

これのせいで、洗濯待ちで寝落ちてる人間が何人いたことか...

私も、洗濯待ちで寝るのが遅くなることが何度かありました。

 

デフォルトで柔軟剤が置いてなかったのも地味に辛かったですね...

 

ちなみに、洗濯物を干す場所も不足していて、洗濯物が中々回収されないこともあったので、それも加味すると、古民家内では洗濯関連でかなり地獄と化していました。

 

 

 

第4位!古民家の周りに何もない!

というわけで4位にランクインしたのは、古民家の周りに何もない(飛び出しくんしかない)ことです!

 

なんと、この古民家から会社まで通勤する際、徒歩で20分程度かかるバス停まで歩いていきます。

しかも...

 

バスの本数が少なすぎる!!!

1本逃したら余裕で遅刻どころではなくて怖いですね!

歩いたらとんでもなく時間がかかってしまい、現実的ではないので、このバスを逃さないかどうか、毎日ヒヤヒヤでした。

(ちなみに、実際に鯖江駅から古民家まで歩いたら、徒歩で2時間強かかりました。)

バスの時刻表

本数が少なすぎるバス

そのくせ、何故か飛び出しくんはめちゃくちゃ多いんですよね。

何日目のことか忘れたのですが、深夜に散歩がしたいなぁと思い、ごじらくんを誘って散歩をしたことがあったのですが...

 

 

 

 

これとか...

飛び出しくん1

飛び出しくん1

 

 

 

これとか...

飛び出しくん2

飛び出しくん2

 

怖すぎるだろ!!!!

 

なんで安全呼びかけのためのものにホラー要素つけてるんだ!?!?

 

という感じでした。

ちなみに、スーパーとかコンビニも歩いて30分程度行かないと1つもないような感じでした。

 

 

 

 

第3位!大広間の明かりが暗すぎる!

古民家に入ると正面に位置している大広間

この大広間、かなり広くて、この建物の中で一番スペースがあるので、ここにみんなで集まって、遊んだり、ご飯を食べたり、開発をしたりして、この大広間で過ごすことがかなり多かったんじゃないかなと思います。

大広間の画像

大広間

 

ただ、この大広間...

なぜか人が気絶していることが多いんですね...

気絶する人々

気絶する人々

 

開発期間中もこの睡魔に悩まされ続けたのですが、その結果として至った答えは...

大広間の明かりが暗すぎる!!

 

これが判明したのは、最終日の2日前、なんか大広間が暗いような気がして、作業場所をキッチンに変えてみたら、あらビックリ。

全然眠気が襲ってこず、普通に作業することが出来ました。

大広間の絶妙な明かりが、多くの人々を眠りに誘っていたんですね〜

 

というわけで、第3位にランクインしたのは、大広間の明かりでした。

 

 

 

 

第2位!寝室の電球!

というわけで、第2位は寝室の電球です。

(画像が無くて申し訳ないです。)

この電球は、いわゆる「ドラえもん部屋」と呼ばれていた2段ベッドのような部屋ではなく、和室の方の寝室に吊るしてあったものです。

 

この電球、何がダメかというと、結構な紐の長さで天井から、部屋の中心で吊るしてあるんです。

しかも、この高さがいやらしくて、丁度私の頭の位置くらいに電球が来るように吊るしてあります。

 

で、何が起きたかというと

 

私は、この部屋に入るたびに、ほぼ100%この電球に頭をぶつけていました。(痛かった)

私はみんなが寝静まってから寝ることも多く、部屋が真っ暗な状態で歩くことも結構あったのですが、その度に頭をぶつけていて、とてもとても辛かったです... (T^T)

 

 

第1位は...

キッチンの写真

 

 

↓↓↓↓↓↓この部分!!!!!↓↓↓↓↓↓↓↓↓

キッチンの天板角

このキッチンの上部にあるパネルの角だけは絶対に許しません。

この角も、寝室の電球同様に私の頭を攻撃してきます。(私が不注意なだけ)

...が!しかし、このパネルは、なんと電球の数百倍の攻撃力を持っています!

このパネルには、3回程度しか頭をぶつけなかったものの、最後の1回で致命傷(大げさ)を貰い、頭にたんこぶとカサブタができました...

 

 

 

......とまぁ、今回は悪いところを列挙したわけですが、ここまで悪いところがあっても、それ以上に楽しいこともあり、退去するときのことは涙無しでは語れないほど、かなり充実した古民家生活でした。

 

勉強会(2~4日目)

ほんっっっっとうにに申し訳ないのですが、ここまで書くのにかなりの時間を使ってしまい、既に5時間くらいかかってしまっているので、勉強会パートは簡単にまとめさせていただきます。

 

勉強会では、結構知っている内容もありましたが、幾つか勉強になったこともありました。今回は、その中でも特に印象に残っているものを取り上げていきます。

 

特に今回の開発でも使ったCSSflex、gridに関する勉強はかなり役に立ったんじゃないかなと思います。(これ理解しただけでWEBエンジニアとして10倍くらい強くなった気がする)

 

デザインの勉強に関しては、今まで感覚的にデザインを触ってきたのもあって、具体的に学ぶ機会はなく、コレクションビューやシングルビューといった概念を初めて知ったので、とても勉強になりました。

 

あとは

CORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORSCORS......

CORSに関しては、正直今までトラウマものでしたが、今回説明を聞いて若干克服に近づいた...かも?(尚、今回の開発には全く登場しなかった)

 

勉強会の期間は、まだ開発が始まっておらず、余裕があったので、昼休憩中にみんなでセグウェイに乗って遊んでいました。(なぜか動画ばっかりで写真が見つからなかった...)

 

 

開発(5~10日目)

インターン本命の開発パート!

まずはアイデア出しから始まりました。

イデア出しと要件定義によって、机の上が大量の付箋とメモ紙だらけになりました(笑)

イデア出しが一番難しい部分でしたが、一つアイデアの出し方を学ぶことが出来て非常に良かったです!

アイデア出しにより机の上が大量の付箋で埋め尽くされる様子

大量の付箋

第1スプリント

ある程度アイデアの要件定義をした後、とりあえず開発しながら要件を固めていこうという方針で、うちのチームはすぐに開発を始めました。

今思えば、PO判断としてはこれはあまりよくなかったのかなと思います。

第1スプリントでは、私が勝手に設計をして、それを共有した気になっていて、結局、実装するときもやり方や仕様について毎回細かく話していたような気がします。

 

また、私がfrontend・backendどちらにもサポートに入るという宣言をしていたのにも関わらず、このときはほぼbackendにしか入れておらず、frontend担当のぴっちゃんにはかなり負担をかけてしまったのではないかなと今でも反省してます。

実際、かなりUIデザインに悩んでいたので、相談に乗れなかったのは本当に申し訳ない...

 

結果として、第1スプリントでは、チームメンバー全員でビジョンを合わせて、同じビジョンを見ながら開発することが出来ていなかったのではないかなと感じました。

 

 

第2スプリント

第2スプリントでは、第1スプリントの反省を踏まえて、まずは再要件定義を行いました。

ここら辺のメモだったり、要件定義だったりを、いけさんがしっかりまとめてくださったので非常に感謝....。

 

この第1スプリントの反省も生きて、第2スプリントでは、全員の役割分担もしっかりできて、かなり上手くプロジェクトを回せたんじゃないかなと思います。(安堵)

開発中

開発中

 

 

第2スプリントでの開発は、第1スプリントに比べて順調に進んでいたように感じましたが、発表日直前の木曜日、あと1日で動くものを仕上げなければならないという大きなプレッシャーがやってきます。

 

開発最終日、今まで疲労ですぐに寝てしまっていた私は、なんとかして体力を温存しながら開発をしようと考えていました。

なんとか楽な体制で開発できないかな〜と考えていた私の眼の前に現れたのが

XREALをつけた、たかた

XREALをつけたたかた

XREALをつけたたかた

なんと!!!!

XREALを貸してもらえました!!!!!

ヤッターーーーーー!!!!

たかた!ありがとう!

たかた!神すぎる!

XREALをつけた人

XREALをつけてpc操作をする私(はらゆー)

というわけで、限界開発がスタートしたわけですが、私が実装していたバックグラウンド処理で、なぜか同じ処理が何度も発生してしまうという不具合が発生していたので、私はその対処に追われていました。

その間に、チームメンバーは開発が終わってそうだったので、チームメンバーのあかいし・ぴっちゃんには先に寝てもらっていました。

 

そして、バックグラウンド処理の不具合を解消してPRを出して、「よし、これで全ての機能が動くだろう」と思っていたのですが......

 

 

悲劇発生

 

新聞ページに遷移しない!!!!

 

 

これを処理するために、私は転がりながら不具合対処を始めました。

このときには既に、XREALで後ろが透過しているのが邪魔だと思い、持参していたアイマスクで視界を塞ぐことで、集中して画面を見ることができるようにしていました。(ARのメリットが...)

そして、このとき作業していた大広間が少し寒かったので布団を被った結果...

 

できあがったのがこちら!

睡眠開発

アイマスクをつけて転がりながらXREALに表示した画面で開発する私(はらゆー)

※寝ているわけではないです。(ちゃんと意識ありました)

 

というわけで、このブログの最初に作った意味わからない伏線を回収することができたので、このブログを書いている私は今、謎の満足感に満たされています。

(最初に伏線なんて張るんじゃなかった...)

 

なんやかんやありましたが、なんとか形になったものを作ることができたんじゃないかなと思います。

 

 

 

発表&デモ会

1週間かけて、チームで作り上げた作品を発表しました。

↓↓↓↓↓実際に作り上げた作品はこちら↓↓↓↓↓

https://akaishitaku-2025-summer-66.deno.dev

 

作品名は

ちょべりぐ新聞掲示

1週間の短期開発にしては、かなり良いものができたのではないと非常に満足しています。

これも全てチームメンバーとメンターのいけさんのおかげ...(ありがたやー)

 

私が主に担当したのは

  • Gemini APIによる要約(バックグラウンド処理)
  • WebSocket
  • 新聞レイアウト作成

という感じでしたが、特につらかったのは新聞レイアウトでした。

 

gridむずすぎやろ!!!!

新聞レイアウト

新聞レイアウト

ここに関しては、いけさんのサポートが無かったら、潰れてたんじゃないかなと思います。

 

正直、直前までUIの調整をしていたのもあって、発表用スライドを作る時間はありませんでしたが、それを変なテンションで無理矢理乗り切るのがめちゃくちゃ楽しかったです!

後から、じぇいに「声デカい」と言われました(笑)

ちょべりぐ新聞編集部 発表中

ちょべりぐ新聞編集部 発表中

 

発表会の後は、社員さんによる攻撃k...デモ会が行われました。

私は、実務経験の豊富な社員さんがどんな攻撃を仕掛けてくるのか興味津々で、ずっと攻撃を試みている様子を眺めながら、自分の作ったシステムの脆弱性を自分で考えるという頭のおかしい行動をしていました。

社員さんと一緒にシステムの脆弱性を探す私(はらゆー)

社員さんと一緒にシステムの脆弱性を探す私(はらゆー)

途中、知人のm-satoくんがendpointに対して連続リクエストを飛ばしてこようとしたときは、流石にレギュレーション違反(frontendサーバとbackendサーバを分けていれば発生しない問題なため)だろうと思いましたが、攻撃可能な時点でぐうの音も出ませんでした。(デモ会までに不要なendpointを閉じる余裕がなかった...!悔しい...!)

 

 

結果!

jig.jp賞は逃しましたが、福野さんによる「ふくっち賞」の「AI賞」を受賞することができました!

嬉しい〜〜〜〜〜!!!!!!!

AI賞 受賞!

 

あまりこういう風に、自分たちで作ったシステムをちゃんと評価していただける機会が無かったので、今回、こういった受賞ができたのは、かなり自分自身の開発に対する大きなモチベーションにつながりました!

 

その他

このインターン内には、他にもいろんなイベントがありました。

  • サイバーフライデー
  • LT会
  • 西山公園散策
  • jigカレー
  • 無責任ブレスト

などなど...いろんな面白いイベントがありましたが、ブログの序盤で張り切り過ぎたせいで、今の私にはこれらを書く体力は無いので、ここら辺が気になるよ!って方は、他の方のブログを見てください!

 

ちなみに、最終日に「福井で食べたもので何が一番美味しかった?」と聞かれましたが、正直ダントツで

サバエドックが美味かった!!!!

↑これおすすめです。みんな食べましょう。

 

チームメンバー紹介

なぜか、ごじらくんにインターン生紹介を書くように言われましたが、今の私にはそれができる余力が無いので、お世話になった偉大なチームメンバーの紹介をします!

 

あかいし

うちのチームの激強backend担当!飲み込みが早い!

私のこだわりで、Key Valueで無理矢理リレーショナル・データベースを作ってしまったけれど、最後の方はそれに対応してAPI設計しててすごかった!

これからWebSocketを学びたいという熱意に感動した!!

 

ぴっちゃん

うちのチームの最強frontend担当!

実装の中で急成長しててすごかった!昔の自分はどうやって成長したのか、こんなに早く成長できたかを考えさせられてしまった...

スレッドとか掲示板のUIがリアルすぎてマジで天才だった!!

 

いけさん(メンター)

うちのチームの超超超超最強WEBエンジニアメンター!

なんでこんなUI実現できるの!?これ人間業なの!?

と思わされる過去の作品を見せていただいたり、新聞レイアウトでめちゃくちゃサポートしていただいたり、マジでめちゃくちゃ助かりました!!

 

あとがき

実は、インターンシップに参加する前から、自分の中でこのインターンシップの目標・やりたいことを幾つか決めていました。

 

  • チーム全員、心の底から楽しみながら開発をする
  • WEB開発の理解が曖昧な部分(CSSやCORS)の理解を明確にする
  • インターン期間中に福井に行った元同級生に会う
  • m-satoと共に魚心に行く(確約)

 

なので、これらについても最後に振り返っていこうと思います。

 

チーム全員、心の底から楽しみながら開発をする

これは、「作っている人間が楽しんで作っていないシステムは、他の人が触っても楽しくないだろう」という個人的信念から来ているものです。

それに、チームメンバーが楽しくないのに無理に開発している姿を見るのもつらいですから、やっぱり、複数人で開発をするのであれば、その全員がその開発を楽しめなくちゃいけないと思っています。

なので、ここに関しては割とずっと気にしていたのですが、最終日にぴっちゃんに開発が楽しかったかと聞いたら、「はらゆーはメンターみたいだね」と言われてしまいました...(笑)

何はともあれ、結果としてはみんな楽しんで開発が出来たようで、POとしてもめちゃくちゃ嬉しかったです!

 

 

WEB開発の理解が曖昧な部分(CSSやCORS)の理解を明確にする

これは超完璧に達成出来たんじゃないかなと思います!

だって、いけさんのサポートがあったとはいえ、新聞のレイアウトを実装してますからね。少なくともgridに関しては完璧です!

日々成長していて最高!!

ちなみに、Deno KVとかバックグラウンド処理、Gemini APIを扱うところ辺りも初めてやったことで、とてもワクワクしました!

 

 

インターン期間中に福井に行った元同級生に会う

これも無事達成することができました。

jig.jpに就職したm-satoくんは勿論、もう一人の福井にいる友人とも再開し、ごじらくんを含め4人でボドゲカフェでボードゲームをしてきました!

楽しかった(写真はごじらくんの方のブログに上がってるので、そちらを参照)

ごじらくんの振り返りブログ

 

 

m-satoと共に魚心に行く

これ、実は半年前(jig.jpインターンの応募をする前)から決めていました。

そもそもjig.jpのインターンに行けるかすらわからないのに。

しかし、無事にインターンに参加できたということで、これも達成することができました!やった〜〜〜!!!

魚心で寿司を食べるm-sato

なぜか、2人ほど予定外の人もついてきましたが、これはこれで面白いのでいいでしょう。

なぜか魚心についてきた人 * 2 (じぇい&ごじら)