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
Naoya Ito
August 29, 2015
Technology
87
29k
エンジニアにとっての地方と東京 ─ あるいはエンジニアのキャリア形成に環境が与える影響について
"首都「圏」から島根「県」へエンジニア・ワークシフト2015" での講演資料です
Naoya Ito
August 29, 2015
Tweet
Share
More Decks by Naoya Ito
See All by Naoya Ito
Functional TypeScript
naoya
14
5.8k
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
65
30k
シェルの履歴とイクンリメンタル検索を使う
naoya
8
3.1k
20230227-engineer-type-talk.pdf
naoya
89
71k
関数型プログラミングと型システムのメンタルモデル
naoya
62
94k
TypeScript による GraphQL バックエンド開発
naoya
28
31k
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
naoya
67
24k
「問題から目を背けず取り組む」 一休の開発チームが6年間で学んだこと
naoya
144
58k
一休の現在と、ここまでの道のり
naoya
90
41k
Other Decks in Technology
See All in Technology
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
430
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
220
ビジネスモデリング道場 目的と背景
masuda220
PRO
9
540
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
分解して理解する Aspire
nenonaninu
1
240
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
330
クラウドサービス事業者におけるOSS
tagomoris
2
840
Goで作って学ぶWebSocket
ryuichi1208
2
1.3k
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
750
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
550
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
600
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Designing for humans not robots
tammielis
250
25k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Thoughts on Productivity
jonyablonski
69
4.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
It's Worth the Effort
3n
184
28k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Six Lessons from altMBA
skipperchong
27
3.6k
Transcript
ΤϯδχΞʹͱͬͯͷํͱ౦ژ ͋Δ͍ΤϯδχΞͷΩϟϦΞܗʹڥ͕༩͑ΔӨڹʹ͍ͭͯ टʮݍʯ͔ΒౡࠜʮݝʯΤϯδχΞɾϫʔΫγϑτ /BPZB*UP ,BJ[FO1MBUGPSN *OD
͍ͨ͜͠ͱ • ౡࠜ๚ͱͦͷײ • ʮํͱ౦ژʯߟ • ษڧձʹ͍ͭͯ •
݁ͼ
݄ʹͯ • ౡࠜݝ౦ژࣄॴా͞Μ – ʮౡࠜͷ6λʔϯɾ*λʔϯΠϕϯτΛ։࠵ ͢ΔͷͰ͕͢Կ͔͍ͬͯͩ͘͞ʯ • ࢲ – ʮΉ͔͠ژͰಇ͍ͯͨ͠ํͱ౦ژͱ͍͏ ͓ͳΒͤΔ͔ͳʯ – ͔͠͠ɺౡࠜʹߦͬͨ͜ͱ͕ͳ͍
ͦΜͳΘ͚Ͱౡࠜদߐʹ ߦ͖ͬͯ·ͨ͠
None
None
None
͑ΜΉ͢ͼdΔ
None
None
None
None
None
ΨϦϨΦείʔϓ͞Μ
None
None
͜Ε͕ΦϑΟεŋŋŋͩͱŋŋŋ
None
None
None
αϚʔΥʔζ͔
ςΫϊΞʔΫ͠·Ͷ source: h*p://www.techno-‐arc-‐shimane.jp/guide/ins8tu8on-‐show/
None
ιχοΫϜʔϒ͞Μ
None
None
None
None
None
None
None
None
ϞϯελʔϥϘ͞Μ
None
None
ίϛϡχςΟษڧձ ͜ͷ։ൃ߹॓ɺদߐͰಇ ͘ਓʑͷ׆ಈใࠂͳͲ͕ςʔ ϚͰͨ͠
None
None
h*p://engineer.crowdworks.jp/2014/10/30/development-‐camp-‐2014.html
h*p://blog.fenrir-‐inc.com/jp/2015/01/mihonoseki.html
h*p://shimane.monstar-‐lab.com/hasumin/1432254260
h*p://ir3.hatenablog.com/entry/2015/05/14/211914
ߦ͕3VCZͷΓ্͛։ ൃ߹॓ͷαϙʔτΛܦӦϚω δϝϯτख๏ΛऔΓೖΕϚ ωʔδ͍ͯ͠Δ
ʮຊͰ࠷ॳʹ։ൃ߹॓ͨ͠ ͷԶͨͪ υϠʯ ˠ৴ͯ͡Β͑ͳ͔ͬͨ
ڶഴ͕͏·͍ͱ͔ŋŋŋ
࢈ͷ࠷ߴɺҾͬӽ͖ͯ͠ ͯྑ͔ͬͨͱ͔ŋŋŋ
μδϟϨ·Ͱग़Δ࢝ େ͞Μ
࠙ձʹ͚ͯߴ·Δظ
ౡࠜݝிਿݪ͞Μ ࠙ձձӺલͷ ʰΧϓϦνϣʔβʱͰ͢
͑ͬ
h*p://www.capricciosa.co.jp/
None
ϓϨϛΞϜϞϧπΛඒຯ͘͠ ͍͖ͨͩ·ͨ͠ɻ
None
None
೦ئͷ࢈ྉཧ
None
None
None
None
͓࢈ʹങͬͯؼΓ·ͨ͠
ߟ
• ߦ͕3VCZͰ • Φʔϓϯιʔε • Β͢͠͞ • ࣗવ • ѹతͳαϚʔΥʔζײ
• Ͱ߹॓ • ίϛϡχςΟ • ΧϓϦνϣʔβ
ͻͱͼͱ • ౡࠜʹΏ͔Γͷͳ͍ਓͰߏ͞Ε͍ͯΔ νʔϜଟ͍ – ౦ژͷاۀͷϒϥϯνͩͬͨΓ • ϑοτϫʔΫ͕͍ܰɺ৺
ΫϥυɾϦϞʔτϫʔΫ ͷීٴ͕ޙԡ͠ • ཧΠϯϑϥΛ͍࣋ͬͯͳ͍νʔϜଟ͍ – "84($1ͷීٴ – ۀ༻4BB4ͷ͓͔͛ͰΠϯτϥ͍Βͣ • ϦϞʔτϫʔΫΛී௨ʹ͍ͯͨ͠ ཧతͳ੍͕ গͳ͘ͳͬͨ
ϦϞʔτϫʔΫ • ,BJ[FO1MBUGPSN *ODͰ࣮ࢪ – ํͰϑϧϦϞʔτͷਓ݁ߏ͍Δ • ژɺେࡕɺԬɺ࢛ࠃ • Ҏલͱҧ͏͜ͱŋŋŋಓ۩ͷίϞσΟςΟԽ
– 1$Χϝϥ .BDʹඪ४ࡌ – ҆ՁͳϏσΦձٞ4BB4 • (PPHMF)BOHPVU ;PPNVT BQQFBSJO – Α͘Ͱ͖ͨใڞ༗πʔϧ • 4MBDL • 2JJUB5FBNɺFTB ཧతʹΕ͍ͯͯ৬ ༰͕ͦΕʹࠨӈ͞ΕͮΒ ͘ͳͬͨɻ
ͨͩ͠ࢀߟ • ϦϞʔτϫʔΫ৴ऀͰͳ͍ – ϦϞʔτϫʔΫʹ͋͠͞Δ • ྫϓϩδΣΫτॳظʹإΛಥ͖߹Θͤͨํ͕ Γ͍͢ • ࡶஊػձ͕ ૬ରతʹ
͍͠ŋŋŋ์͓ͬͯ͘ͱૄ ͳਓؒؔ – σϝϦοτΛΧόʔ͢ΔΤωϧΪʔඞཁ 参考: h*ps://speakerdeck.com/naoya/rimotowakufalsehua
ϑοτϫʔΫ͕͍ܰ • খ͞ͳνʔϜ • ࣄࣗͨͪͰσβΠϯ • ͦͷΛָ͠ΜͰࣄɾੜ׆ – ࣗવͰ߹॓ – ϩʔυόΠΫͰ௨ۈ – ܠɾՖՐɾാɾαϚʔΥʔζ
Ϟνϕʔγϣϯ ɾࣗੑ ɾϚελϦʔ ख़ୡ ɾత
৽͍͠ಇ͖ํ • ࣄϓϩηεΛࣗͰσβΠϯ – ϦϞʔτʔϫʔΫ – ࣌ؒ – ΦϑΟεڥ
– ಓ۩ FHιϑτΣΞπʔϧྨ – ࣄͷਐΊํ FH։ൃϓϩηε – ࠔ͏͕ࣗΒͷҙࢤͰ બ͢Δ͜ͱʹΑΔతϞ νϕʔγϣϯΛ༠ൃ
৽͍͠ಇ͖ํ࣮ݱͰ͖Δ͔ • ౦ژͰŋŋŋ – ʮελʔτΞοϓPSେاۀʯͷೋ߲ରཱͱͯ͠ଊ͑ΒΕ͕ͪ – ͕Ή͠ΌΒPS҆ఆͨ͠ੜ׆ • τϨʔυΦϑ
– ͕͠ΒΈͳ͘৽͍͠ಇ͖ํΛࢦɺҰํɺελʔτϑΣʔζ Ϗ δωεͱͯ͠ະख़ Ͱ͋ΔͨΊϫʔΫϩʔυۃΊͯߴ͍ – ख़ͨ͠اۀͰϫʔΫϩʔυ҆ఆ͍ͯ͠Δ͕ɺ৫తͳϑο τϫʔΫ͕ॏ͘ैདྷత৬ۀײ ܦࡁతҡ࣋ίετ͕ߴ͘ɺ ͳ͔ͳ͔ͦͷதؒΛࢦͰ ͖ͳ͍
দߐʹ͋ͬͨͷ • ϫʔΫϥΠϑόϥϯε ͋Γ͖ͨΓͳݴ༿Ͱ͕͢ŋŋŋ – ϑοτϫʔΫͷܰ͞৽͍͠ಇ͖ํ – దͳϫʔΫϩʔυ – ʮࣄͷ౦ژʯ͔ʮੜ׆ͷాࣷʯͱޠΒΕ͕ ͕ͪͩɺͦ͏͍͏Θ͚Ͱͳ͔ͬͨ •
ࣄʹੜ׆ʹΛ͍࣋ͬͯΔਓʑ ྆ऀͷཱ͕྆ൺֱత༰қͰ ͋Δ͜ͱ͕৽ͩͬͨɻ
ػձͷࠩ • اۀͱͯ͠ – اۀͱͯ͠ͷϏδωεػձ ϏδωεͷόϦΤʔγϣϯ ౦ژ ʹΞυόϯςʔδ • Ӧۀػձਓޱ͔ΒདྷΔଟ༷ੑ
• ݸਓͱͯ͠ – ΤϯδχΞͱͯ͠৬༰ͷࠩ͋·Γͳͦ͞͏ͩͬͨ • Ή͠Ζಇ͖ํΛબՄೳͳɺ͕ߴ͍ਓ – ܦࡁతͳࠩେ͖͘ͳ͍ • ಉڅ༩ਫ४ͷاۀ • ੜ׆ҡ࣋ίετ͕͍
ษڧձ • ʮษڧձͳͲଞͷٕज़ऀͱ͢Δػձ͕ ౦ژʹൺֱͯ͠ ѹతʹগͳ͍ʯ – ݱͷօ͞Μɺ΄΅શһ͕ޱʹ ͜ͷʹ͍ͭͯগ͠۷Γ Լ͛·͢
ιϑτΣΞΤϯδχΞ ͱͯ͠ͷΩϟϦΞͱڥ
*5ษڧձ • ʮษڧձʯͱݴ͍ͭͭษڧͷʹͳ͍ͬͯΔ͔ – ࣗͷ࣮ײ࣮ͳͬͯͳ͍ • εΩϧΞοϓܨ͕Βͳ͍ • ݁ہͻͱΓͰखΛಈ͔֮ͯ͑͠Δ
• ؒతʹ࣮Γͷଟ͍ – ใ͕ཧ͞ΕΔ͖͔͚ͬ • ࣝऀ͕εϥΠυʹݟΛ·ͱΊ֦ͯࢄ͢Δػձʹ – ٕज़τϨϯυͷݟ͑ΔԽ – ωοτϫʔΩϯά – ࣗݾεΩϧͷ૬ରԽ
ࣗݾεΩϧͷ૬ରԽ • εΩϧϨϕϧͷ૬ରԽػձ – ࣝྔ͕ө͞Εͨपғͷձ – ίϛϡχςΟͰͷৗࣝײ – τοϓϓϨΠϠʔͱͷࠩ •
͋Δ͍ࣗͷํ͕͏·͘Ͱ͖͍ͯΔ͜ͱ͔Δ • যΓ – ʮ৽͍͜͠ͱΛ֮͑ΒΕͯྑ͔ͬͨʯΑΓʮੈͷதͱͷࠩΛ ײͯ͡যͬͨʯ – ํमਖ਼ͷ͖͔͚ͬʹ ʮܹʯͱ͔Α͘ݴΘΕΔ ͷͷਖ਼ମ ݁Ռɺ༕ᓔʹͳΔਓ
ҰํͰ͜Μͳ͜ͱ͋Γ·ͤΜ͔ • 8FC͔ΒೖͬͯདྷΔใͰܹɺযΔ • ͋Ε͜ΕͬͯΈΔ – ʮ"1*ͩʯ – ʮΫϥυͩʯ
– ʮ)5.-ͩʯ – ʮϏοάσʔλͩʯ • ͍Ζ͍Ζ֮͑ͯΔׂʹযΓ ྼײ ղফ͞Εͳ ͍ŋŋŋ
ʮຊʹ͜ΕΛଓ͚͍ͯͯɺ͋ ͷਓΈ͍ͨʹͳΕΔͷ͔ ʯ
ࢲͦΜͳ࣌ظ͕͋Γ·ͨ͠ • ͋ͪͪ͜ͷษڧձʹग़Δ • ༕ᓔʹͳΔ • ͍Ζ͍ΖͳτϨϯυʹखΛग़͢ • Ͱʹͭ͘ͷʮ)PX5Pʯ͔Γŋŋŋ •
γεςϜͷࠜຊΛଊ͑ͨࣄ͕Ͱ͖ͳ͍ – ো͕ىͬͯ͜ରྍ๏ – ෛՙࢄܦݧଇͷΈͰ – େ͖ͳσʔλΛ͏·͘ѻ͑ͳ͍
;ͱ͖͔͚ͨͬ͠ Α͘͜ͷΛ͢ ΔΜͰ͚͢ͲͶ
ͦ͏͍͑ɺͱ͋Δਓͷຊ୨ • ͕ࣗಡΜͰΔΑ͏ͳϋπʔຊ͕ͳ͔ͬ ͨ • ฒΜͰ͍ͨͷݹయ͔Γ
None
None
None
None
ޛͬͨ͜ͱ • ࣗʹͱͬͯඞཁͳʮٕज़ʯ୭ʹͯ͠ ͍ͳ͔ͬͨ – ෛՙࢄʹΧʔωϧͷ͕ࣝඞཁͩͬͨͳΜͯ ࠓࢥ͑ ͨΓલͷ͜ͱ •
ʮٕज़ʯΛʹ͚ͭΔͷʹ࣌ʹܹ͕अຐ – ඞͣ͠पғͷਓ͕ʹ͍ͯ͠ͳ͍͜ͱʹɺજΓ ଓ͚Δඞཁ – ݽಠ
ژ
ྑ͔ͬͨ • ଟ͗͢Δ౦ژͷܹ͔ΒΕ͔ͨͬͨ • ੩ᨰͳڥͰɺજΔ • ܭࢉػՊֶɺֶɺՌͯཧֶ·Ͱί πίπࣗशͨ͠
ಘΒΕͨͷ • ϓϩάϥϚͱͯ͠ͷԼʹͳΔࣝ – ΞϧΰϦζϜͱσʔλߏ – 04ɾΧʔωϧ – ωοτϫʔΫαʔϏεΞʔΩςΫνϟ –
ࣗવݴޠॲཧ – ػցֶश – ઢܗɾ֬౷ܭ – ŋŋŋ • ਂ͘જٕͬͯज़Λशಘ͢Δश׳ • ྼײͷ؇ ࣌ʹ͚͍ͭͨࣝ· Խ͍ͯ͠ͳ͍
͕ͩɺԿ͔͕͓͔͍͠ŋŋŋ
• ࢲʮ݁ߏͳنͷσʔλͩͶɻ4V⒏Y "SSBZͰࡧҾ࡞Ζ͏͔ɻιʔτ*4๏ Ͱŋŋŋʯ • "ʮŋŋŋ࣮݁ߏ͔͔࣌ؒͬͯ·͢ʯ • #ʮϒϥβͷTRMJUFʹೖΕͯMJLFͰҾ ͍ͨΒരͩͬͨοεʯ ͋Εͬ
ंͷσΟʔϥʔͷ/͞Μ • /ʮҏ౻͞ΜαϯγϟΠϯͬͯ·͔͢ʯ • ҏ౻ʮ͡ΊͨΑʔɻҭ͖ͬͯͨʯ • /ʮۙࠒΫϦϊοϖ͕ʯ • ҏ౻ʮ͡ΊͯΈͨʯ •
/ʮࠓո౪ϩϫΠϠϧͰ͢Αʯ ͓ŋŋŋ
͜ΕͰྑ͍ͱࢥ͍͕ͬͯͨŋŋŋ • ʮྲྀߦ͔ΒΕͯਂ͘જΔɺͦΕ͚ͩΛଓ͚ͯ ͍Ε͍͍ʯ • ͔͠͠ɺͦΕͦΕͰؒҧ͍ͩͬͨ – ࣄʹ࣌ʹ)PX5Pॏཁ • ಉ͡ࣄΛɺ৽͍͠ιϑτΣΞͰ͋ͬͱ͍͏ؒʹ࣮ͯ͠
͠·͏ಉ྅ – ৽͍͠Ϗδωε͕ຄڵ • 8FCϏδωεͷసظ • ήʔϜɺεϚʔτϑΥϯ
ଢ଼ᆵԽ • ৬ͷಉ྅ʹ͔͠ձͬͯͳ͔ͬͨ • ʮऑ͍ឺͷڧΈʯΛΕ͍ͯͨ
૬ରԽͰ͖͍ͯͳ͔ͬͨ • ࣗΛ૬ରԽ͢ΔػձΛࣦ͍ͬͯͨ – ݹయʹજΔ͜ͱʹ߆Γա͗ͯࢹڱࡥʹ – Ϗδωεײٕज़ࢿͷํੑ͕ɺͲ͔͜Β͔͢͜ ͣ͠Ε͍ͯΔͷʹؾ͍ͮͯͳ͔ͬͨ • ࠶ͼޛͬͨ͜ͱ
– ࣌ʹܹʹຒΕΔ͜ͱඞཁ – ݁ہɺόϥϯε
࣮ࡍʹ͋ͬͨɺྫ͑ • ถͰΕͯࣄ • 64ʹग़ுʹ͍ͬͨಉ྅ɺͳ͔ͥͦͷʹ͍Δ ͱ͖64ࢹʹ – ຊਓ͋·Γͦͷ͜ͱʹؾ͍ͮͯͳ͍ – ཧɺ࣌ࠩ㱺64ίϯςΩετͷใ͕༏ઌͯ͠ೖͬ
ͯདྷΔ ڥɺຊਓ͕ࢥ͏Ҏ্ʹ ӨڹΛ༩͑Δ
3VCZ͕ੜ·Εͨڥ ͓ͦΒ͘ 3VCZ͕দߐͰੜ·ΕͨͷۮવͰͳ͍
͡Ό͋ɺͲͬͪͷ ڥ͕͍͍ͷ
ڥʹ͍ͭͯ • ࣗͷ݁ – ݁ہͷͱ͜Ζɺษڧձਓͱͷަྲྀ͋ͬͯͳͯ͘ ՝͕͋Δ • ౦ژͰଟ͗ͯ͢ࡶԻʹײ͡Δ • ํͰ૬ରԽͷػձΛࣦ͏ɺḵᆵԽ͕ى͜Δ
– ͕͍ࣗ·͍ΔڥͰಘΒΕͳ͍ଆ໘ΛɺͲ͏ଊ ͑ͯຒΊ߹ΘͤΔ͔࣍ୈͰͳ͍͔ ษڧձʹݶΒͳ͍
݁ͼվΊͯɺํͱ౦ژ • τϨʔυΦϑ • ͕ࣗ༏ઌͯ͠બ͍ͨ͠ͷԿ͔ – ࣄ͔ɺੜ׆͔ – ܹ͔ɺ੩ᨰͳڥ͔ • ͲͪΒ͕ྑ͍ѱ͍Ͱͳ͍ – ͦͷબʹΑͬͯܽམ͢ΔͷΛɺਖ਼໘͔Β
ݟͭΊଓ͚Δश׳͕ͦ͜େ
ౡࠜɺদߐ • ָ͔ͬͨ͠ – ඒ͍͠ொฒΈɺࣗવɺ৯ࣄ – 3VCZɺΦʔϓϯιʔε • ݱͷΈͳ͞Μ͕ͱͯͩͬͨ • ͋Γ͕ͱ͏͍͟͝·ͨ͠
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