SMCC初の内製開発への取り組み ~未経験の新卒が1年でアプリを作るまで~

三井住友カード(SMCC) マーケティングユニット AI・データチャプター所属の福地です。

新卒2年目のエンジニアとして、社内向けWebアプリケーションの内製開発や、AWSを活用したクラウド基盤の構築・運用に携わっています。これまでに、S3・Lambda・API Gateway・Cognitoなどを利用したサーバレス構成のアプリケーション開発を経験してきました。

本記事では、クラウド基盤やサーバレス開発に興味のある新卒・若手エンジニアや、若手の育成施策を検討されている方に向けて、私たちのチームで約1年間実施した"若手向けエンジニア育成の研修会"「テックデイ」の取り組みと、そこで得た学びをどのように内製開発へつなげたのかをご紹介します。

はじめに

私の所属する部署では、データ基盤のクラウド上での構築や、アプリケーションの内製開発・運用を推進する取り組みを行っています。 この目標を実現するためには、エンジニア自身がクラウド環境上で自ら設計・開発・運用を行うスキルを身につける必要がありました。

そこで今回は、スキル習得のために立ち上がった「テックデイ」という取り組みに焦点を当て、具体的な学習内容から実務への接続プロセス、実際の成果物、そして直面した課題と解決策までを包み隠さずお伝えします。

想定読者

  • クラウドエンジニア・インフラエンジニアを目指している新卒・若手エンジニア
  • AWSなどのクラウドを活用した内製開発や、クラウド基盤構築に関心のあるエンジニア
  • 若手エンジニアの育成施策や、チームのスキル底上げを検討している方

本記事で取り扱うこと・取り扱わないこと

取り扱うこと 取り扱わないこと
テックデイの具体的な運営方法と1年間の学習ロードマップ 各AWSサービスのディープな技術的解説
座学やハンズオンから、実務(内製開発)へスムーズに移行するための工夫 TerraformやGitHub Actionsなどの具体的なコード実装の解説
チーム開発における課題解決のプロセスと組織的な成果

テックデイとは

テックデイとは、私たちの部署独自の取り組みとして、クラウドインフラエンジニアがリーダーとなり、技術スキルの習得意欲があるメンバーを集めて実施したエンジニア育成の研修会です。週1回、4時間の枠を年間を通じて確保し、継続的な学習と実践を行いました。

テックデイの目的

  • クラウド内製開発に必要な体系的知識の習得
  • 自走意識(自ら調べ、手を動かす)挑戦マインドの醸成

テックデイの内容

具体的には、以下のようなコンテンツを組み合わせて実施しました。

  • 知識共有会:インターネットやネットワークの基礎知識をメンバー同士で教え合う場
  • ハンズオン:AWS上でのシステム構築やGitの操作など、実際に手を動かす学習
  • 輪読会:技術書を読み込み、チーム内で知見を共有
  • 技術系イベント参加の報告:社外で得た最新のインプットをチームに還元
  • チーム目標への取り組み:資格取得支援など、共通のゴールに向けた活動

SMCCにおけるテックデイのサポート体制

このような長期的な取り組みを成功させるため、社内でも手厚いサポート体制が用意されていました。

  • Udemy for Businessの活用による学習コンテンツの提供
  • 技術書の貸し出し制度
  • 先輩エンジニアへいつでも相談できる心理的安全性の高い環境
  • 通常業務と学習の両立に向けた業務調整の実施

1年間の学習ロードマップ

テックデイでは、基礎から実践へ段階的にステップアップできるよう、以下のロードマップで学習を進めました。

1年間の学習ロードマップ(Geminiで作成)

実務につなげるために取り組んだこと

インフラ・ネットワークの基礎を押さえる

いきなりクラウドを触るのではなく、まずはリーダーがメンバー1人1人に「IPアドレス」や「DNS」といった学習テーマを与え、それぞれが学習して資料にまとめ、全体で発表する「共有会」を実施しました。

インプットして自己完結するだけでなく、「人に説明する」ことでより理解を深めることができました。また、お互いに疑問を出し合うことで、自分にはない視点から知識を深掘りできました。

この事前学習があったおかげで、後のAWSハンズオンでVPCやセキュリティグループを設定する際、「なぜインバウンドトラフィック設定を 0.0.0.0/0 というデフォルトのままにしてはいけないのか」といったセキュリティ上のリスクを、腹落ちした状態で理解することができました。

AWSハンズオンでサービス単体を理解する

弊社では希望者がUdemy for Businessを利用できるため、「実線で役立つAWSサービスの基礎とアーキテクチャ」や「AWSコンテナサービス入門」などの教材を活用してハンズオンに取り組みました。

共有会で学習したネットワークの基礎知識を土台にし、VPCの構築や、Cloud9からEC2・RDSへのSSH接続などを実施。最終的にはDockerコンテナをECRにプッシュし、立ち上げるところまでを一通り経験しました。

動画を見るだけでなく、実際にマネジメントコンソールを操作してエラーにつまずきながら進めることで、各サービスがどのように連携して動いているのか、解像度が大きく上がりました。

内製開発でサービス同士をつなげる

学習フェーズを経て、初めてアサインされた実務案件は「Amazon Bedrockを使ったRAGアプリケーションの開発」でした。

ユーザーがWebからボットに対して質問を投げかけ、Bedrockからのレスポンスを返すというシンプルな構成ですが、我々のスコープはRAG部分以外の「Webアプリケーション基盤の構築」でした。

社内向けRAGアプリケーション

