うすゆきブログ

とある大企業の長期インターンに参加してみて

2022年12月21日 2022年12月14日

はじめに

“とある企業”としているのは、企業名や業務内容を含ませて世に解き放つ許可を手にできなかったため、このような形でブログとした形です……(土佐日記で紀貫之が女性を演じた的なノリ)
業務内容や企業にかかわることは一切書きません。

そしておそらく、万人に対しておもしろくない記事になります……自己満足記事です。

概要

インターン期間は1ヶ月ちょっとの物理出社インターンです。
1ヶ月は短期という流派もありますが、私としては大学生が1ヶ月フルタイムで働くのは紛れもない長期だと考えて長期インターンと名乗ってます(オレオレ雑理論)。
参加時期も年度も職種も控えます。とにかく企業を特定できるような内容は一切書きません。

ここからは敬体でなく、常体でいきます。

お仕事で学んだこと

顧客が本当に必要だったものを考える

ビズネスサイドの方から依頼されたチケットをこなすお仕事だった。

言われたとおりにすればチケットを1つ終わらせることはできたが、それだと正しいデータが今後取得できないリスクと汎用性に欠ける問題があることに気づいた。
メンターさんと相談して、依頼された方ともお話して別の方法を取ることにした。

よく見る「顧客が本当に必要だったもの」の絵があるが、あれは本当で、顧客自身が本当に必要なものを知っているとは限らないというのが大きな気付きだった。

無知の知

私は無謀な人間なので、社内で使っているとあるシステムを改修しようとか思っていた。
メンターさんと話しながら進めてたが、途中で挫折した。

数日頑張ってどうにかるな世界じゃなかった。
圧倒的に環境を知らなかったことが原因で、完全に無知の知だった。

知見としては不便に感じたり改善の余地が明らかに残っているシステムは理由があってそうなっていることが多いということ。
だいたいのことには理由が大体あって、素人がとっついて解決できるものではないことが多い……(必ずしもそうではないが)

困難は分割せよ

哲学続き。

これは元々思っていたことだし実践を心がけてきたことだけど、改めてインターンでのお仕事で感じた。
行っていた業務の都合上、理解する領域があまりにも広く、ぱっと見絶望すら感じる世界だった。
こういうときにタスクを別けて作業していくと心理的にかなり快適に作業ができた。

特に規模が大きいと、作業をしている最中に今自分がどこに居るのかすら分からなくなって本当に危険。

メンターさんから学べたこと

それ当たり前じゃね?ってものもあるのかもしれないが……自分にとっては知識でなんとなく得ていたものを実際体感して痛感したことが多い。

インターンは技術力だけの場ではないと感じた。
いわゆるソフトスキルとハードスキル的な問題で、インターンは前者も得るものとして大きいと感じた。

常に目的考える

これも業務依存では若干あるが、軽い気持ちで進むとやってることを見失いかける。
これがめちゃくちゃあって、常に目的を意識することが大事だと思った。当たり前かもだけど……

特にこの事を強く感じたのはメンターさんに読んでる本を伺ったとき、1冊1冊の本の感想をnoteの非公開記事でまとめてて、そのどれもで本を読むときに目的を設けていたことに衝撃を覚えたことが原因。

お仕事だけじゃなくて、周辺の諸々にも目的を常に持つのが大事だと痛感した。

ほうれんそう

ただ単に「報告、連絡、相談」するのは大前提として。

なにか実装を進める時、まず大事なのは選択肢を勝手に狭めないこと。複数実装の候補を用意し、それぞれのメリット・デメリットをまとめてから移すほうがよい(なぜそうしたかを説得もできる)

そんでもって、こういう方向で行きますっていうのを実装前にメンターさんに相談することが大事だと気づけた。方向の違いを最初に直せるので、自信満々に完成した状態で持っていって求められていたもの違うじゃん……っていうのを防げる。

出戻りが減るのは精神的にもかなり大事だし、自身もメンターさんにとってもお互いにメリットが大きい。

そして話を進める時に大事なのは事実と解釈とアクションを分けること。(雲雨傘の論理)
雲が出ている(事実)ので、雨が降りそう(解釈)だから、傘をさす(アクション)のように、事実と解釈とアクションを別けて説明すると相手にちゃんと伝わると知った。

メンターさんが作る会議スライド拝見させてもらって感じたのは、ちゃんと数字で示していること。
このツールの導入で作業時間が何時間減ったとか、バッチの実行時間がどう減ったとか。
私がよく作るときめき駆動のスライドとは説得力ぜんぜん違うなと思った。

KPTと1on1

毎週KPTの時間を設けてもらった。Keep, Problem, Tryに加えてメンターさんから私自身へのフィードバクもしてもらえた。

さらに毎日1on1で疑問に思っていることを聞くタイムを設けてもらっていた。
毎日固定で存在し、本当に自由に聞いて良いという存在が有意義になった要因として大きい。
例えばメンターさんがインターンを受け入れることのメリットとかそういう直接仕事とは関わらないことまで聞けたのがよかった。

大きい企業について

社員数が万単位の企業でのインターンは初めてだった。

単純に企業規模だけで比べることもできないし、もちろんすべての部署を見たわけではないので一概には言えないが、大企業の魅力も感じた。

福利厚生

