2025 jig.jp サマーインターンシップ 振り返り(ごじら)

🦖

こんにちは。ごじらといいます。

株式会社jig.jpさんの2週間のサマーインターンシップに行ってきました。

jig.jpはこんな感じ!きれいな社屋!

私の友人が去年と一昨年に1人ずつインターンシップに参加して、とても楽しかったという話をよく聞いていました。

Webアプリケーションのチーム開発ができるということで、気になっていたのですが、私の友人が今年応募したけど一緒に来ないかと誘われ、参加させていただきました。

Web開発もチーム開発も経験が浅く、 足を引っ張らないか心配だったのですが、無事にインターンを終えることができました。よかった~

結論から言うと最高の経験ができましたので、この2週間のインターンシップをまとめます。

インターン参加者を紹介するぜ!

  • J(じぇい): 専攻科1年生。ふぃっとの追っかけ。ぷよぷよテトリスとペットボトルのキャップ投げが上手い正体不明の謎の男。リポDをたくさん飲んでいました。

  • たかた: ガジェットをたくさん持っていて、特にこのインターン中はXREALというARグラスを付けて作業していました。このインターンで自炊に積極的に挑戦していた。偉い。あとリポDをたくさん飲んでいました。

  • たまご: 料理長(ハンバーグおいしそうだった)。洗濯物を干す和室で頻繫に寝ていた。しゅんぴさん(人事の方)とサシで食事に行ったらしい。正気か。この人に逆らうと餓死する可能性があるので逆らえない。

  • はらゆー: 私をこのインターンに誘った人。専攻科1年生。データベーススペシャリストらしいです。いっぱいたべる。

  • あかいし: 岡山から来た人。朝ごはんをいっぱい作っていた(ありがとう)。この人に逆らうと餓死する可能性があるので逆らえない。

  • ぴっちゃん: このインターン参加者の唯一の女子。インターン前半の座学について、ついていけなくなるからと古民家に帰ってからも復習していた。偉い。

  • めぴ: 副料理長。いっぱい料理作ってくれた。この人に逆らうと餓死する可能性があるので逆らえない。CoCのルールブックを持ってきていた(やりたかったなぁ)。機械科出身でありながらバックエンドの難しい実装を頑張ってくれた。

  • ふぃっと: 高専生のなかで一番AtCoderのレートが高い人。体調と引き換えに他を圧倒する実装力を手にしている。マジで何者なの……?

  • しげちゃん: 銅鑼の目覚ましが効かない無敵の男。Webアプリのデザインをど根性で完遂してくれた。一度寝たらなかなか起きないが、最終日はめちゃくちゃ頑張ってくれました。

  • ごじら: 腕時計を忘れた私です。トキポナとエスペラント語を1年くらい勉強しています。異様に日焼けしているのは毎日通学で30分くらい自転車に乗る生活を続けていたため。初日にあれだけ料理しますよ感を出しておきながら、インターン中に作った唯一の料理が「ゆで卵」。おれは!!!!弱いっ!!!!(ドン!)

チーム開発

アイディア出し

1週目の木曜日にアイディア出しからスタートしたチーム開発。 作成する作品のテーマは「レトロ」ということで、昔懐かしいものにちなんだアイディアをひたすら出していきます。
めぴ、ふぃっと、しげちゃん、ごじら(私)からなるチーム「大草原」は、一番ビジョンを決めるのが遅かったです。

Jたちのチーム「たかたまごJ」のアイディア出し(ハーゲンダッツ美味しかったです)

たくさん没案を出した後、「自分で作ったオリジナルのアスキーアートを消しピンの要領で戦わせたら楽しいんじゃないか」という方向性で決まりました。

アスキーアート(こういうの↓)

なんやかんやでPO(プロジェクトオーナー)を務めることになったので、タスク管理がんばるぞ~

1スプリント目

ここでの開発は、アジャイル開発を採用していて、開発を「スプリント」という短い期間に分けて、その期間内に特定の開発目標を設定し、設計、開発、テストなどの工程を繰り返し、完成させるという手法がとられます。

このインターンでは、2スプリントに分けて開発を進めました。

1スプリント目で抱いた感想ですが、

タスク管理ムズすぎるだろ!!!

これに尽きます。

