はじめに
Qiitaアドベントカレンダーを見ていたら卒業校の名前があったので、参加してみました!
この記事では、在校生だった頃の自分に向けて「これ知ってたら、入社後もう少し楽だったかもな…」と思うことを書きます。
- 在校当時「反AI派」だった私から見る、実務でのAI活用について
- 入社後の躓き ~学生時代に回避できたこと~
- 私の会社の話
この記事書いているのってどんな人?
ゲーム専攻科を2025年3月に卒業しました。
CoconeEngineering株式会社(Cocone株式会社)へ同年4月にクライアントエンジニアとして入社。
その後、7月からサーバーサイドエンジニアとして勤務しています。
横文字が本当に苦手。数学も苦手。ゲームが好き。プログラムと新しいことが大好きです。
AGSでは「ゲーム」を作ることより自分の知的好奇心を優先してしまったばっかりに、当時のレギュレーションすれすれのものばかり提出していました。ポートフォリオは見返したくないです。
所属企業名を出していますが、この記事は私個人の考えに基づいており、企業全体の考え方ではないことを念頭に置いてください。
「反AI派」だった私が、AIに屈した話
最初に書いたように私は在校時「反AI派」でした。
正しく言うとコード生成において反AI過激派でした。
しっかりと活用ができれば効率的であることは間違い無いのですが、学習という面から見ると不要以外の意見がない。コピペコードなんてもってのほか!!という思想。
しかし、実際に業務を行う今現在、サーバーエンジニアとして駆け出しの身でありながら、業務時間の大半はAIとラリーしているのではないかと思うほど、です。屈しました。
入社当初に一番思ったことは「もっとAIと慣れ親しんでおけばよかったなー」でした。
AIに慣れている人と慣れていない人では、自分の欲しい情報を提供してくれるまでのスピードが桁違いです。
就職後のことを考えると、多少でも慣れておくと楽になると思います。
もちろん学校の先生方の現在の方針には則って欲しいです
在校時と比べても格段に勉強しているであろう今の私がオススメするAIを活用した学習方法のおすすめを紹介します。
1. コード方針の相談をする おすすめ度:★★★★☆
「AIに答えを教えてもらう」ための相談というよりは「AIと話して自分の理解を深める」ための相談です。
闇雲に使う、というよりは実装に詰まった時におすすめの手法です。
仕様やコードの意図の理解ができていることを前提として、
- 現在のコードを共有
- 現在のコードのアーキテクチャについて(あれば)
- 追加したい機能の仕様について
- 自分が考える実装方針について
この辺を共有して、AIとディスカッションを行います。
AIの言うことは全部正しいとは限らず、特にこのような部分的な情報提供の中では、AIは状況の背景を考えることが苦手なので、都度情報の追加や指摘を行う必要があります。
共有→AIからの返答→指摘→AIからの返答...を繰り返していくことによって、自分の行う実装についての理解が深まります。
また、AI側からより良い形での実装を提案してもらえることもあります。
2. リファクタリングに使う おすすめ度:★★★☆☆
実際に業務でも同じように使っています。
たまにチンプンカンプンなことを言うので、自分で見分ける力があるか不安な場合はオススメしません。
人間に見てもらいましょう。
私はプルリクを出す前にChatGPTに見てもらい修正、プルリクを出した後、GitHubCopilotからもらった指摘を修正、というような使い方をしています。
3. エラー修正に使う おすすめ度:★★★☆☆
エラー、嫌ですよね。
在校時にパッと見よくわからないエラーが大量に出てしまった時は、一旦気持ちを落ち着けるためにゴミ箱に入れていました🗑️
でもエラーって実は味方なので、何言われているか分からないエラーはAIに聞いてみましょう。
理解度を深めるためのおすすめはChatGPTですが、業務ではVSCodeのGitHubCopilotに聞くことも多いです。
プロジェクトのファイルを参照してくれるので、根深いところから生じているエラーはこちらを用いてもいいと思います。
4.わからない単語や概念について聞く おすすめ度:★★★★★
「○○について、噛み砕いて教えてください」
私のChatGPTの履歴に一番残っている言葉です。
調べてもわからない場合は、AIに噛み砕いて教えてもらいましょう。
理解できたと思ったら同じスレッドで「○○とはこういうことであっていますか?」と自分の理解を確かめると完璧です。
入社してから気づいた「学生のうちにやっておけばよかったこと」
入社後に躓いたこと、たくさんあるのですが、「学生時代にやっておけば回避できたな」と思うことがあるので、共有します。
1. 実際の事象と単語が結びつかない
唐突ですがクイズです🎤
「 * 変数」「& 変数」
変数の前につくコレの総名称、なんでしょうか?
正解は「ポインタ」です。
信じられない話ですが、なんと私はこれを
「*」:送るやつ
「&」:受け取るやつ
で覚えていました。
放課後に15分間強、質問を繰り返して、なんとかこの単語を引き出してくれようとしていたS先生へ、もうやっと覚えました。
とはいえ、これは業務でも起こります。
普段からクラスメイトとコードの話をする時に、正式名称を使っておくと、あとで本当に助かると思います。
共通言語であるこのような単語が抜けてしまっていると、面接でも入社後の業務でもコードに関してうまくコミュニケーションが取れずに躓きます。
2. AIを有効かつ効率よく使えない
もう少しやっておけばよかった...!と特に思っています。
入社後すぐはそもそもAIへの指示の出し方さえ ままならなかったので、AIを用いても思うような成果が得られませんでした。
コピペコードは学習上あまりよろしくない、の気持ちは変わりませんが、それでも使える場面ではどんどん使った方がいいと思います。
完全に私の所感ですが、「どれだけ技術力があるか」と同時に 「どれだけAIを活用することができるか」 も求められていると感じました。
私の会社の話
ここからは完全に私の個人的な話です。
自分の会社の話を書くのは少し迷ったのですが、「就活していた当時の自分が知りたかったこと」という視点ならアリかな、と思って、会社について、個人的に感じている良いところを書きます。
※会社側に言われて書いているわけではなく、私が会社好きすぎて書くだけの、あくまで個人の感想です。
🥗 超×♾️ 充実した福利厚生
実際に働き始めてみると、日々の業務のコンディションに直結するものばかりで、想像以上にありがたいなと感じています。
- フレックス制を利用した、まさにワークライフバランスな働き方
- 業務時間内に30分利用できる本格的な社内ジム、マッサージ
- 社内キッチンで毎日作っていただけるシェフの美味しいランチ
- クオリティが高すぎるカフェメニュー
etc...
超インドアな私でも「会社に出社したい!」と思える社内設備です。
なぜかジムで30分ヨガした後はめちゃくちゃ集中できます。
たぶんSA3発動できます(集中力的に)。
🏙️ 東京で生きていくための「ワークライフバランス」
最初は東京で働くことに、正直かなり不安がありました。
家賃、生活費、人の多さ、etc…
でも今は、私生活に大きな不安なく、仕事に集中できる環境にあります。
- フレックスタイム制にリモートワークを併用した働き方ができるので、「続けられる働き方」を現実的に考えられる
- 生活のことで無理をしなくていい
- やりたいことや息抜きができる余裕を持てる
ちょっと贅沢に夕飯をウーバーしても、貯金などに回せる余裕があるのは精神的な余裕にも直結すると感じます。
また、体調に不安がある場合は(規定の中で)リモートワークに切り替えて働く、フレックスタイム制を利用して、少し早めに退勤して私用を済ませる、といった働き方をしています。
その日の体調や集中力に合わせて、働き方を自分で調整できるのが有り難いです。
👥 在籍している方々がみんな素敵
就活中は「結局どんな人と働くか」が一番大事だと言われますが、正直ピンときていませんでした。
でも今は、本当にその通りだったなと思います。
私の最終的な入社の決め手は「選考過程で携わった方々がみんな素敵だったから。」
(周囲の方々の人間力が高すぎて自己嫌悪に陥ることはありますが...)
業務のこともそれ以外でも、相談できる方がたくさんいるので、安心感しかないです。
🎮 「コンシューマー開発」を目指している方へ
現在学校に通われている、きっとほとんどの方がコンシューマー開発者を目指されているかと思います。
学生の頃は、私もコンシューマー開発者に憧れがありました。
ただ今は、実際のお客様に継続的にサービスを提供する立場になり、「お客様の反応を見られる」ことに、想像以上の楽しさを感じています。
これは私にとって、コンシューマー開発とはまた違った魅力で、大きなやりがいだなと思っています。
向き・不向きはあると思いますが、選択肢の一つとして知っておいてもらえたら嬉しいです。
最後に
在校生の皆さんは、今が一番自由に試行錯誤できる時間だと思います。
これは、就活していた当時の自分にも言いたいのですが、少し遠回りでも「自分で選んだ」と思える道は、あとから強くなると思っています。
自分が「これがいい」と思える選択を、ぜひ大切にしてください。
応援しています!