Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHP Conference Sendai 2019 presentation slides
Search
memory
PRO
January 26, 2019
Programming
3
4.4k
PHP Conference Sendai 2019 presentation slides
PHP Conference Sendai / 2019
Presentation slides
memory
PRO
January 26, 2019
Tweet
Share
More Decks by memory
See All by memory
AI 時代だからこそ学ぶべき PHP の基礎
m3m0r7
PRO
7
2k
JVM の仕組みを理解して PHP で実装してみよう
m3m0r7
PRO
1
340
コードゴルファー道
m3m0r7
PRO
0
470
ChatGPT とつくる PHP で OS 実装
m3m0r7
PRO
3
270
事業観点から見る技術的負債の返済
m3m0r7
PRO
4
1.2k
PHP でアセンブリ言語のように書く技術
m3m0r7
PRO
1
240
PHP でアセンブリっぽく書く技術
m3m0r7
PRO
1
160
How to implement a RubyVM with PHP?
m3m0r7
PRO
3
2.9k
二郎系ラーメンのコールで学ぶ AST 解析
m3m0r7
PRO
8
3.1k
Other Decks in Programming
See All in Programming
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
19k
AIコーディングエージェント(Manus)
kondai24
0
130
NUMA環境とコンテナランタイム ― youki における Linux Memory Policy 実装
n4mlz
1
160
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
280
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
420
無秩序からの脱却 / Emergence from chaos
nrslib
2
12k
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
150
Google Antigravity and Vibe Coding: Agentic Development Guide
mickey_kubo
2
140
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.4k
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
12
7k
connect-python: convenient protobuf RPC for Python
anuraaga
0
360
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
150
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Automating Front-end Workflow
addyosmani
1371
200k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Agile that works and the tools we love
rasmusluckow
331
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Making Projects Easy
brettharned
120
6.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
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