そもそも、チーム大草原の作るアプリは、他のチームに比べるとコア機能の数がとても多いんですよね。人数が1人多い分、多少多くなっても完成するだろうと思っていたのですが、

  • ログイン機能(作ったアスキーアートをユーザごとに保存しておくために必要。セッションの管理が難しそう)
  • ホーム画面(作ったアスキーアートを表示して、編集と対戦ページにつなぐ必要がある)
  • アスキーアートのエディタ機能(完全に「文字」として絵を描く必要があるので難しそう)
  • 対戦機能(物理演算、WebSocketなど必要な処理が多く難しそう)

と、コア機能だけでも大きめの山が3つもあります。POとしてこれらのタスクを割り振る必要があります。今回はフロントエンドを私とふぃっととしげちゃんの3人が、バックエンドをめぴが担当します(この限りではない箇所もいくつかありましたが)、人によって作業のスピードが違うので、「次はなにやればいい?」と言われてしまうことがありました。

実装に関しては、フロントエンドとして十分力を発揮できたと思います。私はエディタのレイアウトを作成しました。抽象的な処理はふぃっとが、WinXPっぽいスタイルはしげちゃんが、バックエンドはめぴが書いてくれました。みんな強すぎない???

対戦機能の物理演算部分について、Three.jsでも使おうかなと思案している間に、ふぃっとが計算部分を自作してくれました。

2次元上で球が衝突した際の回転も考慮した動きを計算する様子

急に物理の授業が始まったので、学校にワープしたのかと思いましたが、さすがのふぃっともテレポーテーションは使えないようで安心しました。

結局1スプリント目で完成した機能は、ログイン機能とエディタ機能の半分と、対戦機能の物理演算部分のみ。2スプリント目もがんばるぞ~(残り2日)

2スプリント目

開発も佳境を迎えました。短ぇ~~時間たりね~~
「おわるかなぁ」と思うたびに「終わる終わらないじゃなくて終わらせるんだよ」と自分を鼓舞してました。

1個のページを作る際に、機能ごとにファイルを分割するということをほぼしませんでした(なんで?????)

これをすると何がまずいって、例えば対戦部分のフロントエンドに1人を割り当てると、コンフリクトするためそれ以上の人を同じ場所に割り当てることができないんですよね。

結果として、私はホーム画面のフロントとバックを実装し終えているのに、対戦機能の実装をなかなか手伝いに行けないということが起こりました(ごめんなさい

ただ、1スプリント目に比べると改善した点も多くあります。例えば、各々がタスクに取り掛かるときは、Issueを立てて、Issue番号をブランチの名前に入れるという規則を付けたことです。これによりどのようなタスクが残っているのかが非常に見やすくなりました。

タグで担当と優先度が一目で分かるように

2スプリント目の私は、ホーム画面のポップアップ、アスキーアートの一覧表示、編集画面と対戦画面にリンクをつなげる機能をつけたり、セッション情報をmapで管理していたのをDeno KVでの保存に変えることで、サーバーが再起動した際にセッション情報が消えることがないようにしたりしました。

イカしたポップアップ

しげちゃんとめぴが対戦機能を、ふぃっとがエディタ機能をバッチリ作ってくれました。ありがとう……!!!!

開発開発開発……(全部終わったらみんなで古民家でボドゲするんだ……って思っています)

発表

ド緊張した~~~~~~~

発表は全社員の前で!ひょえ~~

もともと緊張しいで、場慣れしていないので、自分たちのプロダクトなのに「すごいですよね」と他人事になってしまったり、めちゃくちゃ。あっでも、社員の方たちみんな温かくて、卒業研究の発表よりは話せました!

あと僕がプレイ下手すぎてめっちゃ「八百長?」って言われてました。わざとじゃないんです。信じてください。

デモ会では、たくさんの人に遊んでもらえました!

この発表会、創業者の福野さん(ふくっちさん)の選ぶ「ふくっち賞」と、jig.jpの社員さんが投票で選ぶ「jig.jp賞」があります。発表後の打ち上げ会でこれらの受賞者が発表されました。

さて結果は……?



















優勝だ~!!!!!!!!!

友情!努力!勝利!みんなありがとう!

すみません。つい文字が虹色になってしまいました。

まさか優勝するとは。ほかの2チームもめちゃくちゃすごい作品作ってきたので、どうなるかと思いましたが、大草原みんなの力あってこそです。うれしい!うれしい!

jig.jpのロゴが入ったモバイルバッテリーを賞品にもらいました!やったぁ!

ふくっち賞の発表では、「IchigoJam賞」を頂きました!!こちらもうれしい!

IchigoJam賞!

ふくっちさんから、GIGA IchigoDakeと、IchigoDyhookを頂きました。これがあれば、IchigoJamであそべちゃうという優れものです。

こちらを参考に改良しています)">
帰ってから作った迷路プログラム(こちらを参考に改良しています)

