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カンファレンス沖縄2019 / phpcon-okinawa-2019
Search
Kenta Suzuki
October 12, 2019
Technology
2.4k
2
Share
小さな機能、大きな仕事 PHPカンファレンス沖縄2019 / phpcon-okinawa-2019
PHPカンファレンス沖縄2019での発表資料です。
https://phpcon.okinawa.jp/
Kenta Suzuki
October 12, 2019
More Decks by Kenta Suzuki
See All by Kenta Suzuki
Go at fluct
suzuken
0
4.4k
ADエンジニアがみたre:Invent 2018
suzuken
0
6.1k
広告配信管理システムを支えるPHP - レガシーシステムからの段階的移行戦略 / phpcon2017
suzuken
10
21k
ディスプレイ広告の基礎とセキュリティ
suzuken
18
4.1k
How to use AWS Lambda in Document Processing Pipeline
suzuken
0
4k
Other Decks in Technology
See All in Technology
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
【禁断】Obsidianの第二の脳に「知の巨人」と呼ばれた師匠の脳をロードしてみた
nagatsu
0
5k
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
490
データ基盤構築・運用の現場から 〜 Snowflake Intelligence 導入で変わった、データ活用の未来 〜
wonohe
0
150
Python開発環境にハーネス適用を検討する
yuuka51
1
430
Agentic AI時代における メルカリのAIガバナンスとガードレール実装
naoichihara
11
8.5k
CloudFront VPCオリジンとVPC Latticeサービスの内部ALBをマルチアカウントで一元利用しよう
duelist2020jp
5
140
「使われるデータ基盤」を目指してデータアナリストとワークショップをやった話
jackojacko_
2
710
既存プロダクトQAから新規プロダクトQAへ
ryotakahashi
0
180
Splunk MCPサーバの利活用事例 ーKINTOテクノロジーズの取り組み
kintotechdev
1
190
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
0
200
情シスがMCP環境導入時に打ちのめされる認可の崖
oidfj
0
280
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Everyday Curiosity
cassininazir
0
210
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
810
KATA
mclloyd
PRO
35
15k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
410
How to build a perfect <img>
jonoalderson
1
5.5k
How to Ace a Technical Interview
jacobian
281
24k
Transcript
ʢμΠδΣετ൛ʣ খ͞ͳػೳɺେ͖ͳࣄ ླ݈ଠ!TV[V@W qVDU 70:"(&(3061 1)1ΧϯϑΝϨϯεԭೄ 70:"(&(3061εϙϯαʔηογϣϯ
ࣗݾհ w ླ݈ଠʢ!TV[V@Wʣ w גࣜձࣾqVDUऔక$50 w BKJUPGNύʔιφϦςΟ w ීஈ1)1 5ZQF4DSJQU
(PΛॻ͍ͯ·͢
ܧଓతͳϓϩμΫτ։ൃͰ ͋Γ͕ͪͳ w ཁ݅ʹରͯ͠ඞཁҎ্ʹେ͖͘ͳͬͨίʔυʹͳ͍ͬͯΔΑ ͏ʹݟ͑Δ͕ɺ࣌ؒͳ͘ίʔυΛݮΒͦ͏ʹख͕͚ͭΒ Εͳ͍ w ػೳΛՃ͍͕ͨ͠ɺطଘίʔυʹՃ͢Δ͔৽نʹΈ ΛՃ͢Δ͔໎͏ɻͦͯ͠·ͨશମͱͯ͠ෳࡶͳΈʹ ͳͬͯ͠·͍ͦ͏ɻ
w ϦΞʔΩςΫνϟ͕ͨ͠ɺ͞Βʹෳᯑʹͳͬͯ͠·ͬͨɻط ଘͷΈʹՃ͑ͯɺ·ͨෳࡶͳΈ͕Ճ͞Εͯ͠·ͬ ͨɻ
IUUQTTQFBLFSEFDLDPNTV[VLFOQIQDPO
Կ͔Βணख͢Δ͔ʁ
ෳࡶੑͱॏཁͷϚτϦΫε ૉΒ͍͠ ߟ͑Α͏ ·͋0, ෳࡶ͞খ ෳࡶ͞େ ॏཁେ ॏཁখ
ෳࡶੑͱॏཁͷϚτϦΫε ૉΒ͍͠ ߟ͑Α͏ ·͋0, ෳࡶ͞খ ෳࡶ͞େ ॏཁେ ॏཁখ ͜͜Λ͍͔ʹίϯτϩʔϧ͢Δ͔
ߟ͑Α͏ ෳࡶ͞େ ॏཁେ ෳࡶ͕͞ͳͥൃੜͨ͠ͷ͔Λߟ͠·͠ΐ͏ɻ ͳͥେ͖͘ͳͬͨͷ͔؍͠·͠ΐ͏ɻ νέοτɺ୲ऀͷϩάɺഎܠΛ͔֬Ί·͠ΐ͏ɻ σʔλɺϩδοΫΛΑ͘ݟ·͠ΐ͏ɻ ෳࡶੑͱॏཁͷϚτϦΫε
ίʔυࣗମͷෳࡶੑΛ૿͞ͳ͍ w ෆԺͳஹީʮ͜ͷ"1*Ͱશ෦࣮͓ͯ͘͠ͱศརʯ w ςετέʔε͕૿͑ɺ࣮͕ΒΉɻۀͦͷػೳʹґ ଘ͢Δɻ w େࣄͳͷಡΈ͢͞ʢ3FBEBCJMJUZʣ
ෳࡶੑͷ૿େ ύονॻ͘ ʢෳࡶੑͷೖʣ ϦϦʔε ಡΈղ͘ʢΘ͔Βͳ͍ʣ ςετಡΉʢΘ͔Βͳ͍ʣ ϨϏϡʔ͢Δ ʢϨϏϡϫʔΑ͘Θ͔Βͳ͍ʣ
ෳࡶੑͷରॲ๏ wϦϑΝΫλϦϯά wϦΞʔΩςΫνϟ wϦϓϨʔε
ෳࡶੑͷରॲ๏ wϦϑΝΫλϦϯά wϦΞʔΩςΫνϟ wϦϓϨʔε
ϦΞʔΩςΫνϟࣄྫ
ྫͱ͋ΔऔҾػೳ w લʹߏங͞Ε͍͕ͯͨ΄ͱΜͲΘΕ͍ͯͳ͍৴ػೳͩͬͨɻࠂ৴ αʔόɺཧܥɺ%#ɺ΄΅ͯ͢ͷίϯϙʔωϯτʹ͍ͭͯӨڹΛ༩͑Δઃܭ ʹͳ͍ͬͯͨɻ w ಛఆͷࣄۀऀͱͷ࿈ܞͰ͏·͘ಈ࡞͢Δ͕ɺϓϥοτϑΥʔϜશମͱͯ͠ͷར ༻͢ΔͨΊʹطଘػೳͱͷ߹ੑ͕ͱΕ͍ͯͳ͔ͬͨɻ͋Δઃఆ͔Β༗ޮ ͳΦʔΫγϣϯ͕ɺ͜ͷػೳ͔Βར༻Ͱ͖ͳ͍Α͏ʹͳ͍ͬͯͨɻΘΕͯ ͍ͳ͍ػೳͩͬͨͨΊɺଞͷػೳͷ࣮͜ͷػೳΛߟྀ͍ͯ͠ͳ͔ͬͨɻ
w ςετηοτେ͖͘ͳΓ͓͗ͯ͢Γɺઃఆ༻"1*ංେԽ͍ͯͨ͠ɻػೳΛಡ Έղ͘͜ͱ͘͠ɺ৽ͨͳΦʔΫγϣϯܗࣜΛՃ͢Δ͜ͱࠔͩͬͨɻ ར༻ϩάेʹग़ྗ͞Ε͓ͯΒͣɺੳͰ͖ͳ͍ঢ়ଶͩͬͨɻ w ͦͯ͠ࠓޙɺ͜ͷػೳΛੵۃతʹ֦ு͍͖͍ͯͨ͠ͱ͍͏Ϗδωε͔Βͷཁٻ ͕͋ͬͨɻ
ྫͱ͋ΔऔҾػೳ w લʹߏங͞Ε͍͕ͯͨ΄ͱΜͲΘΕ͍ͯͳ͍৴ػೳͩͬͨɻࠂ৴ αʔόɺཧܥɺ%#ɺ΄΅ͯ͢ͷίϯϙʔωϯτʹ͍ͭͯӨڹΛ༩͑Δઃܭ ʹͳ͍ͬͯͨɻ w ಛఆͷࣄۀऀͱͷ࿈ܞͰ͏·͘ಈ࡞͢Δ͕ɺϓϥοτϑΥʔϜશମͱͯ͠ͷར ༻͢ΔͨΊʹطଘػೳͱͷ߹ੑ͕ͱΕ͍ͯͳ͔ͬͨɻ͋Δઃఆ͔Β༗ޮ ͳΦʔΫγϣϯ͕ɺ͜ͷػೳ͔Βར༻Ͱ͖ͳ͍Α͏ʹͳ͍ͬͯͨɻΘΕͯ ͍ͳ͍ػೳͩͬͨͨΊɺଞͷػೳͷ࣮͜ͷػೳΛߟྀ͍ͯ͠ͳ͔ͬͨɻ
w ςετηοτେ͖͘ͳΓ͓͗ͯ͢Γɺઃఆ༻"1*ංେԽ͍ͯͨ͠ɻػೳΛಡ Έղ͘͜ͱ͘͠ɺ৽ͨͳΦʔΫγϣϯܗࣜΛՃ͢Δ͜ͱࠔͩͬͨɻ ར༻ϩάेʹग़ྗ͞Ε͓ͯΒͣɺੳͰ͖ͳ͍ঢ়ଶͩͬͨɻ w ͦͯ͠ࠓޙɺ͜ͷػೳΛੵۃతʹ֦ு͍͖͍ͯͨ͠ͱ͍͏Ϗδωε͔Βͷཁٻ ͕͋ͬͨɻ
ྫͱ͋ΔऔҾػೳ w લʹߏங͞Ε͍͕ͯͨ΄ͱΜͲΘΕ͍ͯͳ͍৴ػೳͩͬͨɻࠂ৴ αʔόɺཧܥɺ%#ɺ΄΅ͯ͢ͷίϯϙʔωϯτʹ͍ͭͯӨڹΛ༩͑Δઃܭ ʹͳ͍ͬͯͨɻ w ಛఆͷࣄۀऀͱͷ࿈ܞͰ͏·͘ಈ࡞͢Δ͕ɺϓϥοτϑΥʔϜશମͱͯ͠ͷར ༻͢ΔͨΊʹطଘػೳͱͷ߹ੑ͕ͱΕ͍ͯͳ͔ͬͨɻ͋Δઃఆ͔Β༗ޮ ͳΦʔΫγϣϯ͕ɺ͜ͷػೳ͔Βར༻Ͱ͖ͳ͍Α͏ʹͳ͍ͬͯͨɻΘΕͯ ͍ͳ͍ػೳͩͬͨͨΊɺଞͷػೳͷ࣮͜ͷػೳΛߟྀ͍ͯ͠ͳ͔ͬͨɻ
w ςετηοτେ͖͘ͳΓ͓͗ͯ͢Γɺઃఆ༻"1*ංେԽ͍ͯͨ͠ɻػೳΛಡ Έղ͘͜ͱ͘͠ɺ৽ͨͳΦʔΫγϣϯܗࣜΛՃ͢Δ͜ͱࠔͩͬͨɻ ར༻ϩάेʹग़ྗ͞Ε͓ͯΒͣɺੳͰ͖ͳ͍ঢ়ଶͩͬͨɻ w ͦͯ͠ࠓޙɺ͜ͷػೳΛੵۃతʹ֦ு͍͖͍ͯͨ͠ͱ͍͏Ϗδωε͔Βͷཁٻ ͕͋ͬͨɻ
ྫͱ͋ΔऔҾػೳ w લʹߏங͞Ε͍͕ͯͨ΄ͱΜͲΘΕ͍ͯͳ͍৴ػೳͩͬͨɻࠂ৴ αʔόɺཧܥɺ%#ɺ΄΅ͯ͢ͷίϯϙʔωϯτʹ͍ͭͯӨڹΛ༩͑Δઃܭ ʹͳ͍ͬͯͨɻ w ಛఆͷࣄۀऀͱͷ࿈ܞͰ͏·͘ಈ࡞͢Δ͕ɺϓϥοτϑΥʔϜશମͱͯ͠ͷར ༻͢ΔͨΊʹطଘػೳͱͷ߹ੑ͕ͱΕ͍ͯͳ͔ͬͨɻ͋Δઃఆ͔Β༗ޮ ͳΦʔΫγϣϯ͕ɺ͜ͷػೳ͔Βར༻Ͱ͖ͳ͍Α͏ʹͳ͍ͬͯͨɻΘΕͯ ͍ͳ͍ػೳͩͬͨͨΊɺଞͷػೳͷ࣮͜ͷػೳΛߟྀ͍ͯ͠ͳ͔ͬͨɻ
w ςετηοτେ͖͘ͳΓ͓͗ͯ͢Γɺઃఆ༻"1*ංେԽ͍ͯͨ͠ɻػೳΛಡ Έղ͘͜ͱ͘͠ɺ৽ͨͳΦʔΫγϣϯܗࣜΛՃ͢Δ͜ͱࠔͩͬͨɻ ར༻ϩάेʹग़ྗ͞Ε͓ͯΒͣɺੳͰ͖ͳ͍ঢ়ଶͩͬͨɻ w ͦͯ͠ࠓޙɺ͜ͷػೳΛੵۃతʹ֦ு͍͖͍ͯͨ͠ͱ͍͏Ϗδωε͔Βͷཁٻ ͕͋ͬͨɻ
ϑΟʔνϟʔͱέΠύϏϦςΟ ϦΞϧλΠϜʹϩάΛղੳͰ͖Δ ͋ΔࠂͷϒϩοΫ͕Մೳ ࠂछผ͝ͱʹ੍ޚՄೳ औҾܗࣜ"͕Մೳ ୯Ձ༧ଌ͕Մೳ ϑΟʔνϟʔ έΠύϏϦςΟ औҾܗࣜ#͕Մೳ ʢ͕ͩෆेʣ
ಛघऔҾ͕Մೳ
ϑΟʔνϟʔͱέΠύϏϦςΟ ϦΞϧλΠϜʹϩάΛղੳͰ͖Δ ͋ΔࠂͷϒϩοΫ͕Մೳ ࠂछผ͝ͱʹ੍ޚՄೳ औҾܗࣜ"͕Մೳ ୯Ձ༧ଌ͕Մೳ ϑΟʔνϟʔ έΠύϏϦςΟ औҾܗࣜ#͕Մೳ ʢ͕ͩෆेʣ
ಛघऔҾ͕Մೳ ʢେ͖͗͢Δ"1*ʣ ͋ΔϑΟʔνϟʔͰ͔͠ར༻͞Ε͓ͯΒͣɺαΠϩԽ͍ͯ͠ΔέΠύϏϦςΟ
αΠϩԽͷ w ςʔϒϧࣗମ͕Γ͚ΒΕɺಠࣗͳσʔλߏʹͳͬͯ ͍Δ w "1*͕ංେԽ͠ɺಛघʹॲཧ͠Α͏ͱ͍ͯ͠Δɻʢ࣌ͷ அͱͯ͠ɺϑΟʔνϟʔ࣮ݱͷεϐʔυΛ༏ઌͨ͠ͱߟ ͑ΒΕΔʣ ࠓޙมԽ͕ݟࠐ·ΕɺεϐʔυΛثʹ͍ͨ͠ϑΟʔνϟʔ Ͱ͋ͬͨͨΊɺϦΞʔΩςΫνϟ͢Δ͜ͱΛஅ
ϦΞʔΩςΫνϟͷ ํΛཱͯΔ
ϑΟʔνϟͱέΠύϏϦςΟ ϦΞϧλΠϜʹϩάΛղੳͰ͖Δ ͋ΔࠂͷϒϩοΫ͕Մೳ ࠂछผ͝ͱʹ੍ޚՄೳ औҾܗࣜ"͕Մೳ ୯Ձ༧ଌ͕Մೳ ϑΟʔνϟʔ έΠύϏϦςΟ ຊʹ࣮ݱ͍ͨ͠औҾܗࣜ# طଘͷέΠύϏϦςΟΈ߹Θ্ͤͨͰ੍ޚ͍ͨ͠
ϑΟʔνϟʔͱέΠύϏϦςΟ ϦΞϧλΠϜʹϩάΛղੳͰ͖Δ ͋ΔࠂͷϒϩοΫ͕Մೳ ࠂछผ͝ͱʹ੍ޚՄೳ औҾܗࣜ"͕Մೳ ୯Ձ༧ଌ͕Մೳ ϑΟʔνϟʔ έΠύϏϦςΟ ຊʹ࣮ݱ͍ͨ͠औҾܗࣜ# ৽نέΠύϏϦςΟΛՃ্͑ͨͰΈ߹ΘͤΔ
औҾΛݸผͷϩάʹॻ͖ग़͢ औҾ͝ͱͷ୯Ձઃఆ
Ξϓϩʔν w طଘػೳͱͷ߹ɺ׆͔ͤΔطଘέΠύϏϦςΟΛચ͍ ग़͠ w σʔλϕʔεϦϑΝΫλϦϯάͰͳ͘ɺϞσϦϯά͔Β Γͳ͓͠ w ཧػೳʹ͍ͭͯখ࣮͘͞͠͠ɺ৴ػೳطଘͷ ػೳΛ࣮ͭͭ͠मਖ਼
ϙετϞʔςϜ w ։ൃ࣌ɺ͜ͷϑΟʔνϟʔΛ࣮͢ΔʹΓͳ͍έΠύ ϏϦςΟ͕ͨ͘͞Μ͋ͬͨɻͦͷͨΊಥ؏ͰέΠύϏϦςΟ Λ૿ͨ͠ɻͦͷ݁Ռ"1*͕ංେԽ͍ͯͨ͠ɻ w ͦͷ݁ՌɺΞʔΩςΫνϟ͕αΠϩԽ͠ɺଞͷػೳͷਐԽʹ ਵͰ͖͍ͯͳ͔ͬͨɻෛ࠴ฦ٫͞Εͳ͔ͬͨɻͦͯ͠ ঃʑʹ͔ͭΘΕͳ͘ͳ͍ͬͯͬͨɻ w
࠶ػೳ͕Ϛʔέοτ͔ΒཅͷΛཋͼͨɻ࣌ଘࡏ͠ͳ ͍ඞཁͳέΠύϏϦςΟ͕ঃʑʹϓϩμΫτʹඋΘ͖ͬͯͯ ͍ͨͨΊɺখ͍͞ػೳ࣮Ͱཁ݅Λຬͨ͢͜ͱ͕Ͱ͖ͨɻ
ϦΞʔΩςΫνϟখ͘͞ w ඞཁ࠷ݶͷέΠύϏϦςΟΛ࣮͠Α͏ɻ͔ͭɺࠓޙଞ ͷϑΟʔνϟʹ͓͍ͯΘΕΔΑ͏ʹέΠύϏϦςΟΛઃܭ ͠Α͏ɻ w ଞʹར༻Ͱ͖ΔέΠύϏϦςΟ͕͋ΔͳΒɺͦΕΛར༻͠Α ͏ɻͦͷ··͑ͳͯ͘ɺطଘͷέΠύϏϦςΟΛগ͠ม ߋ͢ΕՄೳͳΒɺύονΛૹΖ͏ɻ w
ਖ਼͍͠ΞʔΩςΫνϟϦϦʔεαΠΫϧ͕Կप͔͠ͳ͚Ε Θ͔Βͳ͍ɻͲΜͲΜͤྑ͍ɻͷͰɺখ͘͞࡞ͬͯͨ Ίͦ͏ɻ
·ͱΊ ະདྷʹ͚ͯ
lܭը༧ʹա͗ͳ͍z
খ͞ͳػೳɺେ͖ͳࣄ w ॏཁͳػೳͳΒɺίʔυΛখ͘͞͠Α͏ɻखݩʹίʔυΛख܁ ΓدͤɺಡΈ͘͢͠ɺม͑ͯ͋͛͘͢͠Α͏ɻ w ৽͍͠ΈΛͭ͘ΔલʹɺطଘͷΈΛ͔ͬ͠Γௐࠪͯۛ͠ ຯ͠Α͏ɻ w খ͘͞͡ΊͯɺঃʑʹΈΛ͍ͭͬͯ͘͜͏ɻେࣄͳͷখ ͘͞ϦϦʔεͯ͠ϦζϜΛ௫Ή͜ͱɻ
w ࠷ॳͷϦϦʔε͔Β͞ΕͨΞʔΩςΫνϟʹͳΒͳ͍ɻਖ਼ ղ͕Θ͔Βͳ͍͜ͱͷ΄͏͕ଟ͍ɻϦϦʔεΛճͯ͠ঃʑʹέΠ ύϏϦςΟΛ૿͍ͯ͜͠͏ɻ
IUUQCJUMZqVDUTXFPLJOBXB