長期インターンを始めようと思ったきっかけ
高校生の頃からソフトウェアエンジニアという仕事に興味があって、大学生になったらすぐにエンジニアとして働き始めようと決めていました。加えて、大学進学を機に上京して一人暮らしを始めたので、生活費を稼ぎたいという背景もありました。
WESEEKを選んだ理由
エンジニアとしての経験を多分に積めて、かつ給与が頂けるインターンシップを探したところ、WESEEKを見つけました。大学1年生の6月から働き始めました。
インターンでの業務内容
大学1年生でジョインしてから最初の1年は、「GROWI」(WESEEKが自社開発しているオープンソースのナレッジ共有ツール)のソフトウェア開発を担当していました。ちょうどver.7のリリース時期で、ページツリーのリファクタリングや絵文字機能のオートコンプリート、エディタ機能の開発など、新機能の実装に携わりました。
大学2年になるタイミングで、受託開発プロジェクトへの異動を自分から代表の武井さんに打診しました。
(1)インフラ回りの技術をゼロから勉強したかった
(2)受託開発プロジェクトで作っているサービス自体に興味が湧いた
(3)自社開発と受託開発で仕事の進め方や思想がどう違うのかを実際に体感してみたかった
これらの理由からプロジェクトを異動しました。
以来、卒業までの2年間は、 Kubernetes・Helm チャート・cert-manager のアップデートや、Proxmox 上に立てた仮想マシンで RKE2 を動かして k8sクラスタ を構築する、といったインフラ回りの業務を中心に担当してきました。
特に大変だと感じる部分
一番苦戦したのは、1年目に手がけたGROWIのページツリーのリファクタリングです。自分にとって初めてのリファクタリング作業で、何をもって「成功」と言えるのかの判断基準すらない状態からのスタートでした。その時期に武井さんから「単一責任の原則とは何か」「保守性の高いコンポーネントとはどういうものか」といった前提を一から教えてもらいながら、見るべきコードの範囲の広さと格闘していました。
エディタ機能の開発も大変だった覚えがあります。 Markdown ひとつとっても条件分岐が大量にあり、どこかを直すとどこかでバグが生じるという状態が続いていました。
受託開発プロジェクトに異動した直後2か月程度は、 Kubernetes も Helm チャートも cert-manager も初挑戦だったので、かなり苦戦した記憶があります。
業務の面白さ・やりがい
インフラ業務に触れてみて感じたのは、「大きな技術は、それに見合う舞台があって初めて価値を発揮する」ということです。Kubernetes のような大規模向けの技術は、個人開発の規模では導入コストや学習コストが見合わないことが多いと感じていました。
WESEEKでの受託開発プロジェクトはまさしく、コストと成果が見合う舞台でした。個人開発ではオーバースペックになってしまうような技術を、給料をもらいながら実務の中で勉強できます。これは長期インターンならではの、とても贅沢な環境だったと思います。
WESEEKならではの文化や環境
WESEEKは社員全員がプロジェクトの垣根を越えて、インターン生の相談に親身に乗ってくれる会社です。仕事終わりに社員の方と雑談していて、気づいたら3時間ぶっ通しで技術の話で盛り上がっていたこともありました!分からないことがあればすぐに口に出して相談する、というのがWESEEKでのインターン生活の中で自然と身についた習慣です。
ベテランの社員の近くで仕事をしていると、その人が普段使っているツールやエディタ、仕事の進め方が自然と目に入ってきます。生成AIに質問した場合、自分が指示した範囲内の答えはおおむね正しく返答してくれます。ところが経験を積んだ社員の方に同じように質問をすると、自分が知っている領域を超えた技術を教えてくださることがあります。
技術力だけじゃない、身についた力
3年間で一番大きかったのは、自社開発(GROWI)と受託開発、両方の現場を経験できたことです。自社開発は「こんなサービスがあったらいいな」と思ったらすぐ手を動かせるボトムアップ型、受託開発は顧客との契約が絡む分トップダウン型と、同じ会社の中でも仕事の進め方や思想がまったく違うことを肌で理解できました。
それに加えて、インフラのような大規模な技術に触れたことで、「この技術は今の自分の状況・規模に見合っているか」を考える視点、いわば技術の身の丈を見る目が身についたと思っています。これは個人開発だけをしていたら得づらかった感覚です。
長期インターンを始めたい大学生へ
ソフトウェアエンジニアに少しでも興味があるなら、長期インターンは絶対にやってほしいです。できれば大学1年生などの早いうちから始めるのがおすすめです。
長期インターンをやると、社会人になったときの「仕事の解像度」が格段に上がります。自社開発が好きなのか受託開発が好きなのか、 BtoC が好きなのか BtoB が好きなのか、そういう自分の「仕事への好み」も、実際にやってみることでしか分からないと思っています。エンジニア就活でも、実務経験として長期インターンの話は高く評価してもらえる場面が多かったです。
WESEEKでは、インターン生は出社が前提です。プロのエンジニアの方々と肩を並べて、実務的な技術を習得できる環境は、出社して社員の方々と関わってこそ活きてくると思っています。ぜひ積極的に挑んでみてください!