Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
元インフラエンジニアのガチAlexaスキル開発/alexa-skill-gachi-20190312
Search
mochan-tk
March 12, 2019
Technology
1
480
元インフラエンジニアのガチAlexaスキル開発/alexa-skill-gachi-20190312
下記の発表資料になります。
Mar 12th, 2019 -- 個人開発 Night #1 @ギフティ
https://giftee.connpass.com/event/119934/
mochan-tk
March 12, 2019
Tweet
Share
More Decks by mochan-tk
See All by mochan-tk
Azure AI によって広がる開発者の可能性と最新動向/MSBuild AzureAI for Everyone
mochan_tk
0
430
IT活用・自動化にも繋がるLINEの開発者向け テクノロジー紹介 / LINE Technology for External Developer at RPACommunity Event
mochan_tk
0
2.6k
あなたのアプリをもっとスマートに!Azure AIできり拓く新しいアプリ開発の可能性あなたのアプリをもっとスマートに!Azure AIできり拓く新しいアプリ開発の可能性 / talking about Azure AI for LINE API Expert x Microsoft MVP Community Day
mochan_tk
0
150
機械学習の民主化が加速する! 新サービス SageMaker Canvas について /new service sagemaker canvas for reinvent 2021
mochan_tk
0
1.3k
[GitHub Copilot]あなたもコードの自動生成を体験できる! with VSCode/vscodemeetup #17 GitHub Copilot with VS Code
mochan_tk
0
710
Azure OpenAI Service関連について! / cogbot #34 Ignite 2021 Nov Recap about Azure OpenAI Service
mochan_tk
0
530
Azure OpenAI Service関連について! / Microsoft Ignite autumn 2021 about Azure OpenAI Service
mochan_tk
0
1.6k
Getting Started with LINE Notify / SORACOM IoT Meetup #4
mochan_tk
0
3.8k
様々なオンラインイベントを開催して見えたリアルな情報の共有 / comucal#4
mochan_tk
0
1.9k
Other Decks in Technology
See All in Technology
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
960
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
260
CloudFormationコンソールから、実際に作られたリソースを辿れるようになろう!
amixedcolor
1
190
Axon Frameworkのイベントストアを独自拡張した話
zozotech
PRO
0
140
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
930
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
180
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
230
今、MySQLのバックアップを作り直すとしたら何がどう良いのかを考える旅
yoku0825
2
390
re:Invent完全攻略ガイド
junjikoide
1
360
What's the recommended Flutter architecture
aakira
3
1.9k
バフェットコード株式会社 開発チームカルチャーデック
shoe116
1
100
やり方は一つだけじゃない、正解だけを目指さず寄り道やその先まで自分流に楽しむ趣味プログラミングの探求 2025-11-15 YAPC::Fukuoka
sugyan
2
800
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
670
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Designing Experiences People Love
moore
142
24k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Scaling GitHub
holman
463
140k
We Have a Design System, Now What?
morganepeng
54
7.9k
Faster Mobile Websites
deanohume
310
31k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
〜元インフラエンジニアのガチAlexaスキル開発(個人)〜 1 Mar 12th, 2019 -- 個人開発 Night #1 @ギフティ
2018年8月頃のことです Alexaスキルをガチで開発することに。。 (諸事情でスキルの内容には触れません) 2
個人開発事情 3 • 本業があるので片手間、空いた時間にやるしかない • 実は僕インフラのエンジニアどす/(^o^)\ ◦ (当時もDRサイト側のDBの復旧作業とかやってました。。) • メンバー1人(It's
me!) 時間が、、リソースとかが圧倒的に足りない。。
開発に伴うタスクどうする? 4 • 設計をしなければならない -> ノンコーディングのツール活用 • コードを書かないといけない -> Webブラウザで使えるIDEを活用
• デプロイまでの様々な作業が都度発生する -> AWSを活用してCI/CD • 品質を担保しなければならない -> 静的コードチェックとテストコード • ドキュメントを書かなければいけない -> ドキュメント自動生成とGoogleのサ ービス
設計どうやったの? 5 • ノンコーディングでAlexaスキルが作れるサービス使った ◦ 最初からコード書かない ◦ 固定の動作なら実装〜動作確認が早い ◦ VUI/VUXの確認を行う
◦ 作業を進めながら視覚的な設計図も残せる ◦ プロトタイプ作りに注力できる ノンコーディングのサービスで設計を高速に固め た
どこでコードを書いたの? 6 • AWS Cloud9使った ◦ Webブラウザがあれば/場所/PC/時間に依存せず作業で きる ◦ デフォルトで必要なソフトウェアがインストールされて
いる ◦ CLI叩ける ◦ 環境の作り直しが容易(やり直しが簡単) ◦ 安価 着手が早くスキマ時間も有効に使えた
CI/CDは? 7 • AWS CodePipline使った ◦ コード修正後~デプロイまで自動化 ▪ build/静的Codeチェック/Test Code実行/デプロイ
◦ Git Pushをトリガーに発動 ◦ dev環境の実績が人間系のミスなく本番環境に適用でき る コードを修正するだけ(まるで自分がスケールし かのよう
どうしても自動化できない部分が! 8
CI/CDは? 9 • Alexa Developer Consoleで設定した対話モデルの定義
CI/CDは? 10 • Alexa Developer Consoleで設定した対話モデルの定義 ◦ ダイアログモデルはコードで更新しないGUIでやる ▪ Developer
Consoleが高機能なので ◦ ASK CLIで定義はダウンロード ◦ git のバージョン管理に入れるよう構成した いったん定義ファイルをバージョン管理するだけ とした
品質の担保はどうしたの? 11 • 静的コードチェック • テストコードを書いた
品質の担保はどうしたの? 12 • 静的コードチェック ◦ TSLint使った ▪ 書いたコードを定義したルールに従って静的に解析 して問題を検出してくれる •
可読性の良いコードになる • バグっぽいコードが事前にわかる 静的コードチェックは入れといて損はないので入 れるべし
品質の担保はどうしたの? 13 • テストコードを書いた ◦ テスト書いてないとか言えないので。。 でもAlexaのテストコードってどう書くのん?
品質の担保はどうしたの? 14 • テストコードは下記を採用した ◦ Jest ◦ Virtual Alexa UnitTest系(JUnitなど)やE2E(Geb,Selenium)は経
験があるものの音声アプリのテストって。。
品質の担保はどうしたの? 15 • Jest ◦ facebook製のJavascript ユニットテストのためのツール ◦ ユニットテストを作成するのに必要な機能はコレ1つで 揃う
品質の担保はどうしたの? 16 • Virtual Alexa ◦ プログラムでAlexaスキルの会話テストが行えるテスト フレームワーク ◦ DyanamoDBの処理部分もモック化できて非常に便利だ
った
ドキュメントはどうしたの? 17 • TypeDoc • Google ドキュメント
ドキュメントはどうしたの? 18 • TypeDoc ◦ TypeScriptのソースを解析してドキュメントを自動で作 ってくれるツール 簡単に成果物を1つ増やすことに成功♪
ドキュメントはどうしたの? 19 • Google ドキュメント ◦ ブラウザさえあればドキュメントが作成できる ドキュメントを作る上で充分な機能を有してい る!
見事にミッションをクリア! (もちろん時間の兼ね合いで妥協した部分もあります) 20
ちなみにお気づきでしたか? 21
個人開発を支える技術 22 • 設計をしなければならない -> ノンコーディングのツール活用 • コードを書かないといけない -> Webブラウザで使えるIDEを活用
• デプロイまでの様々な作業が都度発生する -> AWSを活用してCI/CD • 品質を担保しなければならない -> 静的コードチェックとテストコード • ドキュメントを書かなければいけない -> ドキュメント自動生成とGoogleのサ ービス 個人開発の大部分を支えているのはAWSのサービ ス達! AWS Cloud9 AWS CodePiplineなど
個人開発がとっても捗る そうAWSならね。。 23
ご清聴ありがとうございました! 24