まとめ

2週間という短い期間でありながら、とても有意義な時間を過ごすことができました!今回作った各チームの成果物は、ふくっちさんがまとめてくださっているので、こちらをぜひご覧ください!

github.com

Webアプリについて全然知らない状態からスタートしましたが、1週目の座学や、メンターの方々の厚いサポートによって、素晴らしい作品を作ることができたと思います。

とはいえ、自チームの作品はまだまだ付け加えたい機能があるので、余裕があればフォークして開発続けてみようかなと思ってみたり……?

今後チーム開発する際のフローや考え方が身につく良い2週間でした!ありがとうございました!

大団円

その他

トキポナについて

自己紹介で、「トキポナを勉強している」と言ってみたところ、ふくっちさんが興味をもってくださいました。実は、トキポナの文法書を去年のコミックマーケットに出品したのですが、それを伝えたところ、電子版を買ってくださいました。←!?

とても気に入ってくださったようで、一日一創でトキポナの辞書や神経衰弱などのアプリケーションを作ってくれたり←!?!?

fukuno.jig.jp

金曜日にあったイベント「Cyber Friday」では、トキポナを話題として取り上げてくださったりしました←!?!?!?!?

jan Pukuti li pali e ilo musi pi toki pona!! pona mute a!
ona li kama ken toki lon toki pona kepeken tenpo lili lili. wawa mute!
wile la, o pana sona e nasin pi toki pona tawa jan mute. pona~

写真

他にも、セグウェイに乗ったり、バーベキューをしたり、ご飯に連れて行ってもらったり、前述のCyber Fridayがあったり、西山公園の動物園でレッサーパンダをみたりなど、楽しかったことはまだまだあるのですが、全部書いていたら私の指が擦り減って二度とキーボードが打てなくなってしまうので、いくつか画像を共有して締めたいと思います。

初日のアイスブレイクのあいうえお作文

イタリアンを食べました!

本文中に一切登場しなかった古民家。めっちゃ広~い

最初の自炊はみんなで!

めちゃうまカレー

ルー投入(たかた視点)

笹はら というラーメン屋!

すごいホワイトボード

差し入れに頂いたハーゲンダッツ!!美味しかったです

親子丼!!

夜古民家をはらゆーと抜け出して深夜徘徊したときの写真。こわい

Cyber Fridayで食べたお寿司と唐揚げ!!すごい!!

橋の下でバーベキュー!!

たかいにく

ここでもAHCを怠らないふぃっと

日曜日に、元クラスメイトで集まってボドゲカフェに!!無限に時間が溶ける

これカレー作ってんだぜ。信じられるか?

西山公園のつつじソフト!写真は撮っていないけど、大福パンも美味しかったです

まほろば というラーメン屋!!

つた屋で食べたひな鳥の炭火焼き!!

トマト&オニオン!!知らなかったけどチェーン店らしい

そりゃ知らないわけだ

打ち上げ会のオードブルとお寿司と焼き鳥!!!!!!

古民家最後の日!マダミスをやろうと言っていたけれど、みんな疲れて寝ちゃっています

解散後に数人で集まってせりメンターと(サ)イゼリ(ヤ)へ(福井駅サイゼリヤは、看板の「サ」と「ヤ」が破れて「イゼリ」になっていて、おもしろい。「█エビのサラ█」と「█ルボナー█」を頂きました)

魚心(それはもう想像を絶するほど美味い寿司屋)に行きました。ごちそうさまでした

楽しかったです。最後にJのペットボトルキャップ投げでこの記事を締めくくろうと思います

ありがとうございました。