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
100
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
26k
DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話【デブサミ2024夏】
texmeijin
4
4.1k
サービス黎明期にNuxt.js v2からNext.js移行を決めた理由と進め方
texmeijin
0
500
スタートアップCTOが個人開発で収益化・年13本記事発信・5件登壇を平行するための時間管理
texmeijin
4
1.2k
個人開発がおすすめな理由
texmeijin
3
1k
弊社の開発体験の良いところは?メンバーに訊いてみた!
texmeijin
0
460
初めてESLintプラグインにコントリビュートした話
texmeijin
0
250
先生と一緒に プロダクトを良くする アナリティクス機能の開発
texmeijin
0
120
Other Decks in Technology
See All in Technology
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
4
460
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
180
Agile Leadership Summit Keynote 2026
m_seki
1
670
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
380
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
110
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
3
290
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
660
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
配列に見る bash と zsh の違い
kazzpapa3
3
170
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
330
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
530
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
110
Done Done
chrislema
186
16k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
190
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
The Curious Case for Waylosing
cassininazir
0
240
Accessibility Awareness
sabderemane
0
56
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ʢ໊ਓ͞Μʣ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