---
title: サーバーレスアプリケーションに参画して失敗した話
tags: 
author: [阿部健太郎](https://convert.docswell.com/user/6073979229)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/4JM9M2LQEW.jpg?width=480
description: サーバーレスアプリケーションに参画して失敗した話 by 阿部健太郎
published: January 20, 26
canonical: https://convert.docswell.com/s/6073979229/ZREVYE-2026-01-20-165256
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/4JM9M2LQEW.jpg)

新春！初心者だらけのLT大会！
サーバレスアプリケーションの開発に
入れたけど何も知らなくて失敗した話
2026/1/192025/09/30
阿部健太郎
あべけん@食パン


# Page. 2

![Page Image](https://bcdn.docswell.com/page/PJRGVMKKE9.jpg)

自己紹介
名前：阿部健太郎（食パン）
年次：社会人3年目
業務：ポータルサイトの保守運用
@Plainbread2009
@Plainbread2009
趣味：ダーツ、ガンダム
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/PEXXZVL5EX.jpg)

目次
1.自己紹介
2.案件の概要
3.苦戦したこと
4.できたこと（ちょっとだけ）
5.まとめとこれから
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/3EKW8QLRED.jpg)

参画した案件概要
クライアント証明書発行システム
申請、承認、否認APIが存在
API Gateway
Lambda
StepFunctions
申請情報登録
申請画面
バリデーションチェック
・2025年6～9月で参画
承認/否認URL
・失効の申請も同じようなフロー
・承認/否認も同じような構成
・申請画面はお客様の別部署が開発
承認依頼メール
ステータス更新
・主にStepFunctionsを担当
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/L7312P3GJ5.jpg)

失敗したこと①（エラーハンドリング）
組み込みのRetryを利用せずにChoice stateを利用して
複雑化させてしまった
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/87DXZL4NEG.jpg)

失敗したこと①（エラーハンドリング）
組み込みのRetryを利用した場合
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/VJPPD2MNJ8.jpg)

失敗したこと①（エラーハンドリング）
理由①
Lambda側がexceptionエラーが発生した際に
raiseで例外を再スローするようになっておらず
StepFunctionsのリトライキャッチが使えなかった
理由②
組み込みのリトライキャッチを知らなかった
既にあった別のStepFunctionsを見て作ってしまった
Lambdaを修正してもらう判断ができず、複雑化
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/2EV21D9YEQ.jpg)

ステートの入出力
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/57GR2YZWEL.jpg)

入出力処理の設計
ResultSelectorで出力の一部を利用
{
}
“id.$”: ”$.Payload.id”,
“XXX.$”: “$.Payload.XXX”
ResultPathで入力（State Input）に合成
API Gatewayのステージ変数をすべてのlambdaで利用
例：dev,prod,table名
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/4EQVPMLQJP.jpg)

失敗したこと②（入出力処理）
申請画面側で入力した情報がbodyに入ってくる
API Gateway
Lambda
StepFunctions
申請情報登録
申請画面
バリデーションチェック
ResultPathでbodyに合成してしまうと
失敗時にbodyの申請情報が上書きされてしまう
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/KJ4MYVDYE1.jpg)

対応方法
一旦bodyではなく、lambdaResultに結果を格納
PassステートでlambdaResultから編集
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/LE1863ZN7G.jpg)

出来たこと
IAMのロールとポリシーの最適化
インラインポリシーを
含めて80ポリシー
35ロールが乱雑に
9ポリシー
5ロールですっきり
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/GEWZWP6ME2.jpg)

まとめと今後
・StepFunctionsのエラーハンドリングは
できる限り組み込みのRetryをつかう
・入出力の設計はしっかりと
・ハンズオンとやったことを記事にする
13


# Page. 14

![Page Image](https://bcdn.docswell.com/page/47Z15KYMJ3.jpg)

ご清聴ありがとうございました
14