この案件では、以下の4つの主要なプロセスを含め、メンバーだけで設計から実装までを対応しました。

  1. S3の静的ホスティングを使用してフロントエンドアプリケーションを公開
  2. リクエストをAPI Gatewayを通してバックエンドへルーティング
  3. Lambdaでリクエストを処理し、Bedrockに値を渡してレスポンスを受け取る
  4. 受け取ったレスポンスをユーザーの画面に返す

Git・Terraform・GitHub Actionsでチーム開発と運用を意識する

AWSコンソールでの手動構築で各サービスの動きを理解した後は、より実務的なチーム開発を見据えてツールを導入しました。

インフラ構築はTerraformを用いてコード化(IaC)し、環境の再現性を担保しました。また、コードのバージョン管理にはGitを使用し、プルリクエストを通じた相互レビューの文化を定着させました。さらにGitHub Actionsを活用してデプロイ作業を自動化することで、手作業によるミスを減らし、運用を見据えた開発フローを構築することができました。

直面した課題と解決策

スムーズに開発が進んだわけではなく、実務ならではの壁にもぶつかりました。特に印象的だった2つの課題と、その乗り越え方をご紹介します。

課題1:フロントエンドとインフラの結合時にエラーが頻発

初案件において、フロントエンド・インフラそれぞれ単体での動作確認は取れていたものの、結合した途端に処理が通らなくなり、原因調査に膨大な時間がかかりました。

  • 直面した課題: 「どこで処理が止まっているのか」が全く見えない
  • 取った解決策:
    • フロントエンド側: ブラウザの開発者モード(ネットワークタブやコンソールログ)を確認し、リクエストの停止箇所を特定。
    • インフラ側: Amazon CloudWatch を使用し、API GatewayやLambdaのログを徹底的に追跡。
  • 得られた学び: 「なんとなく動かない」とパニックになるのではなく、ログを起点にしてエラーの原因がコード(ロジック)なのか通信(ネットワーク)なのかを冷静に切り分けるアプローチが、早期解決への近道だと身をもって学びました。

課題2:社内環境の厳しいセキュリティ制限によるハンズオンの難航

動画教材の通りにハンズオンを進めようとしても、弊社のAWS環境はエンタープライズレベルの厳しいセキュリティガードレールが敷かれており、権限エラー(AccessDenied)などでそのまま実行できないことが多々ありました。

  • 直面した課題: 教材通りにポチポチ進めるだけでは動かない
  • 取った解決策: これを逆手に取り、「なぜこの操作が弾かれるのか」を深く考える機会にシフト。IAMポリシーや組織のセキュリティルールを読み解き、先輩エンジニアに代替案を相談しながら進めました。
  • 得られた学び: 結果的に、動画の通りになぞるよりも、実務に直結する「セキュアなAWS運用」の知識を圧倒的に深く身につけることができました。

実際にかかわった成果物

この1年間で、テックデイのメンバーが中心となり、4件の内製開発プロジェクトに参画し、そのうち3件を無事リリースすることができました。

プロジェクト名 内容 利用サービス(一例)
社内向けRAG チャット形式で社内規定を検索・出力するアプリ S3, API Gateway, Lambda, Cognito
文面チェックAI(サーバレス) 文面が問題ないかを判定するAIの初期版 S3, API Gateway, Lambda, Cognito
文面チェックAI 文面が問題ないかを判定するAIの改良版 Cloudfront, ECS, DynamoDBなど

社内向けRAGアプリケーション
文面チェックAI

得られたスキル

スキルセット

  • クラウド運用に必須な共通知識を獲得し、インフラ構築・保守運用の属人化を排除できました。

  • AWS、Git、Terraformといったモダンな開発スキルがチーム内で標準化されました。

マインドセット

  • 自走意識: わからないことに直面しても、自ら仮説を立てて調べ、試し、改善する姿勢が定着しました。
  • 挑戦文化: まずは手を動かして試行錯誤し、得られた知見をチームに共有するという行動習慣が身につきました。

組織的成果

「スキルセット×マインドセット」の相乗効果により、単なる勉強会にとどまらず、チームとしての「内製開発の強固な土台」を形成することができました。共通言語と共通手順が確立されたことで、新しい案件にも再現性をもって取り組めるようになり、1年間で3件ものアプリリリースという目に見える成果に繋がりました。

テックデイを実効性のある取り組みにするためのポイント

最後に、私たちが実践して効果的だったポイントをまとめます。

  • 共通目標と個人目標の設定:共通目標があることでメンバー同士が切磋琢磨でき、さらに個人目標を宣言することで当事者意識と熱量が上がりました。

  • 学習時間を固定で確保する:毎週月曜日の午後と時間をロックしたことで、日々の業務に流されず、強制的に学習モードへ切り替えることができました。

  • 座学だけでなくハンズオンを取り入れる:インプット(学習)とアウトプット(共有・実践)のサイクルを回すことで、知識の定着率が劇的に向上しました。

  • 実務案件に直結させる:実務ではリーダーが意図的に「アドバイス役」に徹し、メンバー自身で考え抜く環境を作ってくれたことが、最大の成長要因でした。

  • いつでも相談できる環境を作る:テックデイの時間外でも、心理的障壁なく気軽に質問できる環境が、挫折を防ぐセーフティネットになりました。

まとめ

新卒2年目のエンジニアとして、この1年間のテックデイを通じて、単なる技術力の向上だけでなく「チームで開発を進めるためのマインドと仕組み」を学ぶことができました。

座学から始まり、ハンズオン、そして実務でのリリースに至るまでの道筋は決して平坦ではありませんでしたが、時間を確保して体系的に学ぶ環境と、挑戦を後押ししてくれるチームのサポートがあったからこそ、やり遂げることができたと感じています。

この記事が、これからクラウド技術を学びたい若手エンジニアの方々や、チームの育成に悩む方々にとって、少しでも参考になれば幸いです。