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
Wantedly の技術とアーキテクチャ / 2023年度 新人研修
Search
Altech
April 20, 2022
Programming
810
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Wantedly の技術とアーキテクチャ / 2023年度 新人研修
2023年度 Wantedly 新人研修で使用した資料です。
Altech
April 20, 2022
More Decks by Altech
See All by Altech
スキーマと型で拓く Full-Stack TypeScript / TSKaigi 2025
altech
4
4.8k
継続的なサービス発展を支えるアーキテクチャと技術 / Developers Summit 2023
altech
20
6.9k
技術を的に当てる技術について - GraphQL を入れ直した話 / 吉祥寺.pm28
altech
7
6.4k
マイクロサービス・アーキテクチャと共存する Ruby on Rails のアーキテクチャ的拡張 - その事例と可能性 / Kaigi on Rails 2021
altech
8
3.8k
ソフトウェア設計の Why & What & How / Wantedly 新卒研修
altech
0
12k
Data-Driven Service-Oriented Architecture & UI
altech
3
1.7k
Ruby で作るデータ分析基盤
altech
9
2.1k
Object-Oriented Abstraction of Redis Sorted Set
altech
2
2.6k
Microservices on “Rails” - Wantedly のマイクロサービス事例
altech
8
6k
Other Decks in Programming
See All in Programming
RSSとCodexを使ってX投稿自動化してみた
ochtum
0
110
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
220
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
130
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
0
240
Deep dive into the select statement (GopherCon UK)
jespino
0
170
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
110
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
120
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
160
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
170
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
140
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
デプロイ直後のレイテンシスパイクを調べたら、 Railsの仕様にたどり着いた
nhsykym
0
110
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
840
Transcript
©2021 Wantedly, Inc. 8BOUFEMZͷٕज़ͱΞʔΩςΫνϟ 8BOUFEMZ৽ਓݚमฏ
©2021 Wantedly, Inc. 8BOUFEMZ&OHJOFFSJOH)BOECPPL
©2021 Wantedly, Inc. ಥવͰ͕͢Ͱ͢💡
©2021 Wantedly, Inc. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ग़యɿhttps://muuseo.com/square/articles/28 ࣭ɿ͜ΕԿͰ͠ΐ͏͔ʁ
©2021 Wantedly, Inc. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ग़యɿhttps://muuseo.com/square/articles/28 ࣭ɿ͜ΕԿͰ͠ΐ͏͔ʁ
©2021 Wantedly, Inc. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ग़యɿhttps://muuseo.com/square/articles/28 ࣌ܭʢϓϩμΫτʣ
©2021 Wantedly, Inc. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ ग़యɿhttps://muuseo.com/square/articles/28 ϓϩμΫτΛߏ͢Δίϯϙʔωϯτ܈
©2021 Wantedly, Inc. ϓϩμΫτͱίϯϙʔωϯτͷؒʹ͋ΔΪϟοϓ ݸผͷίϯϙʔωϯτ͚ͩΛݟ͍ͯͯཧղͰ͖Δ͜ͱগͳ͍ → ίϯϙʔωϯτ͕ϓϩμΫτՁΛͲ͏ߏ͍ͯ͠Δ͔͕େࣄ ɾͨͱ͑ࣃंͰ͋ΕɺͦΕ͕ԿͱͲ͏טΈ߹͍ͬͯΔͷ͔ ɾͦΕ͕গ͠େ͖ͳ෦ͱͯ͠ͲͷΑ͏ʹʮػೳʯ͍ͯ͠Δͷ͔ ɾͦΕΒͷػೳ͕શମͱͯ͠ͲͷΑ͏ͳʮՁʯΛੜΜͰ͍Δͷ͔
©2021 Wantedly, Inc.
©2021 Wantedly, Inc. ϖʔδλΠτϧ ϖʔδαϒλΠτϧ
©2021 Wantedly, Inc. ຊ
©2021 Wantedly, Inc. ͜ͷݚमͷత 1. ΤϯδχΞͷΦϯϘʔσΟϯά 2. Wantedly Ͱఆ͍ٛͯ͠ΔΞʔΩςΫνϟͱͦͷؔ࿈ٕज़ͷҐஔ͚ͮΛΔ 3.
ʑͷࣄ͕ͲͷΑ͏ʹશମʹͭͳ͕͍ͬͯΔͷ͔Λཧղ͘͢͢͠Δ
©2021 Wantedly, Inc. Ϣʔβʔʹఏڙ͍ͯ͠ΔαʔϏε αʔϏεͱͯ͠େ͖͘ Visit, Engagement, People ͷ3͕ͭଘࡏ ΞϓϦϓϥοτϑΥʔϜͱͯ͠
Web, iOS, Android ͷ3ͭʹల։ Engagement Web ϓϥοτϑΥʔϜͷΈʹల։ αʔϏεΛ ϓϥοτϑΥʔϜʹ ల։͢Δ ɾɾͱ͍͏ؔੑ
©2021 Wantedly, Inc. ιϑτΣΞͱͯ͠Ͳ͏ݟཱͯΔ͔ جຊతͳߟ͑ํɿ ιϑτΣΞίϯϙʔωϯτʢ෦ʣͷू߹ମͱͯ͠࡞ΒΕΔ ͜ΕΒ֊తʹߏ͞ΕΔ ্Ґͷ֊Λཧղ͢Δ͜ͱͰɺԼҐͷ֊Λཧղ͢Δ͜ͱʢͻͱ·ͣʣઌૹΓͰ͖Δ ࠓͷযɿ࠷্Ґͷ֊ͰͲͷΑ͏ͳߏʹͳ͍ͬͯΔ͔ ͦͷߏͲͷΑ͏ʹܾ·͍ͬͯΔ͔
ٕज़త੍ɺ৫త੍ αʔϏεՁͷ࣋ଓతͳఏڙͱ֦େʢతʣ
©2021 Wantedly, Inc. ࠷্Ґͷߏ 👉 AppsɾSystemɾData ͷͦΕͧΕΛݟ͍ͯ͘
©2021 Wantedly, Inc. "QQT ·ͣίί "QQMJDBUJPOT
©2021 Wantedly, Inc. جຊతͳಛੑ Ϣʔβʔ͕తʹ৮ΕΔιϑτΣΞ ϢʔβʔͷखݩͷσόΠεʹ࣮ߦίʔυ͕సૹ͞Εͯಈ͘ ΞϓϦΛಈ͔ͨ͢ΊͷϓϥοτϑΥʔϜ͍͔ͭ͋͘Δ զʑ Web(ϒϥβ)ɺiOSɺAndroid ͷ
3 ͭͷϓϥοτϑΥʔϜͰͦΕͧΕΞϓϦΛఏڙ͍ͯ͠Δ ͍͍ͩͨ͜ΕͰ΄΅શͯΧόʔͰ͖ΔͨΊ
©2021 Wantedly, Inc. ͍ͭ͘ͷίϯϙʔωϯτ͕͋Δ͔ʁ ·ͣίʔυϕʔεʢϦϙδτϦʣͰ͑ͯΈΑ͏ Web ΞϓϦ wantedly-frontendɿݸਓϢʔβʔ͚ɺwww.wantedly.com wantedly-admin-frontendɿاۀϢʔβʔ͚ɺadmin.wantedly.com wantedlyɿWeb
ΞϓϦʴόοΫΤϯυγεςϜͷ྆ํΛؚΉ Railsɺwww.wantedly.com perkɿैۀһ͚ɺWeb ΞϓϦͱόοΫΤϯυγεςϜ͕౷߹͞Εͨ Railsɺperk.wantedly.com iOSΞϓϦɺAndroidΞϓϦʢϞόΠϧΞϓϦʣ visit-iosɿVisit ΞϓϦͷ iOS ϓϥοτϑΥʔϜ͚࣮ app-androidɿVisit ΞϓϦͷ Android ϓϥοτϑΥʔϜ͚࣮ yashima-iosɿPeople ΞϓϦͷ iOS ϓϥοτϑΥʔϜ͚࣮ yashima-androidɿPeople ΞϓϦͷ Android ϓϥοτϑΥʔϜ͚࣮ Web ΞϓϦ͜ΕΒʹҠߦ͍ͯ͘͠ํੑ
©2021 Wantedly, Inc. ϞόΠϧΞϓϦݸʁݸʁ ΞϓϦͷछྨ2ݸʢVisit ͱ Peopleʣ ҰํͰίϯϙʔωϯτʢίʔυϕʔεʣ iOS ͱ
Android ͰผͳͷͰ4ݸ ʢͳͥผͳͷ͔ʁʣ
©2021 Wantedly, Inc. ࠷্Ґͷ֊ͷίϯϙʔωϯτ ҙͷίϯϙʔωϯτͷɺଞ͔ΒಠཱʹσϓϩΠ͕Մೳͳͷ → ࣮ߦٕज़ҟͳΓಘΔɾɾɾJavaScript, Swift, Kotlin, Browser,
... → σϓϩΠઓུɾϦϦʔεઓུҟͳΓಘΔ ྫɿiOS ϓϥοτϑΥʔϜͷ Wantedly Visit ΞϓϦɺApp Store ʹਃΛߦ͍ɺਃ͕௨ͬͯϦϦʔε͞Ε Δ͜ͱͰϢʔβʔͷʹݟ͑ΔվળɾػೳՃ͕ߦΘΕΔɻίʔυͷߋ৽ஈ֊తʹߦΘΕΔɻ ྫɿWeb ϓϥοτϑΥʔϜͷΞϓϦɺΞΫηεͨ͠ॠؒʹ࠷৽ͷίʔυ͕μϯϩʔυ͞Ε࣮ͯߦ͞ΕΔɻ Q. ͖ͬ͞ίʔυϕʔεΛ͚͑ͨͲʁ զʑ Git ͱ GitHub Λ͍ͬͯΔͷͰɺίϯϙʔωϯτ͝ͱʹϦϙδτϦΛ͚ͯ։ൃϑϩʔʹམͱ͍ͯ͠Δ
©2021 Wantedly, Inc. "QQT Ҏ্Λ·ͱΊͨͷ Q. ͍ͭ͘ͷίϯϙʔωϯτ͕͋Δ͔ʁ A. ݸʢ1ܻΦʔμʔʣ
©2021 Wantedly, Inc. ίϥϜɿΞϓϦɾϓϥοτϑΥʔϜͱٕज़ ࣮ߦ͢Δج൫͕ҟͳΔͷͰ͋Εɺ࠷దͳ࡞ΓํҟͳΔ → ϓϩάϥϛϯάݴޠ͕ҟͳͬͨΓɺσϓϩΠઓུ͕มΘͬͨΓ͢Δ → ίϯϙʔωϯτͱͯ͠ผͷͷͱͯ͠࡞Δ͜ͱʹͳΔ ҰํͰɺ͜ΕΛղܾ͢ΔԾԽɾநԽͱ͍͏ํੑৗʹଘࡏ͢Δ
ͨͱ͑ Flutter ͷΑ͏ͳٕज़Λ͑ Apps ͷίϯϙʔωϯτݮΒͤΔ͔ʁ ࣮ࡍɺWeb ϒϥβͱ͍͏͋ΔछͷநԽͷٕज़ʹΑͬͯ Mac OS ͱ Windows OS ͰผʑͷΞϓϦΛ࡞Δ ඞཁ͕ͳ͘ͳ͍ͬͯΔͷ͕ݱࡏɻ ʮ൚༻ܕͷιϦϡʔγϣϯʯͱʮಛԽܕͷιϦϡʔγϣϯʯͷ૬Ⴅ͕ɺͲ ͷΑ͏ʹҠΓมΘ͍͔ٕͬͯ͘ज़ͷྲྀΕΛཧղ͢ΔҰͭͷΓޱʹͳΔ
©2021 Wantedly, Inc. ҰྫɿΣϒͷ߹ V8 ͱ Blink ͷΞʔΩςΫνϟ - PPLαϚʔεΫʔϧ2021
- nhiroki
©2021 Wantedly, Inc. ಄ͷମૢɿखݩͷσόΠεͰಈ͘ΞϓϦɺෆม͔ʁ ΞϓϦඞͣ͠ϢʔβʔͷखݩͷσόΠεͰಈ͔ͳͯ͘ྑ͍ͷͰʁ ͨͱ͑ɺαʔόʔଆͰ UI ͷඳը·Ͱߦ͍ɺΫϥΠΞϯτͦΕΛө૾ͱ ͯ͠ྲྀ͚ͩ͢ɺͱ͍͏ΞʔΩςΫνϟཧతʹߟ͑Δ͜ͱͰ͖ͦ͏ ͔͠͠ɺݱ࣌ͰɺϢʔβʔͱͷΠϯλϥΫγϣϯΛ͏ΞϓϦέʔ
γϣϯʹ͓͍ͯը໘ͷඳըϢʔβʔɾΠϯλϥΫγϣϯͷॲཧͱ͍ͬ ͨܭࢉϢʔβʔͷखݩͷσόΠεͰߦ͏ͷ͕ओྲྀͰ͋Δ Q. ͜ΕΛ੍͍ͯ͠Δٕज़తͳཁҼͱͯ͠Կ͕ߟ͑ΒΕΔͩΖ͏ʁ Q. ͦΕղܾ͢ΔՄೳੑ͕͋ΔͩΖ͏͔ʁ
©2021 Wantedly, Inc. ಄ͷମૢɿ$IBU(15(6*Λஔ͖͑Δ͔ʁ ͜͜·Ͱѻ͖ͬͯͨΞϓϦશͯɺGUI ͱ͍͏ʮࢹ֮ʯΛϕʔεͱͨ͠ UI ύϥμΠϜ ChatGPT
ͷΑ͏ͳʮݴޠʯΛϕʔεͱͨ͠ UI GUI Λஔ͖͑ΔͩΖ͏ ͔ʁ ͋Δ͍ GUI ͷརͱԿͩΖ͏͔ʁ ʰΦϒδΣΫτࢦ UI σβΠϯ - ͍͍͢ιϑτΣΞͷݪཧʯ- ্ֶ
©2021 Wantedly, Inc. 4ZTUFN Ԟʹ͢͢Ή
©2021 Wantedly, Inc. جຊతͳಛੑ Ϣʔβʔ͕తʹ৮Εͳ͍ιϑτΣΞ զʑ͕Ϋϥυʹ͍࣋ͬͯΔΫϥελʔԽ͞Εͨܭࢉػͷ্Ͱ࣮ߦ͞ΕΔ αʔϏεͷ࣮ߦʹඞཁͳத֩తͳσʔλΛ͍࣋ͬͯΔ ɾɾɾΞϓϦσʔλΛ͍࣋ͬͯΔ͔ʁ σʔλσʔλϕʔεݕࡧΤϯδϯͱ͍ͬͨϛυϧΣΞʹอଘ͍ͯ͠Δ
͔ͦ͜ΒऔΓग़ͨ͠σʔλΛҰ؏ͨ͠υϝΠϯϞσϧͷݩʹॲཧͯ͠ API ͱ ͯ͠ఏڙ͢Δ
©2021 Wantedly, Inc. ͍ͭ͘ͷίϯϙʔωϯτ͕͋Δ͔ʁ ࠷্Ґͷίϯϙʔωϯτͷఆٛʲ࠶ܝʳ ίϯϙʔωϯτͷ͏ͪɺଞ͔ΒಠཱʹσϓϩΠ͕Մೳͳͷ ͦΕͧΕͷ࣮ߦٕज़ʹجͮ͘ → ͜Ε͕ϚΠΫϩαʔϏεͱݺΕͨΓ͍ͯ͠Δ Q.
͍ͭ͘ͷίϯϙʔωϯτ͕͋Δ͔ʁ A. ेݸʢ2ܻΦʔμʔʣ
©2021 Wantedly, Inc. ٕज़ ࣮ߦج൫ɿKubernetes, Docker, … ϓϩάϥϛϯάݴޠɿGo, Ruby, Python,
…
©2021 Wantedly, Inc. ϥΠϒϥϦίϯϙʔωϯτ͔ʁ ιϑτΣΞͷ෦Ͱ͋Δͱ͍͏ૉͳҙຯͰ Yes ࠷্ҐͷίϯϙʔωϯτʹͳΓ͏Δʁ ϥΠϒϥϦͲͷΑ͏ʹϢʔβʔʹಧͩ͘Ζ͏͔ʁ ߦͬͨมߋΛίϛοτ͠ɺόʔδϣϯͰλά͚͢Δ ͦΕΛʮ͍ͬͯΔଆʯͷιϑτΣΞɾίϯϙʔωϯτ͕औΓࠐΜͰϦϦʔε͢Δ
࠷্Ґͷίϯϙʔωϯτͱͯ͠ No ଞͷίϯϙʔωϯτ͔ΒಠཱʹσϓϩΠͰ͖ͳ͍ͨΊ
©2021 Wantedly, Inc. ίϥϜɿϚΠΫϩαʔϏεɾΞʔΩςΫνϟʹ͍ͭͯ ࣮ଶͱͯ͠ϝΠϯͷ Rails ͷൺ݁ߏେ͖͍ 👉 ͦΕࣗମͰͳ͍ ϚΠΫϩαʔϏεɾΞʔΩςΫνϟΛ࠾༻͍ͯ͠Δͷɺʮඞཁͳͱ͖ʹ͚ͯ࡞ΕΔΑ͏ʹ͢ΔʯͨΊͰ͋ͬ
ͯʮ͋ΒͷΛ͚ͯ࡞ΔʯͨΊͰͳ͍ͨΊ γεςϜͷׂͷํʁ υϝΠϯʢҙຯతͳ·ͱ·ΓʣͰׂ͢Δ ݁ߏ͘͠ɺϓϩμΫτՁͷಎྗ͕ཁٻ͞ΕΔ ٕज़తͳಈػͰׂ͢Δ͜ͱ͋Δ͕ɺͦͷ߹Λߟ͑ͯԿΒ͔ͷҙຯతͳ·ͱ·ΓΛఆٛ͢Δ
©2021 Wantedly, Inc. ίϯϙʔωϯτಉ࢜ͷ࿈ܞ ҟͳΔٕज़Ͱ࣮͞ΕͨίϯϙʔωϯτΛڠௐͯ͠ಈ͔ͨ͢Ίʹ API ͕ॏཁ ΠϯλʔϑΣΠε͕εΩʔϚͱͯ͠දݱ͞Εͯɺ࣮Ͱܕ͕อূ͞ΕΔ͜ͱ Protocol BuffersɿεΩʔϚͷهड़ʹ͏
σʔλΛόΠφϦͰදݱ͢ΔγϦΞϥΠθʔγϣϯɾϑΥʔϚοτͰ͋Δ ཁ͢ΔʹʮͳʹΛૹΔ͔ʯͷͨΊͷ͏ٕज़ gRPC, Cloud Pub/Subɿඪ४Ͱ༻ҙ͍ͯ͠Δ௨৴ٕज़ ཁ͢ΔʹʮͲ͏ૹΔ͔ʯͷͨΊͷ͏ٕज़
©2021 Wantedly, Inc. ΦϯϥΠϯॲཧͱΦϑϥΠϯॲཧ γεςϜʹ͓͚ΔॲཧͷओͳτϦΨʔγεςϜ֎෦͔Βͷ API ίʔϧ ৭ʑͳઢҾ͖Մೳ͕ͩɺΦϯϥΠϯॲཧͱݺΕΔ͜ͱ͕͋Δ ҰํͰɺͦΕҎ֎ͷτϦΨʔʹΑͬͯॲཧ͕࢝·Δ͜ͱ͕͋Δ ΦϑϥΠϯॲཧʢόονॲཧʣͱݺΕΔ
ΦϯϥΠϯॲཧͱΦϑϥΠϯॲཧͱ͍͏ݴ༿Ͱগ͠ݟ௨͕͠ྑ͘ͳΔ Wantedly ʹ͓͚Δόονॲཧ Kubernetes ͷ CronJob ػೳͰδϣϒͱͯ͠ఆظ࣮ߦ͕Մೳ Argo Workflow Ͱδϣϒಉ࢜ͷ࿈ܞ͕ՄೳʢδϣϒAΛॲཧͨ͠ޙʹδϣϒBΛॲཧ͍ͨ͠ʣ ίϯϙʔωϯτʢϚΠΫϩαʔϏεʣΛ·͍ͨͩ࿈ܞͰ͖Δ
©2021 Wantedly, Inc. 4ZTUFN Ҏ্Λ·ͱΊͨͷ γεςϜج൫पΓผ్ݚम͕͋Γ·͢
©2021 Wantedly, Inc. γεςϜͱΞϓϦͷ࿈ܞ વͳ͕ΒɺΞϓϦͱγεςϜ͕࿈ܞ͢Δඞཁ͕͋Δ ࠶ܝɿҎԼΞϓϦͱγεςϜͷؔʹͯ·Δ ҟͳΔٕज़Ͱ࣮͞ΕͨίϯϙʔωϯτΛ্ख͘ڠௐͯ͠ಈ͔ͨ͢Ίʹ API ͕ॏཁ ۩ମతʹɺAPI
͕εΩʔϚʹΑͬͯදݱ͞Εͯɺ࣮ʹΑͬͯͦΕ͕อূ͞ΕΔ͜ͱ͕ॏཁ → γεςϜͱΞϓϦͷؒͷ௨৴ͰεΩʔϚٕज़͕ඞཁ
©2021 Wantedly, Inc. ୯ҰͷγεςϜͱଟͷΞϓϦ Wantedly ͱ͍͏αʔϏεͷγεςϜ͔ΒҙͷΞϓϦ͕࡞ΒΕΔ ʮγεςϜͷ͜ͷ෦͜ͷΞϓϦ͔Β͔͠ݺΕͳ͍ʯͱݴͬͨҰൠੑͷ͋Δෆม݅ͳ͍ γεςϜ͕ϚΠΫϩαʔϏεʹׂ͞Ε͍ͯΔ͜ͱɺ͋͘·ͰγεςϜ෦ͷΞδϦςΟͷ্͕త όοΫΤϯυ߹ͷׂʢͲͷΑ͏ͳϚΠΫϩαʔϏε͕ଘࡏ͢Δ͔ʣΛΞϓϦ͕Δඞཁͳ͍ ͜ͷͨΊɺΞϓϦʹରͯ͠
API Λఏڙ͢ΔήʔτΣΠɾαʔόʔΛஔ͖ ҰͭͷγεςϜͱͯ͠ݟ͍ͤͯΔ ͦ͜ͰɺGraphQL Λ͏͜ͱͰใઃܭʹج͍ͮͯϞσϧԽ͞Εͨ Φ ϒδΣΫτΛ API ͰΞϓϦ͕ॊೈʹσʔλΛऔಘͰ͖ΔΑ͏ʹ͍ͯ͠Δ Protocol Buffers ͷεΩʔϚ͕͢Ͱʹ͋ΔͷͰɺ͜ͷఆٛΛར༻ͯ͠ GraphQL API Λࣗಈੜ͍ͯ͠Δ ʢ͜Ε࠷ۙ࢝ΊͨͷͰɺ࣮ࡍʹ·ͩ GraphQL Λ௨͍ͯ͠ͳ͍෦ଟ͍ʣ
©2021 Wantedly, Inc. ମݧઃܭͰଊ͑ΔγεςϜڥք ද ࠎ֨ ߏ ཁ݅ ઓུ Ϣʔβʔମݧઃܭͷ֊
ϏδϡΞϧσβΠϯ ϨΠΞτ φϏήʔγϣϯσβΠϯ ใઃܭ ίϯςϯπ ػೳ ɾใΛγεςϜ͔ΒҾ͖ग़ͤΔඞཁ Ұཡը໘ʹใ"ͷதΛ Ͳ͜·Ͱදࣔ͠Α͏ʁ εϚϗͷ߹ݮΒ͢ʁ 69σβΠϯͷஈ֊Ϟσϧ ΞϓϦ γεςϜ ΞʔΩςΫνϟͷ֊ ΞʔΩςΫνϟʹద༻
©2021 Wantedly, Inc. "QQ4ZTUFN ࣍ͷ෦ʹ֘ ͜ͷ͋ͨΓ
©2021 Wantedly, Inc. ίϥϜɿܭࢉͲ͜Ͱ࣮ߦ͞ΕΔ͔ʁ ΞϓϦɿओʹ UI ͷඳըঢ়ଶͷมߋɺωοτϫʔΫ௨৴ͱ͍ͬͨܭࢉ͕ ʮݸʑͷϢʔβʔͷσόΠε্ͰʯߦΘΕΔ γεςϜɿσʔλΛॴ࣋ͯ͠Ұ؏ͨ͠υϝΠϯϞσϧͷݩʹ
ʮզʑͷΫϥυɾϚγϯ্Ͱʯॲཧ͢Δ API Λఏڙ͢Δ 👉 ͭ·ΓΞϓϦͱରরతʹશϢʔβʔ͕ܭࢉϦιʔεΛڞ༗͍ͯ͠Δ ͔͜͜ΒʮେྔͷϦΫΤετΛಉ࣌ʹࡹ͘ʯͳͲͷγεςϜݻ༗ͷ͕ ੜ·Ε͍ͯΔʢٯʹεϖοΫ͕ҟͳΔͳͲΞϓϦݻ༗ͷੜ·ΕΔʣ நతͳ֓೦͚ͩͰͳ͘ܭࢉػʹগ͠Λ͚Δͱྑ͍
©2021 Wantedly, Inc. %BUB ࣮·ͩ͋Δ
©2021 Wantedly, Inc. جຊతͳಛੑ σʔλΣΞϋεͱݺΕΔɺϢʔβʔ͔ΒݟͯγεςϜΑΓ͞ΒʹԞʹ ͋ΔιϑτΣΞ ΫϥυϓϩύΠμʔͷ͍࣋ͬͯΔσʔληϯλʔ্Ͱܭࢉ͕࣮ߦ͞ΕΔ Φʔμʔͱͯ͠ɺզʑͷγεςϜͷΫϥελʔͷنΑΓ1ܻʙ2ܻେ͖͍ϚγϯͰࢄॲཧ͕ߦΘΕΔ ٕज़తʹɺྻࢤσʔλϕʔεͳͲγεςϜͱҟͳΔͷ͕༻͍ΒΕ͍ͯΔ ΞϓϦγεςϜͳͲɺαʔϏεͷ͋ΒΏΔՕॴͰൃੜͨ࣌͠ܥྻͷσʔλ
͕ू͞Ε͍ͯΔɾɾɾγεςϜͱͷҧ͍ ࢀߟɿσʔλΣΞϋεͷॳظͷఆٛ “اۀͷҙࢥܾఆϓϩηεΛࢧ͑ΔɺαϒδΣΫτผʹ౷߹Խ͞Εͨɺ࣌ܥྻͳෆมσʔλͷू߹”ʢInmonʣ
©2021 Wantedly, Inc. 8BOUFEMZͷ߹ σʔλΣΞϋεͱͯ͠ BigQuery Λ͍ͬͯΔ ҙࢥܾఆͷͨΊ BigQuery ͱ࿈ܞ͢Δ
Looker ͱ͍͏αʔϏεΛ͍ͬͯΔ σʔλͷఆٛϞσϦϯάΛߦ͏ػೳͱϢʔβʔɾΠϯλʔϑΣΠε ͨͩ͠ɺσʔλͷར༻ͷ͞ΕํҙࢥܾఆΛߦ͏͚ͩͰͳ͍ ਪનΞϧΰϦζϜʹσʔλΛ༩͑ΔͳͲͷܗͰɺγεςϜͷৼΔ͍ʹ ϑΟʔυόοΫ͞ΕΔ App/System Data ΞϧΰϦζϜ ऩू ֶश by ܭࢉػ App/System Data ػೳ։ൃ ऩू ੳɾҙࢥܾఆ by ਓؒ 2छྨͷϑΟʔυόοΫɾαΠΫϧ
©2021 Wantedly, Inc. %BUB Ҏ্Λ·ͱΊͨͷ σʔλج൫पΓผ్ݚम͕͋Γ·͢
©2021 Wantedly, Inc. ·ͱΊ
©2021 Wantedly, Inc. ͜͜·Ͱͷ༰Λ౿·͑ͯ ߏཁૉͱͦͷؔΛߟ͑ͯΈΔ
©2021 Wantedly, Inc. αʔϏε Ϣʔβʔ ମݧ͢Δ ϒϥϯυͱͯ͠ ೝ͢Δ ఏڙ͖͢ମݧΛ࡞Δਓ αʔϏεϨϕϧ
αʔϏε։ൃऀ ఏڙ͖͢ମݧͷఔ ɹɹγεςϜɹɹ ৮Δ ϓϩμΫτͱͯ͠ ೝ͢Δ WebΞϓϦ iOSΞϓϦ AndroidΞϓϦ ɹΞϓϦ ֤ΞϓϦϓϥοτϑΥʔϜ ΦʔϓϯϓϥοτϑΥʔϜͳͷͰ ΞϓϦͷαʔϒࣗલ = ϓϩμΫτʢϞϊʣΛ௨ͯ͠ಘΒΕΔશମతͳମݧ γεςϜΛར༻ͨ͠Ԡ༻ιϑτΣΞ γεςϜɾΞʔΩςΫνϟ ϚΠΫϩαʔϏε γεςϜΛߏ͢Δίϯϙʔωϯτ Microservices Architecture ʢγεςϜͷʣ ΞʔΩςΫνϟɾελΠϧ γεςϜج൫ σʔλج൫ ΞϓϦϢʔβʔʹର͢Δ Wantedly ͷ γεςϜͷΠϯλʔϑΣΠε (UI) Ͱ͋Δ ΞϓϦΛಈ͔ͨ͢Ίͷ Wantedly ͷ γεςϜͷΠϯλʔϑΣΠε(API)
©2021 Wantedly, Inc. ·ͱΊ ৭ʑ͠·͕ͨ͠ɺݸผͷ༰Λ֮͑Α͏ͱ͢Δඞཁͳ͍Ͱ͢ ʑͷۀͷதͰҙຯΛཧղ͢Δख͕͔Γͱͯ͠׆༻͍͖ͯ͠·͠ΐ͏