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
Cloud Vision APIと Algoliaで 画像検索を開発した話 / a devel...
Search
meijin
October 31, 2019
Technology
0
130
Cloud Vision APIと Algoliaで 画像検索を開発した話 / a development of image searching by cloud-vision-api and algolia
meijin
October 31, 2019
Tweet
Share
More Decks by meijin
See All by meijin
Technical Decisions and Reflections on "Test Maker" After Two Years of Development
texmeijin
1
63
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
26k
DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話【デブサミ2024夏】
texmeijin
4
3.6k
サービス黎明期にNuxt.js v2からNext.js移行を決めた理由と進め方
texmeijin
0
460
スタートアップCTOが個人開発で収益化・年13本記事発信・5件登壇を平行するための時間管理
texmeijin
4
1.2k
個人開発がおすすめな理由
texmeijin
3
1k
弊社の開発体験の良いところは?メンバーに訊いてみた!
texmeijin
0
430
初めてESLintプラグインにコントリビュートした話
texmeijin
0
220
先生と一緒に プロダクトを良くする アナリティクス機能の開発
texmeijin
0
100
Other Decks in Technology
See All in Technology
pprof vs runtime/trace (FlightRecorder)
task4233
0
170
SoccerNet GSRの紹介と技術応用:選手視点映像を提供するサッカー作戦盤ツール
mixi_engineers
PRO
1
180
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
500
いまさら聞けない ABテスト入門
skmr2348
1
210
How to achieve interoperable digital identity across Asian countries
fujie
0
120
Flaky Testへの現実解をGoのプロポーザルから考える | Go Conference 2025
upamune
1
430
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
410
Why Governance Matters: The Key to Reducing Risk Without Slowing Down
sarahjwells
0
110
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
310
成長自己責任時代のあるきかた/How to navigate the era of personal responsibility for growth
kwappa
3
280
許しとアジャイル
jnuank
1
130
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Automating Front-end Workflow
addyosmani
1371
200k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building Applications with DynamoDB
mza
96
6.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Making Projects Easy
brettharned
119
6.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Transcript
$MPVE7JTJPO"1*ͱ "MHPMJBͰ ը૾ݕࡧΛ։ൃͨ͠ ΤϯδχΞ໊ͷ ڭҭελʔτΞοϓ͕
ΞδΣϯμ w ࣗݾհ w ը૾ݕࡧͷ֓ཁͱ͖͔͚ͬ w $MPVE7JTJPO"1* w "MHPMJB w
$MPVE7JTJPO"1*ͱ"MHPMJBΛΈ߹ΘͤΔ w ࠷ޙʹ
ࣗݾհ
ࣗݾհ w ໊ਓʢ!.FJKJO@HBSEFOʣ w גࣜձࣾ/P4DIPPM$50 w ʙ·Ͱ גࣜձࣾ-*'6--Ͱ8FCΤϯδχΞ w ΑΓ/P4DIPPMʹస৬ʢࣾͱਓʣ
w झຯɿમ౬ɺυϥΫΤ‡ɺকعɺߴߍٿ
/P4DIPPMͷհ w Ոఉڭࢣɾक़ߨࢣ͕ແྉͰճ͢Δษڧ࣭αΠτ w IUUQTOPTDIPPMBTJB w ࠓ݄J04ΞϓϦϦϦʔε͠·ͨ͠ w ."6͓Αͦສਓ͘Β͍ ࣌
w தߴੜ͕ษڧͷͲ͜Ͱ͍᪴ͯɺͦΕʹରͯ͠ ͲΜͳճ͕͔ͬͨ͞ͷσʔλ͕ੵ͞ΕΔ
ը૾ݕࡧͷ ֓ཁͱ͖͔͚ͬ
ը૾ݕࡧͷ֓ཁ w Θ͔Βͳ͍ΛࡱӨͯ͠ݕࡧˠ͍͕ۙώοτʂ
ݕࡧͷ*OQVU0VUQVU w ݕࡧ͍ͨ͠Պ ʢֶɺӳޠɺཧʜʣ w खݩͷͷࣸਅ w ྨࣅ͍ͯ͠Δ࣭ ࠷େ্Ґ w
/P4DIPPM্ʹ͋Δ ྦྷܭສͷ࣭ͷ ຊจఴը૾ */165 065165
͖͔͚ͬ w ษڧ࣭αΠτɺճͷՁ͕ʲॠؒతʳ w ษڧྲྀߦΓഇΓ͕গͳ͍ྖҬͰ͋Δ͔Βɺ Ұ͞Εͨճຖͣͬͱʹཱͪଓ͚Δͣ w աڈͷճΛߴਫ਼ͰؾܰʹݕࡧͰ͖ΔΈΛ Δ͜ͱͰɺֶੜ͕Ή࣌ؒΛ͘ɺઌੜʹͱͬͯ ճ͢ΔखؒΛݮΒ͍ͨ͠
ษڧͷ࣭ը૾ͷಛ w ͍͍ͩͨಉ͡Α͏ͳݟͨ ࢴʹ͍จষ͕ͭΒͭΒͱଧͬͯ͋Δ w ಛతͳ୯ޠؚ͕·ΕΔ͜ͱ͕ଟ͍ zਫ༹ӷzɹzؐݩࡎzɹz॥খzɹzՃ๏ఆཧz ը૾ࣗମͷྨࣅΑΓɺ ը૾ʹؚ·ΕΔจࣈྻͷۙ͞ ͷ΄͏͕ݕࡧʹద͍ͯ͠ΔͷͰʁ
$MPVE7JTJPO "1*
$MPVE7JTJPO"1*ͱ w ֶशࡁΈͷը૾ղੳ"*Λ"1*ܦ༝Ͱར༻Ͱ͖Δ w (PPHMF$MPVE1MBUGPSN্Ͱఏڙ w ϦΫΤετʹର͢Δॏྔ՝ۚ w ੳλΠϓʹ͍͔ͭ͋͘Δ͕ɺ ࠓճʲ5&95@%&5&$5*0/ʳΛར༻
ղੳͷਫ਼ʢ0$3ຊޠʣ
ղੳͷਫ਼ʢ0$3ຊޠʣ <ݻԁӡಈuສ༗Ҿྗ Ԃ ԁද໘Λ͢ΓམͪΔখମͷӡಈʫ ͷΑ͏ʹ ͳΊΒ͔ͳද໘ΛͭܘSͷԁ͕ ਫฏͳচʹ ͯ͠ݻఆ͞Ε͍ͯΔɻ࣭ྔ.ͷখମ͕࠷ߴ1͔Β੩͔ʹ͢Γ ͩ͠ɺ2Λ௨աͯ͠4Ͱԁද໘͔ΒΕচʹམͪͨɻԁͷத
৺Λ ;102 ॏྗՃͷେ͖͞ΛHͱͯ͠ ࣍ͷ͍ʹ ͑Αɻ খମ͕2Λ௨ա͢Δͱ͖ͷ͍͘͞Β͔ɻ 2ʹ͓͚Δখମʹ࡞༻͢Δ߅ྗͷେ͖͍͘͞Β͔ɻ ;104ͱ͢Δͱ͖ DPTP͍͘Β͔ɻ 4Ͱԁද໘͔ΒΕΔॠؒͷখମͷ͍͘͞Β͔ɻ খମΛ1͔Β ԁ࣠ʹਨͰ͔ͭਫฏʹ ॳΛ༩͑ͯଧͪग़͢
ͦͦ͜͜ ਫ਼͕ߴ͍
"MHPMJB
"MHPMJBͱ w શจݕࡧΤϯδϯΛఏڙ͢ΔαʔϏε w ͷ͍͢͝ྔͷςΩετ͔ΒɺݕࡧจࣈྻΛؚΉ จࣈྻΛݟ͚ͭͯ͘ΕΔ (PPHMFݕࡧʹ͍ۙ͜ͱ͕Ͱ͖Δ w ݄υϧͰ"1*੍͕ݶ·Ͱར༻͠์ ݸਓͰ͓ߴΊ͚ͩͲɺ๏ਓʹͱ͍ͬͯ҆
"MHPMJBΛ͏खॱʢࡶʹʣ ݕࡧରͱͳΔେྔͷจࣈྻΛ"MHPMJBʹJNQPSU αʔϏεଆͰ"MHPMJB4%,ΛJNQPSU "1*Λୟ࣮͓͘Αͼݕࡧύϥϝʔλͷௐ ϢʔβʔͷJOQVUΛIPPLͯ͠"1*Λୟ͘
-BSBWFM4DPVU w -BSBWFMͱ"MHPMJBΛ࿈ܞͯ͘͠ΕΔϥΠϒϥϦ w IUUQTSFBEPVCMFDPNMBSBWFMKB TDPVUIUNM w -BSBWFMͷ.PEFMΛ֦ு σʔλอଘ࣌ʹࣗಈͰࢦఆͨ͠σʔλΛ ·ͱΊͯ"MHPMJBಥͬࠐΉ
࣮ࡍͷ$PEFʢฤूࡁΈʣ w .PEFMʹUP4FBSDIBCMF"SSBZ Λ࣮ ˠ͜͜ͰSFUVSOͨ͠༰͕"MHPMJBʹJNQPSU w ݕࡧͷखॿ͚ʹͳΔσʔλ JEΛҰॹʹೖΕΔ
ݕࡧରจࣈྻͷJNQPSU w -BSBWFM4DPVUΛ͍ͬͯΔͳΒ QIQBSUJTBOTDPVUJNQPSUl.PEFMOBNFz ͰऴΘΓ
"MHPMJB"1*Λୟ͘ʢฤूࡁΈʣ w -BSBWFM4DPVUʹΑΓ.PEFMʹTFBSDI ϝιου͕࣮͞Ε͍ͯΔ w ݕࡧΦϓγϣϯͰՃGJMUFSࢦఆͰ͖Δ
$MPVE7JTJPO"1*ͱ "MHPMJBΛΈ߹ΘͤΔ
0$3ͱશจݕࡧͷϑϩʔ ᶃϢʔβʔ͕ͷ ɹը૾ΛΞοϓϩʔυ ᶄ$MPVE7JTJPO"1*Ͱ ɹςΩετΛݕग़͢Δ ᶅݕग़ͨ͠ςΩετͰ ɹ"MHPMJB͔Βશจݕࡧ ᶆݕࡧ݁Ռͷ࣭Λ ɹ࠷େ݅දࣔ $-*&/5
4&37&3
طଘ"1*ͷ Έ߹Θ͚ͤͩͰ ը૾ݕࡧͰ͖ͨ
ࠓޙͷల w ςΩετͷྨࣅ͚ͩͩͱݶք͕͋Δ w શ͘ಉ͡ͳΒҾ͔͔ͬΔ͕ɺ ݟ͔ͭΒͳ͍ͱਫ਼͕མͪΔ w XPSEWFDͳͲΛར༻͠ɺҙຯͷྨࣅ·Ͱ ߟ্ྀͨ͠Ͱݕࡧ݁ՌΛٻΊ͍ͨ w
༧ΊΫϥελϦϯά্ͨ͠Ͱݕࡧ͢Δͱ͔
࠷ޙʹ
Ұॹʹߟ͑ͯ͘ΕΔํΛืूத w /P4DIPPM্ͷσʔλΛੳͯ͠Կ͕Ͱ͖Δ͔ʁ ·ͨ ͜Ε͔ΒͲ͏͍ͬͨσʔλΛूΊΔඞཁ͕͋Δ͔ʁ w ͲΜͳٕज़͕͑ͦ͏͔ ࢥ͍͍ͭͨํڭ͚͑ͯΔͱخ͍͠Ͱ͢ʂ w 5XJUUFS!.FJKJO@HBSEFOʢ໊ਓ͞Μʣ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