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
技術顧問という働き方
Search
Shinichi Maeshima
July 14, 2018
Programming
13
6.3k
技術顧問という働き方
Rails Developers Meetup 2018 Day 3 Extreme で発表したスライドです
Shinichi Maeshima
July 14, 2018
Tweet
Share
More Decks by Shinichi Maeshima
See All by Shinichi Maeshima
Sidekiq vs Solid Queue
willnet
14
12k
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
6
1.5k
Exceptional Rails
willnet
6
7.6k
Breaking the Flaky Test Cycle
willnet
2
2.2k
mrskで広がるインフラの選択肢
willnet
1
1.1k
アプリケーションを長期にわたって無理なく運用するためのたったひとつの方法
willnet
2
2.2k
HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
willnet
14
14k
Rails6.1で新しく入る機能について
willnet
12
16k
Concerns about Concerns
willnet
11
35k
Other Decks in Programming
See All in Programming
新世界の理解
koriym
0
130
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
7
2k
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
41
16k
iOS開発スターターキットの作り方
akidon0000
0
240
Claude Code と OpenAI o3 で メタデータ情報を作る
laket
0
110
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
Flutter로 Gemini와 MCP를 활용한 Agentic App 만들기 - 박제창 2025 I/O Extended Seoul
itsmedreamwalker
0
120
物語を動かす行動"量" #エンジニアニメ
konifar
12
3k
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
180
Reactの歴史を振り返る
tutinoko
1
170
ワープロって実は計算機で
pepepper
2
1.1k
実践!App Intents対応
yuukiw00w
1
210
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Documentation Writing (for coders)
carmenintech
73
5k
Practical Orchestrator
shlominoach
190
11k
The World Runs on Bad Software
bkeepers
PRO
70
11k
RailsConf 2023
tenderlove
30
1.2k
Producing Creativity
orderedlist
PRO
347
40k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Transcript
ٕज़ސͱ͍͏ಇ ͖ํ @willnet
ࣗݾհ • લౡਅҰ aka @willnet or @netwillnet • ginza.rb ͔Βདྷ·ͨ͠
• https://github.com/willnet • https://twitter.com/netwillnet • https://blog.willnet.in
ϑϦʔϥϯεRails ٕज़ސΛͭͭ͠ɺ ۭ͍ͨ࣌ؒͰ savanna.ioͳͲΛ ։ൃ͍ͯ͠·͢
ࠓͷςʔϚ 2΄Ͳٕज़ސΛͨ͜͠ͱͰؾ͍ͮͨ͜ͱͱ ՝ʹ͍ͭͯ͠·͢
ٕज़తͳ·ͨ ࣍ճͷRailsDMͰ
ͱ͜ΖͰɺٕज़ސ ͬͯͦͦͳΜ ͳΜͰ͠ΐ͏Ͷ
ٕज़ސͷ3ଐੑ ͓͓·͔ʹ3ͭʹྨͰ͖ͦ͏ • ৫ͮ͘Γଐੑ • ϓϩμΫτ্࣭ଐੑ • ༗໊ଐੑ
৫ͮ͘Γଐੑ • ৫ͱنଇΛͲ͏ͬͯ࡞͍͔ͬͯ͘ʁ • ͩΕΛͲ͏ͬͯ࠾༻͢Δ͔ʁ • ΤϯδχΞΛͲ͏ͬͯධՁ͢Δ͔ʁ ͳͲʹ͍ͭͯɺ͜Ε·Ͱͷܦݧ͔ΒΞυόΠε͢ ΔɻCTOܦݧऀͳͲʹଟ͍
ϓϩμΫτ্࣭ଐੑ • ઃܭٕज़બఆͲ͏͢Δ͔ • ίʔυͷ࣭ΛͲ͏ͬͯ͋͛Δͷ͔ • ࣾڭҭΛͲ͏͢Δ͔ ٕज़ྗΛධՁ͞Ε͍ͯΔਓʹଟ͍
༗໊ଐੑ • ◦͞Μ͕ٕज़ސͰ͋Δɺͱ͍͏ࣄ࣮͚ͩͰࣾ ֎ʹΞϐʔϧͰ͖Δ • ◦͞ΜͱͤΔͱ͍͏རްੜ
͜ΕΒ3ͭͷ͏ͪ1ͭ͘͠ ෳͷଐੑΛ࣋ͭͷ͕ٕज़ސ (ͷͣ) • ৫ͮ͘Γଐੑ • ϓϩμΫτ্࣭ଐੑ • ༗໊ଐੑ
@willnet ͷ߹ ϓϩμΫτ্࣭ଐੑ͕ϝΠϯ
ͲΜͳͱ͜ΖͰͬͯΔͷ • ݱࡏ4͓ࣾख͍͍ͯ͠·͢ • ࣾһΤϯδχΞ1໊ͷͱ͜Ζ͔Β2,30ਓ͘Β͍ ͷͱ͜Ζ·Ͱ • ෛ࠴ΛݮΒ͍ͨ͠ͱ͔ෛ࠴ΛͨΊͨ͘ͳ͍ձࣾ ͕ଟ͍ •
͍͍ͩͨͷձࣾͰि1͘Β͍ग़ࣾ͢ΔΑ͏ʹ͠ ͍ͯ·͢
ఆ͞ΕΔ࣭ • Q. ίϯςΩετεΠονͭΒ͘ͳ͍Ͱ͔͢ʁ • A. ͭΒ͍Ͱ͢ • Q. Ͱͳͥ4ࣾͬͯΔΜͰ͔͢ʁ
• A. Ϗδωε্ͷཧ༝Ͱ͢ɻ͋ͱҰԠϝϦοτ ͋ΔΜͰ͢Α
ෳࣾΛ͓ख͍͢Δ͜ͱͰ ͷྑ͞ • ޭମݧΛԣల։Ͱ͖Δ • ෯͍ͷ͍͠՝ʹ৮ΕΔ͜ͱ͕Ͱ͖Δ
ग़ࣾͯ͠ͳʹͬͯΔͷ • ઃܭͷ૬ஊʹͷΔ • ίʔυϨϏϡʔ͢Δ • ίʔυॻ͘ • ϖΞϓϩ͢Δ •
ࣾษڧձओ࠵͢Δ • ొஃϒϩάدߘ͢Δ
ͭ·Γ࣌ؒͰޮ Ռ͕͋Γͦ͏ͳ͜ ͱͳΒͳΜͰΔ
ϝΠϯʮRailsͱ γεςϜ։ൃͷݟ Λڞ༗͢Δʯ
Ͳ͏͢ΔͱݟΛ ޮΑ͘ڞ༗Ͱ͖ Δ͔ʁΛߟ͑ͯ·͢
͍Ζ͍Ζࢼͯ͠Έͨ • ࣾಡॻձ • ϨϏϡʔ • طଘίʔυͷϦϑΝΫλϦϯά • ϖΞϓϩ
ࣾಡॻձ • ྠಡܗࣜ • Ұਓ͕͋ΔఔԻಡ • ΩϦͷ͍͍ͱ͜ΖͰࢭΊͯ͠߹͍ • ͕ऴΘͬͨΒ࣍ͷਓ͕Իಡ͢Δ
ྠಡͷϝϦοτʗσϝϦοτ • ༧श͕͍Βͳ͍ • (ि1։࠵ͳͷͰ)ຊʹΑͬͯલճಡΜͩ༰ ΛΕ͍ͯΔ
ݟΛ͑Δͱ͍͏؍Ͱ Ͳ͏͔ • ଟ͘ͷਓʹॻ੶Λ௨ͯ͡ݟͷγΣΞ͕Ͱ͖Δ • ࢀՃऀͷϨϕϧײ͕·ͪ·ͪͳͷͰɺࡐʹ ΑͬͯޮՌ͕ബ͍ਓ͕͍Δ • ࡐબͿͷେม •
ྠಡܗࣜͳͷ੍ʹͳΔͷ͚ͩͲ༧शલ ఏʹͮ͠Β͍
ϨϏϡʔ • ;ͭ͏ʹPRΛΈͯϨϏϡʔ • ͢Ͱʹmasterʹ͋ΔίʔυΛΈͯϦϑΝΫλ ϦϯάͷํΛࣔ͢ɺΈ͍ͨͳͷ͋Δ
ϨϏϡʔͷϝϦοτ • खܰʹݟΛ͑ΒΕΔ
ϨϏϡʔͷσϝϦοτ • 1ճͰͳ͔ͳ͔ΘΒͳ͍ • 3ճಉ͡ࢦఠΛͯ͠಄ʹೖͬͯ͜ͳ͍ɺΈ ͍ͨͳͷ͕͋Δ • ! γνϡΤʔγϣϯ͕มΘΔͱμϝͳͷ͔ ʁ
ϨϏϡʔͷσϝϦοτ • ίʔυͷࠩʹରͯ͠ίϝϯτΛ͢Δ߹্ɺ ઃܭʹ͍ͭͯίϝϯτͮ͠Β͍ͷ͕ • tipsΛ͑ΔɺΈ͍ͨͳ͜ͱ͕ଟ͍ • ʮલఏ͔Βߟ͑ͨ͠΄͏͕ྑ͍ͷͰʯ ͱ͍͏PR͕͋ΔͱͭΒ͍
ϦϑΝΫλϦϯά ·͍ͣίʔυΛಡΈ͘͢͢աఔΛڞ༗͢Δ͜ ͱͰɺ·͍ͣίʔυͷ࠶ੜ࢈Λ͙
ϦϑΝΫλϦϯάͷྑ͠ѱ͠ • (બͨ͠ࡐ͕ྑ͘ͳ͔ͬͨՄೳੑ͋Δͷ ͚ͩͲ)ޮՌ͕͍·͍ͪͩͬͨͱײ͍ͯ͡Δ • ϦϑΝΫλϦϯάͷ༰Λݟͤͯɺ࣍ճద༻ ͢ΔλΠϛϯά͕Θ͔Βͳ͍ • ϨϏϡʔͷͱ͖ͱಉ͡
ϨϏϡʔϦϑΝΫλϦϯά ΛͬͯΈͯ • ! ͑ͨݟΛ뱌͢Δ༨༟͕ແ͍ͷͰʁ • λεΫͷظݶʹΘΕͯ༨༟͕ͳ͘ɺࣗͷ ࣝΛ૿͢͜ͱʹ࿑ྗΛׂ͚ͳ͍ࣄ͕ଟ͍ • ۀ͕ͯ͘͠ษڧ͢Δ͕࣌ؒऔΕͳ͍݁Ռɺ
ۀ͕͍͠·· • ͪΖΜۀΛͪΌΜͱճ͢ͷେࣄ
ຊདྷ։ൃϑϩʔ ΛؚΊͨۀͷ͋ Γํ͔Βߟ͑͢ ඞཁ͕͋Δͷ͚ͩ Ͳ…
ϖΞϓϩ • ΤϯδχΞ͕୲͍ͯ͠ΔλεΫΛϖΞϓϩͰ ਐΊ͍ͯΔ • (ϨϏϡʔͳͲͱൺͯ)ݟΘͬͯΔײ͕͡ ͋Δ • ͍·໘͍ͯ͠ΔʹΞυόΠε͢Δͱ ڹ͘ͷͰ
• ҰʹͻͱΓ͔͠ݟΛ͑ΒΕͳ͍ͷܽ ͚ͩͲɺݱঢ়͜ΕҎ্ͷํ๏͕ͳ͍
͜͜·Ͱͷ·ͱΊ • ݟΛ͑Δͱ͍͏ҙຯͰϖΞϓϩ͕Ұ൪ख Ԡ͕͑͋ͬͨ • ۀϑϩʔ͕มΘΔͱҰ൪ޮՌ͕ߴ͍ͷ͚ͩ Ͳɺͦ͜Λม͍͑ͯ͘ͷ͍͠ʼʻ
ٕज़ސͱ͍͏৬ ۀʹ͍ͭͯͷॴײ
ٕज़ސۀͷϝϦοτ • ݸਓͰͨͩίʔυΛॻ͘ΑΓόϦϡʔΛग़ͤ ͍ͯΔײ͕͋͡Δ • !
ٕज़ސۀͷσϝϦοτ • ίʔυΛॻ͕࣌ؒ͘ݮΔ • ίϯςΩετεΠον͕͍ͨΜ • ݶΒΕͨ࣌ؒͰόϦϡʔग़͞ͳ͍ͱ͍͚ͳ͍ϓ Ϩογϟʔ
ٕज़ސͷधཁͱڙڅ • ӅΕͨधཁͨ͘͞Μ͋Δ(Α͏ʹײ͡Δ) • ݟແ͠ͰϨʔϧΛ౿Έ֎͍ͯ͠ΔϓϩδΣΫ τଟ͍ • தͷਓࢹͰͦΕ͕ී௨ • ॳظϕϯνϟʔʹҰਓސ͕͍Δͱɺޙʹ
େ͖͕ࠩ͘ग़Δͣ
ٕज़ސͷधཁͱ ڙڅ͕ͬͱ૿͑Δ ͱΈΜͳͨͷ͘͠ ։ൃͰ͖Δͣ
धཁͱڙڅͷ՝ • ٕज़ސۀͷ༰ͷ໊ͷ͞ • ٕज़ސΛඞཁͱ͍ͯ͠Δձࣾ΄Ͳɺٕज़ސ ͱͷͭͳ͕Γ͕ͳ͍
࣌ؒ༨ͬͨΒFAQ
Q. Ͳ͏ͨ͠Βٕज़ސʹͳΕ ·͔͢ʁ A. ʮ͜Ε͔Βٕज़ސۀΖ͏ͱࢥͬͯ·͢ʔʯ ͱपΓʹએݴ͓ͯ͘͠ͱհͯ͠Β͑Δ1 1 ͋͘·Ͱ@willnetͷ߹Ͱ͢
Q. Ͳ͏ͨ͠Βٕज़ސʹͳΕ ·͔͢ʁ • ͜ͷΓํͩͱʮΓ߹͍ͷ * Γ߹͍͕ࣗ Λސʹ͍͍ͯΔͱײ͍ͯ͡Δ߹͍ʯʹ ґଘ͢Δ •
ίʔυॻ͍ͯൃද͍͖ͯ͠·͠ΐ͏
(࠶ܝ)ٕज़ސͷध ཁͱڙڅ͕ͬͱ ૿͑ΔͱΈΜͳͨͷ ͘͠։ൃͰ͖Δ ͣ
ڵຯ͋Δਓ૬ஊ ͍ͩ͘͞