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
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
Search
Takuma Yamamoto
February 06, 2024
Programming
1
860
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
Takuma Yamamoto
February 06, 2024
Tweet
Share
More Decks by Takuma Yamamoto
See All by Takuma Yamamoto
ドメイン駆動設計 勉強会 〜 リポジトリ編 〜 / 2024-04-23
tamago3keran
0
33
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
87
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
300
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
49
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
57
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
2
850
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
840
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
970
PC が変わっても使い慣れた Neovim で すぐに開発を始める仕組み / 2023-07-25
tamago3keran
1
950
Other Decks in Programming
See All in Programming
I/O Extended Android in Korea 2024 ~ Whats new in Android development tools
pluu
0
250
CSC307 Lecture 12
javiergs
PRO
0
220
CSC307 Lecture 06
javiergs
PRO
0
360
CSC307 Lecture 07
javiergs
PRO
0
220
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
2
81k
DynamoDB コスト最適化っぽいことの基本 with Terraform
kuro_kurorrr
2
250
小さな開発会社を作った理由
polidog
0
1.9k
Microservices rules (July 2024) : what good looks like
cer
PRO
0
1.6k
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
310
Rustのweb開発を助ける 便利なツール紹介
yuki0418
1
190
CSC307 Lecture 09
javiergs
PRO
1
500
ぼっちを避けて楽しむためのアノテコノテ / Various Tips and Tricks to Avoid Loneliness and Have Fun
nrslib
3
1.7k
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
37
2.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
149
45k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
The Straight Up "How To Draw Better" Workshop
denniskardys
229
130k
How STYLIGHT went responsive
nonsquared
93
5k
GraphQLの誤解/rethinking-graphql
sonatard
59
9.6k
Making Projects Easy
brettharned
111
5.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
Building Effective Engineering Teams - LeadDev
addyosmani
47
2.2k
The Brand Is Dead. Long Live the Brand.
mthomps
52
36k
KATA
mclloyd
20
13k
Transcript
υϝΠϯۦಈઃܭ ษڧձ Takuma Yamamoto ʙ ΦϒδΣΫτฤ ʙ
BIOGRAPHY ͋ͳͨ୭Ͱ͔͢ʁ 5BLVNB:BNBNPUP 8PSLBUTOBQNF 'SPN.JZB[BLJ 4/4 झຯ ɾɹɹIUUQTHJUIVCDPNUBNBHPLFSBO ɾɹɹIUUQTUXJUUFSDPNZBNBUBLV ɾɹɹIUUQTRJJUBDPNUBNBHPLFSBO
ɾɹɹIUUQT[FOOEFWUBNBHPLFSBO ɾ͓ͭ ɾαφ ɾΞχϝ ɾɹɹIUUQTOPUFDPNUBNBHPLFSBO ࠷͍ۙͬͯΔ͜ͱ ɾΤϯδχΞ࠾༻શൠ ɾ-BNCEBΛͬͨ$3.ͷ࣮
INTRODUCTION ۦ͚ग़͠ͷࠒʹಡΜͰ࠳ં… ΤϯδχΞʹͳΓͨͯͷࠒɺ࣮ફυϝΠϯۦಈઃܭͱ͍͏ຊΛಡ͏ͱͯ͠࠳ં͠·ͨ͠ɻ લఏ͕ࣝΓͣɺΒͳ͍༻ޠͩΒ͚ͰɺಡΈਐΊΔ͜ͱ͕Ͱ͖·ͤΜͰͨ͠ɻ
INTRODUCTION εφοΫϛʔͰ DDD Λϕʔεʹ։ൃ͍ͯ͠Δ ࠾༻ͰεφοΫϛʔͷྺ࢙ΛΓɺ։ൃʹ͓͚Δলͷͱɺ%%%Λಋೖͨ͜͠ͱΛΓ·ͨ͠ɻ ࣗΩϟονΞοϓͯ͠ɺ͔ͬ͠Γઃܭʹଇͬͯ։ൃͰ͖ΔΑ͏ʹͳΖ͏ͱܾ৺͠·ͨ͠ɻ ࢀߟIUUQTMBCTTOBRNFFOUSZ
INTRODUCTION ΤϯδχΞʹ༏͍͠ೖॻΛݟ͚ͭͨʂ ࠓ࠳ંͨ͘͠ͳ͍ͳʔͱࢥ͍ͬͯͨͱ͜Ζɺ͋Γ͕͍ͨ͜ͱʹ։ൃऀʹͱͬͯ༏͍͠ೖॻ͕ൃച ͞Ε͍ͯͨͷͰɺʮυϝΠϯۦಈઃܭೖʯͱ͍͏ຊΛखʹऔΓ·ͨ͠ɻ
What is DDD? ͦͦ Domain Driven Design ͱԿͰ͔͢ʁ
INTRODUCTION υϝΠϯͷࣝʹযΛͯͨ ઃܭख๏ lυϝΠϯz ϓϩάϥϜΛద༻͢ΔରͱͳΔྖҬ lࣝʹযΛͯΔz ར༻ऀͷߟ͑ࢹɺऔΓר͘ΛڥΛཧղ͢Δ͜ͱ ϓϩάϥϜΛద༻͢ΔରͱͳΔྖҬΛ࣮ࡍʹ ར༻͍ͯ͠Δਓͨͪͷߟ͑ํࢹɺ൴ΒΛऔ Γר͘ڥΛཧղ͢Δ͜ͱΛॏࢹͨ͠ઃܭख๏
INTRODUCTION υϝΠϯʹৄ͍͠ਓͱͷର͕େࣄ υϝΠϯΤΩεύʔτͱίϛϡχέʔγϣϯΛͱΓͳ͕ΒɺυϝΠϯʹର͢ΔཧղΛਂΊͨΓɺใΛ ཧͨ͠Γͯ͠ઃܭ͢Δ͜ͱ͕ଟ͍Ͱ͢ɻ ΤϯδχΞͱؔऀ͕ɺೝࣝͷͣΕ͕ͳ͘ڞ௨ͷݴ༿ͰͤΔΑ͏ʹɺνʔϜಠࣗͰ࡞Γ্͛ΔϢϏΩ λεݴޠͱ͔͕ॏཁʹͳͬͯ͘ΔΑ͏Ͱ͢Ͷɻ υϝΠϯͷ֓೦ υϝΠϯϞσϧ υϝΠϯ
ΦϒδΣΫτ ͜͜ͷ ҰํͰ࣮͜͜ફϕʔεͰܦݧΛੵΜͰ͍͘෦ͳͷͰɺ͙͙͢͢ʹ͚ͭΔͷ͍͠ɻɻɻ
How do we learn about DDD? ͜ͷษڧձͰɺͲͷΑ͏ʹ DDD ΛֶΜͰ͍͔͘ʁ
POLICY DDD ʹऔΓΉͨΊͷಓ͠ΔΛݟ͚ͭΔ %%%Ͱग़ͯ͘Δ༻ޠେ͖͚ͯ͘ɺ֓೦Λநग़͢ΔϞσϦϯάͱl֓೦Λ࣮ʹམͱ͠ࠐΉͨΊͷ ύλʔϯͷछྨʹ͚ΒΕ·͢ɻ ޙऀΑΓৄࡉͳαϯϓϧίʔυͳͲʹམͱ͠ࠐΊΔͷͰɺΤϯδχΞʹͱͬͯཧղ͍͢͠ͱ͍͏ ੑ࣭͕͋Γ·͢ɻͦ͜Ͱ͜ͷษڧձͰɺޙऀͷཧղΛਐΊΔ͜ͱʹूத͠ɺલऀʹऔΓΉͱ͖ͷಓ ͠ΔΛݟ͚ͭ·͢ɻ υϝΠϯͷ֓೦ υϝΠϯϞσϧ
υϝΠϯ ΦϒδΣΫτ ͜͜ʹूத
Why will we be learning about Value Objects? ͳͥΦϒδΣΫτʹֶ͍ͭͯͿͷ͔ʁ
LESSON ϓϦϛςΟϒͳ͚ͩͰγεςϜΛߏங͢Δͷ͍͠ ࢯ໊ΛऔΓѻ͏γεςϜ͕͋ͬͨͱͯ͠ɺ͚ͩΛද͍ࣔͨ͠ͱ͖͕͋Δͱ͠·͢ɻ จࣈྻܕͷΛ֨ೲ͢ΔมGVMM@OBNF͚ͩͰɺ໊͕දࣔ͞Εͯ͠·͏͜ͱ͕͋Γ·͢ɻ ޭύλʔϯҙਤ௨Γlz͕දࣔ͞ΕΔ ࣦഊύλʔϯҙਤʹͯ͠l໊z͕දࣔ͞ΕΔʢGVMM@OBNFʹ໊ͷॱͰೖྗ͞ΕΔͨΊʣ
LESSON ΦϒδΣΫτΛར༻͢Δͱཧ͘͢͠ͳΔ͜ͱ͋Δ ΦϒδΣΫτࢦϓϩάϥϛϯάͰҰൠʹΫϥεͰ࣮͞ΕΔ͜ͱ͕ଟ͍Ͱ͢ΑͶɻ ͜͜ͰΫϥεΛ࣮ͬͯ͢Δͱཧ͘͢͠ͳΓ·͢ɻ lୈҾʹ໊ɺୈҾʹzͱ͍͏ϧʔϧ͕कΒΕΔݶΓඞͣlz͕දࣔ͞ΕΔ ͜ͷΑ͏ʹɺγεςϜʹͱͬͯ࠷దͳlͷѻ͍ํz͕ϓϦϛςΟϒͳͰ͋ΔͱݶΓ·ͤΜɻ ্هΦϒδΣΫτͰ͋ΓɺͰ͋ΔɻΏ͑ʹlΦϒδΣΫτzͱॻ͔Ε͍ͯ·͢ɻ
What are the properties of “Value”? ͦͦ “” ͕࣋ͭੑ࣭ͱԿ͔
LESSON ͦͦ “” ͱͲ͏͍ͬͨੑ࣭Λ࣋ͭͷ͔ lΦϒδΣΫτͰ͋ΓɺͰ͋Δzͱฉ͍ͯύοͱ͠ͳ͍͔͠Ε·ͤΜɻͦͦlzͱ Ͳ͏͍͏ੑ࣭Λ͍࣋ͬͯΔͷͰ͠ΐ͏͔ʁ͜ͷຊͰҎԼͷΑ͏ͳੑ࣭͕͋Δͱհ͞Ε͍ͯ·͢ɻ ͔͜͜Β্هͷੑ࣭ʹ͍ͭͯɺͻͱͭͣͭ۷ΓԼ͛ͯɺͱԿ͔ʹֶ͍ͭͯΜͰ͍͖·͢ɻ ɾෆมͰ͋Δ ɾަ͕ՄೳͰ͋Δ
ɾՁੑʹΑͬͯൺֱ͞ΕΔ
How are the properties represented in Value Objects? ͦͷੑ࣭ΛΦϒδΣΫτͰͲ͏දݱ͢Δ͔
LESSON ͷੑ࣭ “ෆมͰ͋Δ” ͷมߋΛߦ͏ͱ͖ೖΛར༻͠·͕͢ɺมͷͦͷͷΛมߋ͍ͯ͠ΔΘ͚Ͱ͋Γ·ͤΜɻ มͷ༰ΛೖΕସ͍͑ͯ·͢ɻ ෆม͔ͩΒͦ͜ɺ։ൃऀ҆શʹγεςϜΛߏங͢Δ͜ͱ͕Ͱ͖Δͱ͍͏͜ͱͰ͢ɻ ͦ͠ͷͷΛมߋͰ͖ͯ͠·͏ͱɺҎԼͷΑ͏ͳ͜ͱ͕ى͖ͯࠞཚΛੜΈग़ͯ͠͠·͍·͢ɻ
LESSON ΦϒδΣΫτͱͯ͠ਖ਼͍࣮͠ʁ ͜Ε·Ͱ։ൃΛ͖ͯͯ͠ɺҎԼͷΑ͏ͳίʔυΛʹͨ͜͠ͱ͕͋Δͱࢥ͍·͢ɻ ͷlෆมͰ͋Δzͱ͍͏ੑ্࣭ɺҎԼͷ࣮ΦϒδΣΫτͱͯ͠ਖ਼͍͠Ͱ͠ΐ͏͔ʁ
LESSON “ෆมͰ͋Δ” ͱ͍͏ੑ࣭ʹഎ࣮͘ lෆมͰ͋Δzͱ͍͏ੑ࣭࣋ͪ·͢ɻ ͦͷͨΊΦϒδΣΫτʹର͠มߋΛՃ͑ΒΕΔ࣮ɺΦϒδΣΫτͱͯ͠ਖ਼͋͘͠Γ·ͤΜɻ
LESSON ͷੑ࣭ “ަ͕ՄೳͰ͋Δ” ઌड़ͨ͠௨ΓɺมͷΛมߋ͢ΔʹɺೖΛར༻ͨ͠lͷަzͱ͍͏खஈΛબ͠·͢ɻ ͰɺҎԼͷΑ͏ͳ࣮͕ෆదͩͱͨ͠ΒɺมߋΛߦ͏ͱ͖Ͳ͏͢Εྑ͍Ͱ͠ΐ͏͔ʁ
LESSON ΦϒδΣΫτΛؙ͝ͱަ͢Δͷ͕ਖ਼͍࣮͠ lෆมͰ͋Γzɺzަ͕ՄೳͰ͋Δzͱ͍͏ੑ࣭Λߟ͑ΔͱɺҎԼͷ࣮͕ਖ਼͘͠ͳΓ·͢ɻ ΦϒδΣΫτΛมߋ͢ΔͷͰͳ͘ɺ࠶ΦϒδΣΫτΛੜͯ͠ɺೖ͠·͠ΐ͏ɻ
LESSON ͷੑ࣭ ”ՁੑʹΑͬͯൺֱ͞ΕΔ” ҎԼͷίʔυͰࣔ͢Α͏ʹɺಉҰੑͰͳ͘ɺՁੑʹΑͬͯൺֱ͞Ε·͢ɻ
LESSON ΦϒδΣΫτͱͯ͠ਖ਼͍࣮͠ʁ ΦϒδΣΫτಉ࢜ͷൺֱͱͳΔͱɺଐੑΛऔΓग़ͯ͠ൺֱ͢Δํ๏͕ࢥ͍ු͔Ϳ͔͠Ε·ͤΜɻ ͰͰ͋Δͱͨ͠Βɺ͍͔͞͞ෆࣗવͳ࣮ʹͳͬͯ͠·͍·͢ɻ ଐੑΛશͯऔΓग़ͯ͠ൺֱ͢Δ࣮ ͜ΕΛͷൺֱʹஔ͖͑ΔͱෆࣗવͰ͢ΑͶ
LESSON ΦϒδΣΫτʹՁൺֱͷϝιουΛ࣮͢Δ ΦϒδΣΫτಉ͕࢜࣋ͭશͯͷଐੑΛൺֱ͢ΔϝιουΛ࡞͠ɺͦΕΛൺֱ࣌ʹ༻͠·͢ɻ ΦϒδΣΫτಉ࢜Λൺֱ͢ΔϝιουΛՃ ͜ͷΑ͏ʹൺֱ͢Εɺ͔͋ͨΛൺֱ͍ͯ͠Δͷͱಉ͡Α͏ʹ࣮Ͱ͖·͢
The bene fi ts of using Value Objects ΦϒδΣΫτΛ༻͢ΔϝϦοτͱ
LESSON ΦϒδΣΫτΛ༻͢ΔϝϦοτʹ͍ͭͯ ͜Ε·ͰεϥΠυΛಡΜͰ͖ͯɺ͢Ͱʹؾ͍͍ͮͯΔਓ͍Δ͔ͱࢥ͍·͢ɻ͜͜ͰվΊͯຊͷதͰ հ͞Ε͍ͯΔϝϦοτʹ͍ͭͯڞ༗͠·͢ɻ ͔͜͜Β্هͷϝϦοτʹ͍ͭͯհ͠·͢ɻదͳ໘ʹग़͘Θͨ͠ͱ͖ɺΦϒδΣΫτͰ ࣮͍ͬͯͨ͠ͱࢥͬͯΒ͑Δͱخ͍͠Ͱ͢ɻ ɾදݱྗΛ૿͢ ɾෆਖ਼ͳΛଘࡏͤ͞ͳ͍
ɾޡͬͨೖΛ͙ ɾϩδοΫͷࢄࡏΛ͙
LESSON ϝϦοτ “දݱྗΛ૿͢” ࡏݿཧʹ͓͍ͯɺίʔυΛҎԼͷΑ͏ʹϓϦϛςΟϒͳͰཧ͍ͯ͠Δͱ͠·͢ɻ͔͠͠ɺ ͜Ε͚ͩͩͱίʔυ͕ͲͷΑ͏ͳϩδοΫͰઃܭ͞Ε͍ͯΔ͔ಡΈऔΕ·ͤΜɻ ҰํͰҎԼͷΑ͏ʹΦϒδΣΫτͰ࣮͢Δͱɺ࣮ʮΧςΰϦɾ࿈൪ɾϨϏδϣϯʯͱ͍͏ߏ Ͱίʔυ͕ઃܭ͞Ε͍ͯΔ͜ͱ͕໌֬ʹͳΓ·͢ɻ
LESSON ϝϦοτ “ϩδοΫͷࢄࡏΛ͙” ίʔυʹ͓͚ΔlΧςΰϦʔͷ෦͕จࣈͰߏz͞ΕΔ༷ͩͱ͠·͢ɻͦͷ༷ΛνΣοΫ ͢ΔॲཧΛΦϒδΣΫτΛ༻ͤͣɺҎԼͷΑ͏ʹ࣮͍ͯͨ͠ͱ͠·͢ɻ γεςϜΛ։ൃ্͍ͯ͘͠Ͱɺίʔυ͕ೖྗ͞ΕΔՕॴ͕૿͑ΔͱɺͦΕʹ্͍هͷॲཧ૿ ͑·͢ɻͦͷঢ়گͰΧςΰϦʔͷจࣈΛzจࣈzͰߏ͢ΔΑ͏มߋͨ͠ΒͲ͏ͳΔͰ͠ΐ͏ʁ ։ൃ͢ΔͷࢲͨͪਓؒͰ͢ɻਓؒͳͷͰϛε͠·͢ɻରԠ࿙Ε͖ͬͱൃੜͯ͠͠·͍·͢ɻ
LESSON ϝϦοτ “ϩδοΫͷࢄࡏΛ͙” ͦͷॲཧΛlΦϒδΣΫτzͱͯ͠Ϋϥεͷதʹด͡ࠐΊɺඞͣlΦϒδΣΫτzΛ௨ͯ͠ॲཧ͠ ͯ͠·͑ɺ༷มߋ͕͋ͬͨͱͯ͠ɺͦͷՕॴͷΈͷमਖ਼͢Ε࿙Εͳ͘ରԠ͕Ͱ͖·͢ɻ
LESSON ϝϦοτ “ෆਖ਼ͳΛଘࡏͤ͞ͳ͍” ઌड़ͨ͠௨ΓlΦϒδΣΫτzΛ༻ͤͣʹ࣮ͨ͠߹ɺॲཧ͕ࢄࡏ͠ɺରԠ࿙Ε͕ൃੜ͢ΔϦ εΫߴ·Γ·͢ɻͦ͠ͷϦεΫ͕࣮ݱͯ͠͠·͏ͱԿ͕ى͜ΔͰ͠ΐ͏͔ʁ ઌ΄ͲͷΑ͏ʹɺΧςΰϦʔͷจࣈΛzจࣈzͱ͢Δ༷ʹม͑ͨͣͳͷʹɺલͷ༷ͷ··Χ ςΰϦʔ෦͕จࣈͷίʔυσʔλ͕ੜ͞Εͯ͠·͍·͢ɻ
LESSON ϝϦοτ “ෆਖ਼ͳΛଘࡏͤ͞ͳ͍” ෆਖ਼ͳΛଘࡏͤ͞ͳ͍ͨΊʹɺzΦϒδΣΫτzΛ༻ͯ͠ϩδοΫΛҰݩཧ͢Δ͜ͱͰɺର Ԡ࿙ΕΛ͙͜ͱ͕ॏཁʹͳΓͦ͏Ͱ͢Ͷɻ
LESSON ϝϦοτ “ޡͬͨೖΛ͙” ҎԼͷΑ͏ʹΛදݱ͢ΔΫϥε͕͋ΓɺzίʔυzΛจࣈྻͰѻ͍ͬͯΔͱ͠·͢ɻ ͜ͷ࣮Ͱɺޡͬͯl໊zΛೖྗͯ͠͠·ͬͨͱͯ͠ɺॲཧ͕௨ͬͯ͠·͍·͢ɻ
LESSON ϝϦοτ “ޡͬͨೖΛ͙” ͜͏͍ͬͨ͜ͱΛ͙ͨΊʹɺઌ΄Ͳ࡞ͬͨ1SPEVDU$PEFΫϥεͷΠϯελϯε͚ͩΛڐ༰͢ΔΑ ͏ʹ͢Εɺͦͦ1SPEVDU$PEFͰϛεʹؾͮ͘͜ͱ͕Ͱ͖ΔͷͰɺޡͬͨೖΛ͛·͢ɻ
How do we set the criteria? ΦϒδΣΫτͱ࣮͖ͯ͢͠ج४ʁ
LESSON ਖ਼ղͳ͍ɺίϯςΩετʹ߹ͬͨج४ΛఆΊΔ ΦϒδΣΫτͰ࣮͢Δ͖͔Ͳ͏͔ɺͦΕγεςϜαʔϏεͷίϯςΩετʹΑͬͯมΘΔ ͨΊɺҰ֓ʹܾΊΒΕΔͷͰ͋Γ·ͤΜɻͱ͍͑ɺԿ͔͠Βͷج४͕ཉ͘͠ͳΓ·͢ΑͶɻ ͜ͷຊͷචऀɺج४ͷҰྫͱͯ͠ɺҎԼͷΑ͏ͳ͜ͱΛհ͍ͯ͠·͢ɻ ʮͦ͜ʹϧʔϧ͕ଘࡏ͍ͯ͠Δ͔ʯ ʮͦΕ୯ମͰऔΓѻ͍͍͔ͨʯ
Where could we potentially use Value Objects? εφοΫϛʔͩͱɺͲ͜ΛΦϒδΣΫτͰ࣮Ͱ͖ͦ͏͔ʁ
GitHub Ͱ୳ͯ͠Έ·͠ΐ͏ʂ
Summary ΦϒδΣΫτʹ͍ͭͯ·ͱΊΔͱ…
SUMMARY ΦϒδΣΫτʹֶ͍ͭͯΜͰΈͯ… ɾΦϒδΣΫτɺҎԼʹࣔ͢Α͏ͳzzͷੑ࣭Λ࣋ͭ ɹɾෆมͰ͋Δɺަ͕ՄೳͰ͋ΔɺՁੑʹΑͬͯൺֱ͞ΕΔ ɾΦϒδΣΫτΛͬͨγεςϜ։ൃɺҎԼʹࣔ͢Α͏ͳϝϦοτΛ࣋ͭ ɹɾදݱྗΛ૿͢ɺෆਖ਼ͳΛଘࡏͤ͞ͳ͍ɺޡͬͨೖΛ͙ɺϩδοΫͷࢄࡏΛ͙
ɾΦϒδΣΫτͰ࣮͢Δ͔Ͳ͏͔ͷج४ʹਖ਼ղͳ͍ ɹɾίϯςΩετΛ౿·͑ͯɺνʔϜͰٞͯ͠ఆΊΔͱΑͦ͞͏
Recruitment ΤϯδχΞืूதͰ͢ʂ
RECRUITMENT We are Hiring! εφοΫϛʔͰɺʮ͓ͭͱɺੈքΛ໘ന ͘ʯ͍ͯ͘͠ɺͦΜͳ׆ಈΛࣄͱͯ͠औΓ Έ͍ͨΤϯδχΞΛืू͍ͯ͠·͢ɻ IUUQTUFBNTOBRNFDPN εφοΫϛʔ࠾༻