Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Yahoo! ズバトクにおけるフロントエンド開発
Search
LINEヤフーTech (LY Corporation Tech)
PRO
December 16, 2024
Technology
0
2k
Yahoo! ズバトクにおけるフロントエンド開発
2024年12月11日に開催された中途採用向けフロントエンドエンジニア採用説明会で投影したYahoo! ズバトクにおけるフロントエンド開発の紹介スライドです。
LINEヤフーTech (LY Corporation Tech)
PRO
December 16, 2024
Tweet
Share
More Decks by LINEヤフーTech (LY Corporation Tech)
See All by LINEヤフーTech (LY Corporation Tech)
爆速BE開発!Kotlin × Spring Boot × GraphQLで世界が変わった
lycorptech_jp
PRO
1
6
1年でこうなる!?LINEヤフーのAI活用、激変してて笑った
lycorptech_jp
PRO
0
14
1兆メッセージ規模のKafkaプラットフォームを支えるオブザーバビリティ
lycorptech_jp
PRO
0
7
対決!Android vs iOS 生成AIオンデバイス・ラップバトル
lycorptech_jp
PRO
0
6
LINE公式アカウントのチャットを支える仕組み
lycorptech_jp
PRO
0
11
ガイドラインを軸にしたウェブアクセシビリティ改善
lycorptech_jp
PRO
1
88
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
650
Yahoo! JAPANトップページ〜アクセシビリティのせかいをつなぐ〜
lycorptech_jp
PRO
0
48
AI活用によるPRレビュー改善の歩み ― 社内全体に広がる学びと実践
lycorptech_jp
PRO
1
150
Other Decks in Technology
See All in Technology
著者と読み解くAIエージェント現場導入の勘所 Lancers TechBook#2
smiyawaki0820
12
5.6k
技術以外の世界に『越境』しエンジニアとして進化を遂げる 〜Kotlinへの愛とDevHRとしての挑戦を添えて〜
subroh0508
1
330
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
620
事業部のプロジェクト進行と開発チームの改善の “時間軸" のすり合わせ
konifar
9
3.2k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
670
“決まらない”NSM設計への処方箋 〜ビットキーにおける現実的な指標デザイン事例〜 / A Prescription for "Stuck" NSM Design: Bitkey’s Practical Case Study
bitkey
PRO
1
520
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
140
シンプルを極める。アンチパターンなDB設計の本質
facilo_inc
2
1.7k
32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started with Post-Quantum Cryptography in 32 keywords
quiver
0
300
AI駆動開発によるDDDの実践
dip_tech
PRO
0
390
なぜ使われないのか?──定量×定性で見極める本当のボトルネック
kakehashi
PRO
1
1.1k
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
720
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
A designer walks into a library…
pauljervisheath
210
24k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Faster Mobile Websites
deanohume
310
31k
Documentation Writing (for coders)
carmenintech
76
5.2k
Transcript
© LY Corporation Yahoo! ζότΫʹ͓͚Δ ϑϩϯτΤϯυ։ൃ ෦ ஐ࢙
© LY Corporation 2 ෦ ஐ࢙ LINEϠϑʔגࣜձࣾ ϑϩϯτΤϯυΤϯδχΞ 2016ʹϠϑʔגࣜձࣾʹ৽ଔೖࣾ ಉ͔ΒݱࡏʹࢸΔ·Ͱू٬αʔϏεʢओʹζότΫʣ
ͷ։ൃʹैࣄ ݱࡏζότΫͷ։ൃνʔϜʹͯϦʔμʔΛΊΔ © LY Corporation
© LY Corporation Yahoo! ζότΫʹ͍ͭͯ “ຖϫΫϫΫʂ͓τΫ͕ͨΔˍΒ͑Δ” ͘͡ΩϟϯϖʔϯΛܝࡌ͢ΔͨΊͷϓϥοτϑΥʔϜ • நબΤϯτϦʔɺελϯϓͳͲ༷ʑͳػೳΛఏڙ •
ଟ༷ͳछྨͷΩϟϯϖʔϯͷ։࠵͕Մೳ • ࣾαʔϏεɺࣾ֎ͷاۀ༷ͱ࿈ܞ 3
© LY Corporation Yahoo! ζότΫʹ͍ͭͯ ζότΫҎ֎ʹʮ͓τΫλϒʯʮLYPϚΠϨʔδʯαʔϏε։ൃɾӡ༻ 4 • ͓τΫλϒ •
Yahoo! JAPAN τοϓϖʔδͷίϯςϯπ ͷ1ͭ • ͓ಘͳใΫʔϙϯɺΩϟϯϖʔϯͳͲ Λൃ৴ • εϚϗWEBɺΞϓϦʢiOS/Androidʣͷσ όΠεͰఏڙ • LYPϚΠϨʔδ • Yahoo! γϣοϐϯάͷରళฮ֗ͷ͓ ళͰPayPayܾࡁͰΛߪೖ݅͠Λୡ ͢Δ͜ͱͰɺPayPayϙΠϯτͳͲͷಛ య͕֫ಘͰ͖ΔαʔϏε
© LY Corporation ٕज़ελοΫ ू٬αʔϏεΛࢧ͑Δٕज़ 5 ϑϩϯτΤϯυ • TypeScript •
Next.js • React • CSS Modules • jest • Cypress • MFEʢMicro Frontendʣ • ͓τΫλϒͰ׆༻͞Ε͍ͯΔ ΞʔΩςΫνϟ • Yahoo! JAPANτοϓϖʔδ͕ App ShellͱͳΓɺ͓τΫλϒ Fragmentͱͯ͠Քಇ͍ͯ͠Δ όοΫΤϯυ • Java • SpringBoot • Docker • Kubernetes
© LY Corporation MFEʢMicro Frontendʣ ू٬αʔϏεΛࢧ͑Δٕज़ 6 Ҿ༻ Yahoo! JAPANτοϓϖʔδʹ͓͚ΔϚΠΫϩϑϩϯτΤϯυ
- େن৫ʹ͓͚ΔFE։ൃΛՃͤ͞Δʹ • MFEʢMicro Frontendʣ • Yahoo! JAPANͷτοϓϖʔδνʔϜ͕։ൃͨ͠MFEͷΈʢSDKʣΛ༻͍͓ͯτΫλϒ ʢFragmentʣΛ։ൃ • ΞϓϦέʔγϣϯΛػೳຖʹׂ • ׂ͞Εͨখ͞ͳγεςϜΛΈ߹ΘͤΔ͜ͱͰେ͖ͳγεςϜΛߏ͢Δ • App ShellʢʣͱͳΔτοϓϖʔδγεςϜ͕֤FragmentʢλϒʣΛݺͼग़͢ߏͱͳͬ ͍ͯΔ • զʑू٬αʔϏε͓τΫλϒΛ։ൃ͠ɺτοϓϖʔδͷҰίϯςϯπͱͯ͠Ϣʔβʔʹఏڙ
© LY Corporation • νʔϜA/B͕ओʹϏδωεҊ݅ͷ։ൃΛߦ͏ • ϏδωεҊ݅ͷଞʹόοΫΦϑΟεܥͷπʔϧͷ։ൃ୲͢Δ • SREνʔϜԣஅతͳٕज़՝ͷղܾΠϯϑϥɾϑϨʔϜϫʔΫͷ࠷৽ԽʢݕূʣΛߦ͏ ৫ɾνʔϜ
7 ू٬αʔϏεͷ։ൃମ੍ νʔϜA νʔϜB SREνʔ Ϝ
© LY Corporation ΞδϟΠϧ։ൃ • εΫϥϜʹΑΔ։ൃͰ1िؒ1εϓϦϯτͰӡӦ • εΫϥϜνʔϜ։ൃϝϯόʔ͚ͩͰͳ͘σβΠφʔاը৬ͷϝϯόʔ͍Δ • ֤৬छ͕͍ۙڑͰϫϯνʔϜͰ։ൃ͕ਐߦͰ͖Δ
όοΫΤϯυ͔ΒϑϩϯτΤϯυ·Ͱ͍ྖҬͷܦݧ • όοΫ/ϑϩϯτͦΕͧΕͷΞϓϦέʔγϣϯ։ൃɾӡ༻͕ܦݧͰ͖Δ ٕज़՝ͷఏҊɾվળ࣮ࢪ • ௨ৗͷۀͱҟͳΔٕज़తͳ՝ΛఏҊɾվળΛߦ͏ • ex. ύϑΥʔϚϯεվળɺϦϑΝΫλϦϯάɺӡ༻ޮԽͳͲ • ݱঢ়ʹຬͤͣΑΓྑ͍ڥͮ͘ΓΞϓϦέʔγϣϯ࡞ΓΛࢦ͢ • ௨ৗͷۀͷத͚ͩͰಘΒΕͳ͍ܦݧεΩϧͷ֫ಘ͕Մೳ ಛ 8 ू٬αʔϏεͷ։ൃମ੍
© LY Corporation 9 ΩϟϦΞ • ೖࣾҎདྷΒ͘όοΫΤϯυͷྖҬΛ୲ • 2021ԼظʹPayPayϛχΞϓϦͷ։ൃҊ݅Λ୲ •
͔͜͜ΒϑϩϯτΤϯυͷྖҬΛॳΊͯ୲ • TypeScript / React / Next.js ͲΕະܦݧͷঢ়ଶ • ࣾͷϑϩϯτΤϯυ༗ࣝऀͷॿྗ͋ͬͯϛχΞϓϦͷϩʔ ϯνʹޭ • ॳΊͯͷྖҬֶ͕ͩͬͨͿָ͠͞ͱͦΕ͕Ξτϓοτͱ ͯ͠αʔϏεʹؐݩ͞ΕΔָ͠͞ͷ྆ํ͕Ϟνϕʔγϣϯ ʹͳ͍ͬͯͨ • PayPayϛχΞϓϦͷ্ཱͪ͛Ҏ߱ݱࡏʹࢸΔ·Ͱ͓τΫλϒͷ։ ൃؚΊϑϩϯτΤϯυྖҬʹؔΘΔػձ૿͍͑ͯΔঢ়گ
© LY Corporation 10 ΩϟϦΞ • ϑϩϯτΤϯυͷྖҬʹؔΘΕͨ͜ͱͰReactNext.jsͱ͍ͬͨࣾ֎ͱଟ͘ར༻͞Ε͍ͯΔϥΠϒϥ ϦϑϨʔϜϫʔΫΛֶͿػձΛಘΒΕͨͷඇৗʹྑ͍ܦݧͱͳͬͨ • αʔϏεΛ࡞Γ্͍͔͛ͯͳ͚ΕͳΒͳ͍ϓϨογϟʔ͕͋ͬͨɺͦͷ࣮༻తͳֶͼ͕Ͱ
͖ͨ • JavaScriptͷݴޠಛੑͱͯ͘͠͠ײ͡Δ໘͋ͬͨʢγϯάϧεϨουϞσϧʣ͕ɺόοΫΤϯυ ͰͦΕͳΓʹίʔσΟϯάྺ͔ͬͨ͜ͱ͔Βݴޠͷนײͮ͡Β͔ͬͨ • όοΫΤϯυͷσβΠϯઃܭΞʔΩςΫνϟʹ৮ΕΔػձ͕ଟ͔ͬͨͨΊɺMFEAtomic Designͷ Α͏ͳϑϩϯτΤϯυͷσβΠϯύλʔϯΛΔ͜ͱ͕Ͱ͖ઃܭͷ෯Λ͛Δ͜ͱ͕Ͱ͖ͨ • όοΫΤϯυͷҊ݅Ҏ֎ʹϑϩϯτΤϯυͷҊ݅ʹؔΘΔػձ૿͑ɺΩϟϦΞͷ෯͕ΓϞν ϕʔγϣϯΞοϓʹܨ͕ͬͨ • όοΫΤϯυʹൺΔͱ • ·ͩ·ͩΒͳ͍͜ͱ͕ଟ͍ྖҬ͕ͩɺͦͷΔָ͕͋͠͞Δ • ڥͷมԽ͕·͙Δ͘͠ɺมԽʹै͢Δ͚ͩͷεΩϧ͕ඞཁͩͱ௧ײ
© LY Corporation ٕज़ʹରͯ͠લ͖ʹऔΓΊΔ ༩͑ΒΕͨۀ͚ͩͰͳ͘ɺࣗͰ՝ΛൃݟɾఏҊ͠ղܾ͍ͨ͠ ϑϩϯτΤϯυͪΖΜɺͦͷଞ͍ྖҬʹνϟϨϯδͯ͠Έ͍ͨ 11 ͜Μͳํʹདྷͯ΄͍͠
© LY Corporation ΤϯτϦʔΛ͓͍ͪͯ͠·͢ʂ 12
© LY Corporation