【Sunriseインターン】実務インターンじゃ得られない学び
はじめに
2025年の3月23日から27日までCARTA HOLDINDSさんのSunriseというインターンシップに行ってきました!
めちゃめちゃ学びのあるインターンだったので短いですが記事を残そうと思います。
そして、これからSunriseを受ける方にはもしかしたら自力で気づいた方がいいことも書いてあるので(ソフトスキルや考え方の部分しか書いてはいませんが)、見ない方がいいかもしれません。
Sunriseとは
Sunriseは 「5日間を通して仲間とともに初期アプリケーションとインフラを改善し、 30,000RPS(秒間リクエスト数)を達成するように改善」 するインターンです。(3分で分かる学生向けインターン『Sunrise』: 高トラフィックをさばくアプリケーションを構築せよ!より抜粋)
最初に渡されるのは、素朴に書かれた初期アプリケーションとAWSインフラ環境で、それにチームメンバー4名と話し合いながら変更を加えパフォーマンスをしていきます。
主な技術スタックはGoとAWSです!
参加前の筆者の状態
Goで実務インターン参加経験あり、プログラミング歴は3年ほどです。AWSは一部のリソースを触ったことがあるくらいのレベル感でした。
そしてここで重要になるのは、筆者は 実務インターンの方が学び多そうと思っているタイプの学生でした。なのでこのインターンも春開催のもの少ないし参加してみようという気持ちで参加していました。
しかし後に、この考えが間違っていたとことに気が付きます笑
ワーク
1日目は、講義を少し受けた後実装に入り主に現状把握を行いました。
2日目〜4日目は実装をして、5日目は最終発表をチームごとに行ったというのが大体の流れです!
1日の中で90分ワークを行う→1チーム10分ほどでそのワークの中の成果発表のサイクルを繰り返します。
具体的な内容は来年のネタバレになってしまうのであまり言えませんが、Sunriseは 推測するな、計測せよというテーマがあるインターンです。
そのため、90分の中で何度も仮説を立てて検証を繰り返すということを行いました。
学んだこと
根拠を持った実装をするということ
普段から実装時に方針を立てて行動していくということはもちろん行っていましたが、Sunriseでは実装方針(計測に関する方針)の立て方を群を抜いて細かく行いました。
最終的には、毎回の検証において以下のことをissueテンプレートに書くことをチームの中で方針として決めました。
- 想定している現状
- 仮説
- メリット
- デメリット
- 検証方法
- 結果
- 考察
- 決断
- 次に検証したいこと
こうやって並べるととても多いですね!ただ、このログをちゃんと残すことで最終発表にもすごく役に立ちましたし、なんでその方針を採用したのか(または採用しなかったのか)を自信を持ってこたえられるようになりました。
ひとつひとつの意味を考える
抽象的な見出しになってしまいましたが、現状把握をした時にそれぞれの意味する状況をさらに深ぼることが大事だと学びました。
タイムアウトってなんなのか?負荷に耐えられるってそもそもどのような状況を指すのか?このプロダクトはどんな状況で使われることを想定しているのか?などなど、ひとつひとつをメンバーと擦り合わせる経験ができました。
検証は一回につき一つの施策のみ
当たり前ですが、対照実験をするためには同時に複数の施策をしてはいけません。
少しめんどくさくても、細かくissueとPRを分けて行いました。
最初に開発効率や可観測生を上げる施策をするとよき
最初から目先の良さげな実装に取り組みたくなるのはあるあるだと思うのですが、その前にデプロイフローの効率化やログを見やすくことでとても開発効率を上げることができました。
チーム構築
チームで行うので、チームでのコミュニケーションの回数や質、姿勢が非常に大事な要素でした。
それぞれのバックグラウンドが違う中でどうパフォーマンスチューニングを行なっていくのかや、やるべきことがたくさんある中でどう話し合うかという学びはすごく大きなものでした。
Goが得意な人、あまり触ったことない人、まとめるのが得意な人、アイデア出しが得意な人、色んな人がいる中でどうやってお互いの良さを出していくかを自然に考えられたチームができたように思っています。
感想
実務インターンの方がワーク型より学びが絶対に大きいわけではない というのが一番大きな学びでした。今まで実務でのインターンもいくつかやりましたが、やはり実務だと実装できることが一番の目標になってしまいがちだと思います。けどこのSunriseインターンでは、検証を繰り返す経験で得られる学びがありました。ただ実装するだけから一歩進んだ開発 を今後の自分ができるよう、精進を続けていきたいです。
また、チームについていただいていたメンターさんや講師の方からも学ぶことが多くありました。開発の姿勢について根本的に考え直す機会を提供していただいたことに感謝しています。
ありがとうございました!
番外編
昼休み
この時間がとっても好きでした!
チームのみんなでお弁当を食べながら、ワークについて話したり普段自分たちがどんなことをやっているのか雑談したりしました。
私は文系の学科に所属していることもあって、同世代のエンジニア志望学生と普段あまり関わらないのでとても新鮮で楽しかったです!他のチームとも競っているわけではないので情報共有をしたりもして、すごくいい雰囲気でした。
Ajiting
毎日ではないですが、インターン後にCARTAさんにあるAJITOというバーのような場所でお酒を飲みながら技術について話す任意参加の時間もありました。AJITOで飲むことはAjitingと呼ばれているらしく、その文化を体験できたのもとても良かったです。メンターさんともインターン生ともお話しできるいい機会でした!
Discussion