エキサイト就業型インターンBooost!!!を通じて実業務開発について学んだ!!!

はじめに

こんにちは!2025年の10月から1ヶ月、経営管理SaaS KUROTENの就業型インターンに参加させていただいた高橋です。今回のインターンで学んだことに関して紹介します!

  • インターンシップでの業務内容
  • 実務で行う開発と趣味開発の違い
  • コミュニケーションで必要なこと

自己紹介

自分は大学3年生で、大学では情報系の学部に通っています。大学1回生の秋からプログラミングを始めて競技プログラミングやweb開発をやっています!

インターンシップでの業務内容

今回自分はサーバサイドエンジニアとして以下の二つのコンテナとそれに紐づくDBテーブルを実装しました。

  • APIコンテナ
  • 通知コンテナ

APIコンテナ
websocketで値を受け取り、データベースに対して値を入れる処理とAmazon SQSに対してデータを流してあげる処理をする。

通知コンテナ
SQSから値を受け取りAmazon SESを用いてメールを送る、また処理完了の通知をブラウザに返す。

実務で行う開発と趣味開発の違い

自分が趣味開発と違うと感じたことは以下の点です。

  • github上でしっかりと修正履歴も残す
  • テストコードを書く
  • GHAの実行時間とテストコード量の考慮
  • 命名の際の可読性

github上でしっかりと修正履歴も残す

自分はいつもコンフリクトするのがめんどくさくgit rebase -i HEAD~ngit commit --amendなどを多用して履歴を最小限にしてマージすることがよくあるのですが実務ではこれをすることでバグの発見が遅れたり、変更履歴をたどりづらくなるデメリットが大きくなるのでfix履歴も残すようにすると良いと学びました。

テストコードを書く

実業務ではただ動作確認としてのモックを作りそれを他の層から呼び出すということは行わずにテストコード用のライブラリを用いてそれぞれの層に対してテストを行なってあげることによってその層の挙動の確認を他の層に依存せずに書くことができるというのがとてもメリットに感じました。

GHAの実行時間とテストコード量の考慮

実務に携わるまではGHAでのテストコードは多いほどそのコードの品質を保てるという点でいいと思っていました。しかし今回業務に携わらせていただいて、もしprod環境でバグが発生した際にそのバグを早急に修正し,dev環境、prod環境にデプロイしていくという作業を考えたときにテストコードが多いことでその過程に遅れが発生してしまい修復作業に時間がかかってしまいます。そのためテストコードを書くのはapplication層以外の部分にしているという実務ならではの話を聞けてとてもいい経験になりました。

命名の際の可読性

コミットメッセージやコメントアウトなどを書く際に英語をなるべく使わないようにすることで認知負荷を下げることを教わりました。コミットメッセージにはそのままブランチ名を書いていましたがこれでは直感的に理解しづらい部分があり日本語で書いた方がわかりやすいなと自分でも感じました。

コミュニケーションで必要なこと

基本的には作業の邪魔にならないようにPRのレビューや確認事項があるときはslackでのメンションで相手の作業を止めないように心がけています。しかし実装方法やドメインについて話すときは通話で話すことによって文面での意図のすれ違いやかえって業務効率が下がってしまうことを防ぐことができると学びました。

最後に

最後になりますがこの度インターンでお世話になったメンタの方、エンジニアの方、人事の方本当にお世話になりました。 今回自分が上記のような機能を実装できたのはメンタの方が丁寧にどうすれば良いかを教えていただいたり、自分が意見を言ったときにそれに対してフィードバックをしていただいたおかげです。また今回インターンで様々な体験を積ませていただけたのは人事の方が手厚くサポートしていただいたからです。このインターンで本当にたくさんのことを学ばせていただきました。1ヶ月という短い間でしたが本当にありがとうございました!