生成AIを活用し、2週間でKotlinをキャッチアップ

こんにちは、システムエンジニアのキュウです。今年のSMOOSYの新機能開発を通じて、私はメイン開発言語をKotlinへ切り替えることに挑戦しました。
アトラスでは、2023年からコーディング支援ツールのAIを導入しました。今回は生成AIを活用して、JavaからKotlinへの移行を効率的に進め、短期間で核心的な知識を習得し、プロジェクト開発に参加できるようになったプロセスを共有します。同様の技術移行に取り組む方や、AI支援学習に興味をお持ちの方の参考になれば幸いです。

ステップ1:Javaとの差異に焦点を当てた学習計画を作成する

経験のある開発者なら、新しい言語を学ぶ最も効率的な方法は既存の知識と比較することです。「変数」のような基本概念から学び直すのではなく、プログラム言語のどこが同じでどこが違うのかに注目するのが鍵となります。
そこで私はAIに明確な指示を出し、自分に最適化された学習計画を生成してもらうことにしました。
質問例:

AIの返答(一部抜粋):

この計画は、学習プロセスでの目標を地図のように明確に示してくれました。おかげで膨大な情報の中で迷うことなく、効率的に学習を進めることができました。

ステップ2:慣らしコードで、新しい知識を実践する

Kotlinの基本文法を理解した後は、実践を通じて知識を定着させる必要があります。
いきなり実際の業務コードに取り組むのはハードルが高いと感じるかもしれません。
そこで私は、以前Javaで作成したソースコードをAIにKotlinへ書き換えてもらい、詳細なコメントを付けてもらいました。
質問例:

AIの返答(一部抜粋):

もともとのロジックは自分で書いたものだったため、AIが生成したKotlinコードと比較することで、各ステートメントの意図と実装方法を容易に理解できました。
このプロセスは「Javaの思考法」から「Kotlinの思考法」へと効率的に移行し、新しいプログラミングスタイルに適応する上で非常に役立ちました。

ステップ3:AIを、いつでも質問できる技術パートナーにする

学習の過程では、理解が難しい概念に必ず出会います。私の場合、Kotlinの「拡張関数」という概念に最初は戸惑いました。
以前なら、多数のブログやドキュメントを調査したり、開発者コミュニティで質問を投稿し回答を待ったりする必要がありました。
今では、AIを自分のペアプログラミングパートナーとして活用し、直接質問できるようになりました。
質問例:

AIの返答(一部抜粋):

さらに質問したら:

AIの返答(一部抜粋):

AIは説明に加えて、具体的なコード例やベストプラクティスの提案も提供してくれます。
このような即時フィードバックを得られる学習方法により、疑問解決の時間が大幅に短縮され、コードのロジック自体に集中できるようになりました。

最後に:AIは開発者の学習加速器(アクセラレーター)です

開発者として、生成AIが以下の点で非常に役立つことを実感しました:

  • 情報収集の効率化:膨大な情報の中から核心部分を迅速に整理・提示してくれるため、情報検索の時間を大幅に短縮できます。
  • 気兼ねない質問相手:優秀なメンターのように、初歩的な質問から複雑な問いまでいつでも答えてくれます。「こんな質問をしても良いだろうか」と躊躇する必要がありません。
  • 新たな発想の源:その幅広い知識を通じて、対話から新しいアイデアやインスピレーションを得られることもあります。

生成AIを積極的に活用し、自身のスキルアップにつなげていきたいと考えています。

新卒・中途エンジニア募集中!

100%自社内開発!学術に特化した自社サービスで設計からリリースまでフルスタックなスキルを身につけませんか?
テレワーク主体ですがコミュニケーションも活発でチームのつながりも大切にしている環境です。

カジュアル面談からお気軽にお越しください!

採用情報はこちら

Confit Atlas SMOOSY