社食や福利厚生を始めとして規模が大きいと1人あたりの単価が安くなるのか、かなり充実している。
インターンとはいえ雇用契約上はアルバイトだったので、福利厚生の恩恵にあやかることができた。具体的な内容は会社のことになるので言えないが……

技術

大企業でも個人開発でもプログラミングをやるという行為自体に違いはない。
ただ使ってるSaaSやツール、その他諸々には大きな違いがあって、個人では到底手にも届かないものを使っていたりして感動した。
これは難しいところで、お高くてつよつよのSaaSなどは日々の個人開発にはスキルコンバートできない問題をはらんでいる。趣味開発をやってる身としては少々悩ましかった。

たてわり

伝統的大企業は縦割りで某大手xx社のエンジニアはプレゼンが多すぎてパワポエンジニアなんて呼ばれてるんだよ……って先輩とかから聞いたことがある。

私がインターンした企業にその類のことはあまり感じなかった反面、少し縦割りでの業務というのも感じた。
というかそうしないと規模がでかすぎてやっていけない。し、これまでアルバイトやインターンしてきた企業が小さめだったのでそこ基準で考えてしまっている癖がある。

これはメリット・デメリットどちらもあるし、人によると思うけどやっぱり自分はフルサイクルとかフルスタックにやってくのが楽しいなと思ってしまった。

これも部署によるが、本当に様々な人が居た。大企業の魅力だと思った。
少なくとも日常的に触れられる世界とは外国人比率が桁違いで、英語が飛び交って留学している気分だった。

あとタイムゾーンの違う人とやり取りするという体験は新鮮で感動した。

言語

会議は英語だったし、インターンの最終発表も英語だった。
私は日常英会話を聞き取れるくらいの英語スキルはある一方で、話すとなると全然できない。
メンターさんとのやりとりなどは日本語だったのでありがたくぬるま湯につかっていたけど、他のチームメンバーの方と英語でコミュニケーション取れたらもっと充実していたなって心の底から思った。
話できないのがめちゃくちゃ辛かった(厳密には全く話せないほど英語ができないわけじゃないのに、物怖じしていた)。

コードのコメントやPull Requestのメッセージも英語にする必要があり、話す力だけでなく書く力も必要だった。ただここに関してはDeepLとかGoogle翻訳でなんとかなるので、問題は直接会話のコミュニケーションな気がする。機械翻訳どころか辞書すら使えないので、単語知らなかっただけで会話が成り立たなくなる……

一方でなにか伝える時に日本語が出てくるのが日本人なので、説明に必要以上に時間がかかってしまう英語より母国語で話せるともっと仕事のスピード上げられる気もしてしまった。

流暢に英語を話すメンターさんは純粋にかっこよかった。
不純だが、こういう視点もモチベーション的には大事だと思う。

オフラインインターンについて

寮生活

1ヶ月社員寮に泊まって通勤をさせていただけた。
立地も環境も快適だった一方で、私は集団生活は疲れを感じてしまうのかなと思った。

社食

社食は美味しい。しかも普段食べられないレベルの価格帯のものを食べられてしまう。
ここで初めて食べた食材があるほど……

一般大学生にとっては学食で満足できなくなる危険があった(そんなことはない)。

物理出社

物理出社はモチベーションが上がるしオンラインより集中できた。
1ヶ月経っても気持ちは変わらなかったので、自分には物理出社が向いていると感じた。

正直満員電車に揺られるのも社会の一員になってる気がして楽しかったのだが、これは完全に田舎者の考え方なので、慣れると満員電車も辛くなる気がする。

首都圏という立地の良さ

首都圏の立地の良さは本当に段違いだと思った。
平日オフラインの勉強会に行けたりする……

自分はインターンのお仕事終わりにHTML5とか勉強会に参加したりできた。

就職先で東京を選ぶのめちゃくちゃ良いなって感じた……圧倒的にこの利点が大きすぎる。

同僚

オフラインインターンなら現場の手さばきとか見れるのかなと考えていたが、コロナ禍や隣の席との距離の都合で難しかった。

調べて分かることではなく調べる種が欲しい。例えばバージョン管理の概念を知らなければgitについてのtipsを得ようがなく、0→1となるものがあれば大きな変化になると考えたため。
以前お世話になったインターンで、ただコミットしてブランチ切るだけだったgitの使い方が根本から変わったことがあり、知識量としては小さいものでもそれが複利的に役立つという経験をしたことが動機だったりする。

メンターさんにこのことを話した結果、粋な計らいをしてもらい、同じ部署、違う部署の方複数人とお話する機会をいただけた。
しかし会話だけで手さばきを学ぶということは難しく、中々上手くいかなかった(機会を作ってくださったメンターさん、会社の方々に申し訳ない)。

「お仕事してるときどんな効率化してますか」とか聞いても、「特にしていないよ」って言われることが多いけど、旗から見るとものすごい効率化をしていたりしがち……

その人にとっては当たり前のことだけど、他の人には当たり前じゃないことを見つけるべきなのだが、やはりそれは日常的な作業を見ていないと気づきにくい。

今思えばペアプロとかモブプロとかするとこういった知見が得られる気がしたが、そのことに気づく前にインターンが終わってしまった。

おわり

インターンは学びが多くておもしろい