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
PHP Conference Sendai 2019 presentation slides
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
memory
PRO
January 26, 2019
Programming
4.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PHP Conference Sendai 2019 presentation slides
PHP Conference Sendai / 2019
Presentation slides
memory
PRO
January 26, 2019
More Decks by memory
See All by memory
pnl で簡易的に作る PHP ネイティブアプリケーション
m3m0r7
PRO
0
45
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
1
1.1k
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
470
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
240
AI 時代だからこそ学ぶべき PHP の基礎
m3m0r7
PRO
7
2.5k
JVM の仕組みを理解して PHP で実装してみよう
m3m0r7
PRO
1
640
コードゴルファー道
m3m0r7
PRO
0
660
ChatGPT とつくる PHP で OS 実装
m3m0r7
PRO
3
550
事業観点から見る技術的負債の返済
m3m0r7
PRO
4
1.3k
Other Decks in Programming
See All in Programming
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
470
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
590
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
180
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.7k
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
150
数百円から始めるRuby電子工作
tarosay
0
140
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
540
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
180
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.6k
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
610
Featured
See All Featured
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
590
AI: The stuff that nobody shows you
jnunemaker
PRO
9
890
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
520
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
WENDY [Excerpt]
tessaabrams
11
39k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
Accessibility Awareness
sabderemane
1
170
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
680
Ethics towards AI in product and experience design
skipperchong
2
340
Context Engineering - Making Every Token Count
addyosmani
9
1k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
230
Transcript
։ൃظؒ2ϲ݄Ͱ Elasticsearch ΛϓϩμΫτʹ ͬͯϦϦʔεͨ͠ PHPΧϯϑΝϨϯεઋ 2019/01/26 ΊΓʔ(@m3m0r7)
ͩΕʁ ΊΓʔ(@m3m0r7) Ͱ͢ɻ ը૾͏ͪͷϋϜελʔͷ Lily ͪΌΜͰ͢ɻ ౦ژͷຊʹ͋Δ גࣜձࣾ GameWith ͱ͍͏
ձࣾͰಇ͍ͯ·͢ɻ ͦͷੲɺPHPͰJavaͷόΠτίʔυΛ ಡΜͰͨͳͲ
ͱ͜ΖͰɺΈͳ͞Μ GameWith ͝ଘͰ͔͢ʁ
GameWith ʹ͍ͭͯ
ࠓήʔϜ߈ུʹ͍͓ͭͯ͠·͢
GameWith ʹ͍ͭͯ ήʔϜ߈ུʮGameWithʯͰ͕͢ɺ ࣮ΣϒαΠτҎ֎ʹΞϓϦ͕͋Γ·͢
GameWith ʹ͍ͭͯ ήʔϜ߈ུʮGameWithʯͰ͕͢ɺ ࣮ΣϒαΠτҎ֎ʹΞϓϦ͕͋Γ·͢
ࠓ͜͜ͷݕࡧػೳͷ όοΫΤϯυͷ։ൃͷΛ͠·͢
θϩϕʔε͔Βͷ։ൃͰҙࣝͨ͜͠ͱ
θϩϕʔε͔Βͷ։ൃͰҙࣝͨ͜͠ͱ • ҙࣝͨ͜͠ͱ5 • ᶃ ୭Ͱ։ൃͰ͖ΔΑ͏ʹ͢ΔϝϯλϦςΟ • ᶄ ৽͍͜͠ͱʹઓ͢ΔϝϯλϦςΟ •
ᶅ ࠳͚ͳ͍ϝϯλϦςΟ • ᶆ ਏ͍ঢ়گΛָ͠ΉϝϯλϦςΟ • ᶇ ۀ͠ͳ͍ͧͱ͍͏ڧ͍ϝϯλϦςΟ
͜ͷҙࣝΛͱʹ։ൃ͍͖ͯ͠·ͨ͠
ٕज़બఆͱΠϯϑϥߏ
ٕज़બఆͱΠϯϑϥߏ • શจݕࡧΤϯδϯࢥྀʹࢥྀΛॏͶElasticsearchΛબఆͨ͠ • Groongaͱ͍͏બࢶ͋ͬͨ • ݕࡧੑೳ Elasticsearch ΑΓ Groonga
ͷ΄͏্͕Β͍͠ • ࢀߟ: http://blog.createfield.com/entry/2014/04/21/120023 • ৗ࣌ଓ͕ສ͑Δ͔Εͳ͍ͷͰݫ͍͔͠͠Εͳ͍ͱ͍͏ݒ೦ ͕͋Γࠓճআ֎ • खܰʹεέʔϧ͔ͨͬͨ͠ • ήʔϜͷ߈ུใΛऔΓѻ͍ͬͯΔͷͰήʔϜݻ༗ͷݻ༗໊ࢺ͕සग़͢Δ͜ ͱΛߟྀͨ͠ઃܭʹ͢Δඞཁ͕͋ͬͨ
ٕज़બఆͱΠϯϑϥߏ • ࠷ॳ৽ͨͳऔΓΈͱϝϦοτΛՃຯͯ͠GoΛબ͠Α͏ͱ͍ͯͨ͠ • ݴޠࣗମͷύϑΥʔϚϯε͕Α͍ • ίϯύΠϧͷ࣌ؒૣ͍͠ • ͳʹΑΓॻ͘ͷָ͕ •
APIͷσβΠϯΛ͢ΔͨΊʹ goa ͱ͍͏ϑϨʔϜϫʔΫ͕༻ҙ͞Ε͍ͯΔ • ϚΠΫϩαʔϏεͱͯ͠ఏڙ͍ͨ͠ͷʹଧ͚ͬͯͩͬͨ • APIυΩϡϝϯτ (Swagger) উखʹు͖ग़ͯ͘͠ΕΔͷͰ • υΩϡϝϯτ͋Μ·Γߟྀ͠ͳͯ͘Αͦ͞͏
ͯΑ
ͦͦฐࣾ Go ॻ͚Δਓ͕΄ͱΜͲ͍ͳ͔ͬͨ
ٕज़બఆͱΠϯϑϥߏ • GameWith PHP ΛϝΠϯͱͯ͠ѻ͍ͬͯΔձࣾ • ͦͦ࣌ଞϝϯόʔ͕৽͍͠ݴޠΛֶͿ͕࣌ؒͳ͔ͬͨ • Կ͔͠ΒΠϯγσϯτ͕ൃੜͨ͠߹ʹରॲͰ͖Δϝϯόʔ͕ݶΒΕͯ͠
·͏ɻ • Γͷ։ൃظ͕ؒ͜ͷ࣌Ͱ 1.5 ϲ݄͘Β͍ʹͳ͍ͬͯͨ • ϨϏϡʔͰ͖Δϝϯόʔͷ͕࣌ؒऔΕͳ͍ɾϓϩδΣΫτʹδϣΠϯͰ͖ ͳ͍ • PHPͰ͋Ε୭Ͱ։ൃͰ͖Δ
PHPɺࢲୡΛٹͬͯ͘ΕΔͷΩϛ͔͍͠ͳ͍
ٕज़બఆͱΠϯϑϥߏ • GoͰͳ͘PHPΛબΜͩ • ͦͦElasticsearchͰPHP͚ϥΠϒϥϦ͕͋Γɺࠔͬͨͱ͖ʹࢀߟʹͳ Γͦ͏ • Πϯγσϯτ͕ൃੜͨ͠ࡍʹαʔόʔαΠυΤϯδχΞͰ͋ΕɺͲΜͳϝ ϯόʔͰରԠͰ͖ɺ࠷ѱͷࣗମ͕ى͖ͯαʔϏεͷ෮چҡ͕͔࣋ ʹͰ͖Δ
• LaravelͰඞཁͦ͏ͳCRUDΛΧόʔͰ͖ΔͷͰ։ൃΛݮΒͤͦ͏ • ݸਓతʹ pthreads Swoole ͳͲΛͬͨฒྻɾඇಉظॲཧࢼ͔ͨͬͨ͠ • ࢼͤͨ͠ͷͷύϑΥʔϚϯενϡʔχϯάʹ࣌ؒΛऔΒΕͦ͏Ͱɹ࣮ݱʹࢸ Βͣ… ݕࡧAPI Elasticsearch + PHP 7.2 + Laravel 5.6 Ͱ։ൃ͢Δ͜ͱʹͳΓ·ͨ͠
ͬ͘͟ΓΠϯϑϥͷߏΛ ࢥ͍ු͔Δ
ٕज़બఆͱΠϯϑϥߏ ※μογϡϘʔυͱGameWithͷϥΠλʔ͕༻͢Δཧը໘ͷ͜ͱͰ͢
ٕज़બఆͱΠϯϑϥߏ • ͳͥ͜ͷߏʹ͠Α͏ͱͨ͠ͷ͔ • શจݕࡧΤϯδϯΞϓϦ͔ΒࢀরɺμογϡϘʔυ͔Βॻ͖ࠐΈ͕ߦ ΘΕΔɻ • ήʔϜͷ߈ུهࣄසൟʹߋ৽͞ΕΔͨΊɺߋ৽ใআใΛΩϡʔ Ͱॲཧ͔ͨͬͨ͠ͷͰɺAmazon SQSΛՃ͑ͨ
• ElasticsearchͷԽͷͨΊσʔλϊʔυ͕2Ҏ্ඞཁͩͬͨ • ࠓճͷϓϩμΫτͰͲΕ͚ͩͷΞΫηε͕͋Δ͔ఆͰ͔͠ग़ͤͳ͔ͬ ͕ͨ1ͩͱϊʔυ͕յΕͨࡍͷରॲ͕Ͱ͖ͳͦ͞͏Ͱ͋ΔͨΊ
ٕज़બఆͱΠϯϑϥߏ - ࣮ࡍͷߏ
༨ஊ
͜ͷΠϯϑϥߏΛ GameWith ͷ Tech ϒϩάʹ ॻ͍ͨͱ͜Ζɺelastic ͷํ͔ΒΠϯϑϥߏʹ͍ͭͯ ΞυόΠεΛ͚·ͨ͠ɻ
։ൃڥ
ٕज़બఆͱΠϯϑϥߏ • ։ൃڥDockerͰߏͨ͠ • DockerΛ͏͜ͱʹΑΓɺԿ͕ڥʹ͋Δͷ͔໌֬ʹΘ͔ΔΑ͏ʹͳͬͨ • GameWith Vagrant Λ͏෩ை͕͋ΓɺͲ͏͍ͬͨϛυϧΣΞ͕͋
Δ͔ɺͲ͏͍͏ߏʹͳ͍ͬͯΔͷ͔Ѳͮ͠Β͔ͬͨ • ։ൃڥͱϓϩμΫγϣϯڥͰඞཁͳڥͷࠩҟΛແ͔ͨͬͨ͘͠ • ϓϩμΫγϣϯڥʹ͋Δ͕ɺ։ൃڥʹͳ͍ɺͱ͍͏ঢ়ଶΛ࡞Γ ͨ͘ͳ͔ͬͨ • ࣾͰDockerΛϓϩμΫγϣϯʹར༻͢Δͷ͜ͷϓϩδΣΫτ͕ॳΊͯ • ৽͍͠ઓΛ͢Δ͜ͱ͍͍͜ͱɻ৽͍͜͠ͱʹઓΛͨ͠ͱ͍͏લྫ Λ࡞ΓपΓͷϝϯόʔɺࣗΒਐΜͰઓ͍ͯ͘͠෩ʹ͍͖͔ͯͨͬ͠ ͨ
σϓϩΠ
ٕज़બఆͱΠϯϑϥߏ • σϓϩΠ Deployer Ͱ • ॻ͘ͷ؆୯ͦ͏ • ։ൃ͕ 1.5
ϲ݄ͱ͍ͷͰɺ͘͢͝େࣄ • PHP ͱ૬ੑ͕ྑͦ͞͏ • GameWith ࣗମ rsync ͰΒ·͘Α͏ʹͳ͍ͬͯͨ • Capistrano Ͱ͍͍ͷͰͱࢥ͕ͬͨ Ruby Λॻ͚Δϝϯόʔ͕গͳ͍ • ࣮ࡍ͍ͯ͠Δͷ pull ͚ͩ • ͨͩɺ Elasticsearch Ͱ༻͢ΔϢʔβʔࣙॻͷϏϧυͳͲσϓϩΠί Ϛϯυʹೖ͍ͬͯΔ
࣮ࡍͷ։ൃ
࣮ࡍͷ։ൃ • ݕࡧγεςϜࣗମͷνʔϜߏ4໊ମ੍ • αʔόʔαΠυΤϯδχΞ × 1 • GameWith ͷΣϒ໘ͷ։ൃվम݉
• ΠϯϑϥΤϯδχΞ × 1 • ଞͷΠϯϑϥ໘ͷλεΫ݉ • σΟϨΫλʔ × 1 • GameWith ͷΣϒ໘ͷσΟϨΫγϣϯ݉ • ίʔυϨϏϡϫʔ × 1 • ෦ • ଞʹiOS, AndroidΤϯδχΞ
Ϧιʔεগͳ͗͢ʹ໘
Ί͛ͳ͍Μ
࣮ࡍͷ։ൃ - ঢ়گѲΛԁʹਐΊΔͨΊʹࢥ͍͍ͭͨλεΫΛશͯ Issue Խ͓ͯ͘͠ - ͲΜͳʹࠣࡉͳ͜ͱ Issue ʹॻ͍ͯΕͳ͍Α͏ʹ͍ͯͨ͠
࣮ࡍͷ։ൃ - ঢ়گѲΛԁʹਐΊΔͨΊʹࢥ͍͍ͭͨλεΫΛશͯ Issue Խ͓ͯ͘͠ - ػೳͷઃܭΛߟ͑ͭͭಉ࣌ʹ։ൃΛ͍͖ͯ͠ɺࢥ͍͍ͭͨΒIssueʹίϝϯτ Λ͚ͭΔ
API ͷσβΠϯ
࣮ࡍͷ։ൃ • طʹ GameWith ΞϓϦಠࣗͷ API ͕ଘࡏ͍ͯ͠Δ • ݕࡧγεςϜଆ༷Λ߹ΘͤΑ͏͔ΜͩͷͷɺԼهͷ pros,
cons ͔ ΒɺಠࣗͰσβΠϯ͢Δ͜ͱʹ͠·ͨ͠ɻ • pros • Ϟμϯͳ API σβΠϯ͕Ͱ͖Δ • Laravel ͷϧʔςΟϯάָ͕ʹͳΔʢ㲈։ൃͷॖʣ • GameWith ຊମαΠτͱҧͬͨͷͱͯ͠ѻ͍͔ͨͬͨʢ㲈ϚΠΫ ϩαʔϏεԽʣ • cons • ϞϊϦγοΫʹͳͬͯ͠·͏ͱɺطʹ͋Δٕज़తෛ࠴ʹߋʹٕज़తෛ ࠴͕ੵΈॏͳͬͯखΕʹͳΔ • ͜ͷͱ͖ɺಉ࣌ʹ GameWith ຊମαΠτ PHP 7.x ʹҠߦ͢Δ४උ Λ͍ͯͨͨ͠Ίɺ৮Εͨ͘ͳ͔ͬͨ
࣮ࡍͷ։ൃ • طʹ GameWith ΞϓϦಠࣗͷ API ͕ଘࡏ͍ͯ͠Δ • ݕࡧγεςϜͷ API
ͷઃܭ͜͏͍ͨ͠ͱ͍͏***ҙࢥදࣔ***Λͯ͠ɺઃܭʹ ؔͯ͠ͷσΟεΧογϣϯΛۃྗݮΒ͠։ൃͷݮΛߦ͏ ※͋͘·ͰҙࢥදࣔͳͷͰɺͦͷ͋ͱ͍͔ͭ͘ͷ࣮Մ൱ຊʹAPI σβΠϯϞμϯ͔ɺͳͲؚΊͯͷσΟεΧογϣϯߦͬͯ·͢
Swagger Λͬͯ API ͷυΩϡϝϯτΛੜ
࣮ࡍͷ։ൃ • Swagger Λͬͯ API ͷυΩϡϝϯτΛੜ͍ͯͬͨ͠ • ։ൃ͕ͲΜͳʹਏͯ͘υΩϡϝϯτΛॻ͘ͷ͚ͩଵΒͳ͔ͬͨ
࣮ࡍͷ։ൃ • Swagger Λͬͯ API ͷυΩϡϝϯτΛੜ͍ͯͬͨ͠ • Swagger ͷੜʹ zircote/swagger-php
Λ༻͍·ͨ͠
Ϣχοτςετ
࣮ࡍͷ։ൃ • PHPUnit Λ͍ϢχοτςετΛඞͣॻ͍ͨ • ϢχοτςετΛॻ͍ͯɺ࣮ͨ͠ API ͷΤϯυϙΠϯτ͕ઈରʹಈ࡞͢Δ อূ͕΄͔ͬͨ͠ •
ͨͩɺͷ͋Γॻ͍ͨͷϛογϣϯΫϦςΟΧϧͳՕॴͩ ͚ɻ • ͜ͷΤϯυϙΠϯτઈରʹಈ͘ͱ͍͏৺ཧత҆શੑɻ
ϦϦʔε͢Δ·Ͱ
ϓϩμΫγϣϯʹϦϦʔε͢Δ·Ͱ • ϓϩμΫγϣϯڥ༻ͷίϚϯυΛ͍͔ͭ͘༻ҙͨ͠ • هࣄΛೖ͢ΔͨΊͷ artisan ίϚϯυ • هࣄΛআ͢ΔͨΊͷ artisan
ίϚϯυ • ϢʔβʔࣙॻΛϏϧυ͢ΔͨΊͷ artisan ίϚϯυ • etc…
ϓϩμΫγϣϯʹϦϦʔε͢Δ·Ͱ • ϓϩμΫγϣϯڥΛߏங • QA (Quality Assurance) Λ࣮ࢪ͢ΔͨΊʹϓϩμΫγϣϯڥͷߏஙΛ͢Δඞ ཁ͕͋ͬͨ •
iOS, AndroidΤϯδχΞɺσΟϨΫλʔ͔Β࣮ࡍͷσʔλΛݟͯ֬ೝΛ͠ ͍ͨཁʹ͑ΔͨΊ • ϓϩμΫγϣϯڥͷ Elasticsearch ʹهࣄΛೖ͍ͯ͘͠ • هࣄͷ͕݅ेສ݅͋Γ͕͔͔࣌ؒΔ͠ɺࣦഊ͢Δͱೖ͠͠ͳͷ Ͱਏ͔ͬͨ
ϓϩμΫγϣϯʹϦϦʔε͢Δ·Ͱ • QA (Quality Assurance) ͷ࣮ࢪ • ΠϯςάϨʔγϣϯςετ ݉Ͷͯ iOS,
Android ΤϯδχΞɺαʔόʔαΠ υΤϯδχΞɺσΟϨΫλʔɺ෦ͷશһ͕ू݁ͯ͠ɺ࣮ࡍʹεϚϗΛ৮Δɻ ͜͜Ͱग़ͨόάػೳͷ࣮ʹ͍ͭͯͷϑΟʔυόοΫΛड͚ͯ ௐΛ͍ͯ͘͠
ϓϩμΫγϣϯʹϦϦʔε͢Δ·Ͱ • ෛՙςετͷ࣮ࢪ • ΠϯϑϥΤϯδχΞʹґཔΛ͠ɺ Gatling Λ༻͍ͯෛՙςετͷ࣮ࢪΛߦͬ ͨɻ
ϦϦʔε
ϦϦʔε - ແࣄϦϦʔεʂ࠳͚ͳ͍ͰલʹਐΉ͜ͱେࣄʂ
ϦϦʔεͨ͋͠ͱ
ϦϦʔεͨ͋͠ͱ ৼΓฦΔͱ։ൃظؒ 1.5 ϲ݄΄ͲͰ͜Ε͚ͩͷίϛοτΛͯ͠͠·ͬͨ
ϦϦʔεͨ͋͠ͱ ։ൃʹܞΘͬͨਓͰɺৼΓฦΓΛߦͬͨ
ϦϦʔεͨ͋͠ͱ χΫΞβϒͰম৯ͨ
ϦϦʔεͨ͋͠ͱ GameWith Tech Blog Ͱॻ͍ͯΈͨɻͯͿ͍ͬͺ͍͍ͭͯͯخ͍͠ https://tech.gamewith.co.jp/entry/2018/09/21/122154
ͦΕͰɺ͍Ζ͍Ζʹ໘ͨ͠
໘ͨ͠ • ϦϦʔεͨ͋͠ͱʹ͍͔ͭ͘όά͕ग़͖ͯͨ • GameWith ຊମαΠτͷରԠ͕૿͑ͨ • ໘ͷԠื͕ଟ͍࣌ظʹॏͳͬͯɺ໘ϥογϡ • MTG͕ଟ͘ͳͬͨ
• ϦϦʔεऴΘͬͨ͋ͱʹΞαΠϯͨͯ͢͠ͷλεΫͷܹ ͕Γͳ͍ͱײ͡Δ
ͦΕͰϦϦʔεͰ͖ͨͷͰΊͰͨ͠ΊͰͨ͠
·ͱΊ
·ͱΊ • ࠓճ։ൃʹҙࣝͨ͜͠ͱʹଇͬͯɺٕज़બఆͷࡍʹ୭ͰͰ͖ΔͷΛબΜͩ • ͦͷ্Ͱͦͷͷ৽͍͠ͷΛऔΓೖΕ͍ͯͬͨʢDocker PHP 7.2ͳͲʣ • ໌ɺ͕ࣗަ௨ࣄނʹ͋ͬͨΒʁͱ͍͏͜ͱΛߟ͑ͳ͕ΒਐΊΔͱࣗવͱ୭ʹͰͰ ͖Δͷʹͳ͍ͬͯ͘ײ͕͋͡Δ
• ඞཁͦ͏ͳλεΫ Issue ʹϝϞΛͨ͠΄͏͕͍͍ • ಛʹ݉ͷ߹ͩͱΕΔ͜ͱ͋ͬͨΓ͢Δ • ͋Δఔ୭͔͕ਐΊͳ͍ͱϓϩδΣΫτਐ·ͳ͍ • ୭ͷࣄ͚ͩͬʁͱଞਓ͝ͱʹ͢ΔͷͰͳ͘ɺԼΛ͔ࣗΒઌͯ͠࡞͍ͬͯ͘ • APIσβΠϯΛઌʹܾΊ͍ͯͳ͚ΕɺϓϩδΣΫτ͕ޭ͔ͨ͠Ͳ͏͔ո͍͠ • ΠϯϑϥͷߏΛߟ͑ͭͭίʔυΛॻ͍͍ͯ͘ • ΠϯϑϥͷߏʹΑͬͯॻ͘ίʔυ͕ҟͳΔͷͰɺઌʹΠϯϑϥͷઃܭΛ಄ʹࢥ͍ු͔ Δ
·ͱΊ • ίʔυΛॻ͘͜ͱΛ᪳͠ͳ͍ • ᪳͢ΔͱɺͦΕ͚ͩͰ͕࣌ؒͳ͘ͳͬͯ͠·͏ͷͰɺ᪳͠ͳ͍͍ͯ͘Α͏ͳ ΈΛ࡞ΔɻʢϢχοτςετΛॻ͘ͳΓɺQAΛ࣮ࢪ͢ΔͳΓʣ • ผνʔϜͱԁͳ࿈ܞΛ͢ΔͨΊʹυΩϡϝϯτΛॻ͘ • API͕Ͳ͏ͳ͍ͬͯΔ͔ɺΞϓϦνʔϜΒͳ͍ɻ͔ͩΒͦ͜ɺϢϏΩλ
εݴޠͰ͋ΔυΩϡϝϯτ͓ͯ͘͠ɻ • υΩϡϝϯτ͕ͳ͚ΕΞϓϦνʔϜαʔόʔαΠυͷίʔυΛಡΉɺฉ ͘ͱ͍͏ίετ͕ൃੜͯ͠͠·͍ɺ͕͍࣌ؒͬͨͳ͍ • ͦΕʹɺ͋ͱ͔ΒಡΈฦͤΔ͠ɺ໌ަ௨ࣄނʹ͋ͬͯ҆৺Ͱ͖Δ • θϩϕʔεͷ։ൃʹෛՙςετ࣮ࢪ͠Α͏ • ϦϦʔεޙʹαʔόʔ͕མͪΔͷ൵͍͠ؾ࣋ͪʹͳΔͷͰ • MTGஅࣺ͠Α͏
ൃදҎ্Ͱ͢
WE ARE HIRING ! ࢲୡҰॹʹήʔϜۀքΛΓ্͛ͯ͘ΕΔ ؒΛ୳͍ͯ͠·͢ʂ ͝ڵຯ͕͋Δํ @m3m0r7 ·Ͱ͝࿈བྷ͓ئ͍͠·͢
THANK YOU