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
hakobe (Yohei Fushii)
December 06, 2016
3
6.8k
はてなで一人前のエンジニアになる方法
hakobe (Yohei Fushii)
December 06, 2016
Tweet
Share
More Decks by hakobe (Yohei Fushii)
See All by hakobe (Yohei Fushii)
はてなにおけるプログラミング言語の歴史とこれから
hakobe
0
690
ざっとわかるPython
hakobe
4
6.8k
契約による設計の紹介
hakobe
6
20k
アクターによる 並行処理アプケーション アーキテクチャ
hakobe
4
3.4k
Scala In Perl Company
hakobe
11
12k
TDDの練習 Coding Kata の実践
hakobe
0
1.4k
なめらかにGHEに移行する方法
hakobe
19
7.8k
開発フロー@はてなブックマーク
hakobe
0
170
Git on WebApp with Perl
hakobe
1
3.8k
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Thoughts on Productivity
jonyablonski
69
4.5k
4 Signs Your Business is Dying
shpigford
183
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
8
700
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Raft: Consensus for Rubyists
vanstee
137
6.8k
A Tale of Four Properties
chriscoyier
158
23k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Making Projects Easy
brettharned
116
6.1k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Statistics for Hackers
jakevdp
798
220k
Transcript
ͯͳͰ ҰਓલͷΤϯδχΞ ʹͳΔํ๏ id:hakobe932
ࣗݾհ ෬Ҫ ༸ฏ id:hakobe932 @hakobe νʔϑΤϯδχΞ(৽ถ) ͯͳϒϩά ΤϯδχΞ
http://developer.hatenastaff.com/entry/2016/09/01/163542
@YAPC::Asia 2014 http://yapcasia.org/2014/talk/show/d557ddbe-fde4-11e3-b7e8-e4a96aeab6a4
http://hakobe932.hatenablog.com/entry/2016/04/15/142756
৽ଔ̓
ͯͳϒϩάͯͳϒοΫϚʔΫ .BDLFSFMͯͳμΠΞϦʔ ͯͳΩʔϫʔυ#,6."ͯͳελʔ ਓྗݕࡧͯͳͯͳϑΥτϥΠϑ ͏͝ϝϞͯͳͯͳίίϓϥοτϑΥʔϜ
ͯͳͰҰਓલͷ ΤϯδχΞʹͳΔํ๏
ฉ͑͜Δݬௌ
ҰਓલͷΤϯδχΞͬͯ? ˒͜͏ͳΓ͍ͨͱࢥ͏ΤϯδχΞͷ૾ ❖͓·͑ҰਓલͷΤϯδχΞͳͷ͔? • ͨͿΜৗʹҧ͏… ❖Ͱ৽ଔͷ͜Ζͷ͕ࣗࠓͷࣗΛݟͨΒ ͦ͏ݴͬͯ͋͛ΕΔ͔
͓͢Δ͜ͱ ❖ͯͳʹ͓͚ΔΤϯδχΞ੍ ❖͋Δ৽ଔΤϯδχΞ(hakobe932)ͷ߹ ❖ҰਓલͷΤϯδχΞʹͳΕΔ৫ʹ
ͯͳʹ͓͚Δ ΤϯδχΞ੍
❖ 2001ژͰۀɻ ❖ ࣾһ100໊ (ژɾ౦ژ΄΅ಉ) • ΤϯδχΞͦͷ͘Β͍ ❖ ΣϒαʔϏεΛͭͬͯ͘·͢ •
ͯͳϒοΫϚʔΫɺͯͳϒϩάɺetc.. ❖ 20162݄ Ϛβʔζ্ ͯͳ
❖ ΞϓϦέʔγϣϯΤϯδχΞ • αʔϏενʔϜʹॴଐ͠ΞϓϦέʔγϣϯͷ։ൃΛߦ͏ ❖ ΣϒΦϖϨʔγϣϯΤϯδχΞ • αʔϏεΛࢧ͑ΔγεςϜΠϯϑϥͷߏஙӡ༻ ΤϯδχΞͷ৬छ
ΤϯδχΞͷ୲ྖҬ ωοτ ϫʔΫ αʔό ӡ༻ ϛυϧ ΣΞ ӡ༻ όοΫ Τϯυ
ϑϩϯτ Τϯυ ΞϓϦ νʔϜ ӡ༻ αʔϏε اը ΞϓϦέʔγϣϯ ΤϯδχΞ Σϒ ΦϖϨʔγϣϯ ΤϯδχΞ ୲ྖҬ
• ΤϯδχΞΛࢧԉ͢ΔνʔϜԣஅͷ৫ ❖γχΞΤϯδχΞ • ΤϯδχΞҰਓͻͱΓͷϝϯλϦϯά/ڭҭ/ධՁ ٕज़ྗ্/ࢧԉ ❖νʔϑΤϯδχΞ • ํΛܾΊΔ/શମͷ·ͱΊ ΤϯδχΞ৫:
ٕज़άϧʔϓ
✓ઐੑΛߴΊͯ׆༂ ✓ٕज़άϧʔϓͰ׆༂ • → γχΞ → νʔϑ ✓νʔϜӡ༻اըྗΛߴΊͯ׆༂ • →
σΟϨΫλ ͯͳΤϯδχΞͷΩϟϦΞ
͋Δ৽ଔΤϯδχΞ hakobe932 ͷ߹
• 2008 ॳͯͳΠϯλʔϯࢀՃ → ֶੜΞϧόΠτ • ࣾһελοϑ͔ΒͷࢦࣔͰλεΫΛ͜ͳ͢ ❖ ٕज़ •
Perl / JavaScript / MySQL / git / ςετͷΓํ / λεΫͷਐΊํ ೖࣾલ: Πϯλʔϯ → ΞϧόΠτ
❖ Ұϲ݄ΈͬͪΓֶͿ • ࣮ࡍͷαʔϏε։ൃΛମݧ͢Δ • ಇ͖ํελοϑͷงғؾΛֶͿ • ޭମݧɺ͍͚ͬͯΔࣗ৴ ❖ Πϯλʔϯग़ऀଟ͍
• 3ׂऑ͘Β͍ ͯͳαϚʔΠϯλʔϯ (2008 ~)
• Πϯλʔϯܦݧऀٕज़ݚमͳ͠ (※ࠓ͋Γ·͢) • αʔϏεʹଐ → ͯͳίί ❖ ٕज़ •
αʔόߏͷཧղ / σϓϩΠ / ϩάͷݟํ / ίʔυϨϏϡʔͷํ/ αʔϏεاըͷؔΘΓํ 1: ৽ଔೖࣾ → αʔϏεʹଐ
❖ΠϯλʔϯͷWebΞϓϦ։ൃΧϦΩϡϥϜ ❖ΤϯδχΞ͕ߨٛܗࣜͰհ • WebγεςϜͷجૅ (ΞϓϦฤ/Πϯϑϥฤ) • ͯͳಛ༗ͷγεςϜߏʹ͍ͭͯ • ΞϓϦέʔγϣϯઃܭ֓ •
োରԠԋश ࠷ۙͷ৽ਓݚम
• → ৽ࣄۀ։ൃ → ͯͳϒοΫϚʔΫ → ϓϥοτϑΥʔϜ • ࣾษڧձͷࢀՃ։࠵/Πϕϯτొஃ ❖
ٕज़ • ΞϓϦέʔγϣϯͷઃܭ / iPhone,Android ։ൃ / োରԠ / ύϑΥʔϚϯεվળ / ϓϥοτϑΥʔϜͷࣝ / Ϣʔβߦಈੳ 2~3: νʔϜΛΓา͍ͯमߦ
νʔϜҟಈ͕͍͢͠จԽ ❖ νʔϜʹΑͬͯ৮ΕΒΕΔٕज़ҧ͏ • ৽αʔϏενʔϜ ‣ ৽نΞϓϦέʔγϣϯͷઃܭٕज़ • طଘαʔϏενʔϜ ‣
େྔΞΫηεΛ͘͞ύϑΥʔϚϯεɾνϡʔχϯά • ΞϓϦ͕ओྗͷνʔϜ ‣ iPhone/Android ։ൃͷٕज़
ޓ͍ʹֶͿจԽ ❖ Slack (࣌IRC) • ؾܰʹٕज़ͷڞ༗ • ٕज़ڞ༗bot ❖ ͯͳάϧʔϓ
• ·ͱ·ͬͨͪ͜ΒͰ • ͱʹ͔͘ࡶʹΞτϓοτͰ͖Δ
ࣾษڧձ ❖ ༗ࢤʹΑΔྠಡձ͕ܧଓͯ͠։࠵ • ”LinuxΧʔωϧ2.6ղಡࣨ “ ྠಡձ • ”࣮ફDDD” ྠಡձ
• “Algorithms on strings” ษڧձ ✓ ॻ੶ߪೖิॿଧ্ͪ͛Λαϙʔτ
http://developer.hatenastaff.com/entry/tech-group-snapshot-2016
• → ͯͳϒϩά → Mackerel • اۀ͚ͷϒϩάOEMͷΈͷ։ൃ • mackerel-agentMackerelͷ՝ۚͷΈͳͲΛ։ൃ ❖
ٕज़ • ScalaGo ৽ݴޠͷಋೖ / DDDͳͲͷઃܭɾϞσϦϯά / εΫϥϜ։ൃ / BtoB։ൃ 4~6:৽ٕज़ઃܭݟΛ׆͔ͯ͠։ൃ
Πϯλʔϯҕһ ❖ ٯͷཱͰΠϯλʔϯΛड͚ೖΕΛऔΓ·ͱΊ • ΧϦΩϡϥϜࡦఆ • Scala ߨٛͷ৽ઃ • ืू/બߟ
• ͦͷଞσΟϨΫγϣϯ
γχΞΤϯδχΞ ❖ ଞͷΤϯδχΞΛࢧԉ͢Δཱʹ ❖ ͳΜͰγχΞʹ? → ͦΕ·Ͱͷ׆ಈͷࣗવͳԆͩͬͨ • Πϯλʔϯҕһ •
ษڧձ։࠵ • GitHub EnterpriseͳͲͷڞ༗Ϧιʔεͷϝϯς ❖ ͋͘·ͰαʔϏενʔϜͰͷΤϯδχΞϦϯά͕ϝΠϯ
ݱࡏ:৽ถνʔϑΤϯδχΞ&ͯͳϒϩά։ൃ ✓ νʔϑΤϯδχΞͱͯ͠ • ٕज़άϧʔϓͷӡ༻ٕज़తͳஅ • γχΞΤϯδχΞΛ·ͱΊͯ ࣾษڧձαϒ৫ͷӡ༻ϝϯλϦϯά ✓ ̍ਓͷΤϯδχΞͱͯ͠
• اۀϒϩά͚ͷػೳ։ൃ • ৽ٕज़ษڧ: ΞϧΰϦζϜ ػցֶश ిࢠֶ
ҰਓલͷΤϯδχΞʹ ͳΕΔ৫ʹ
ҰਓલͷΤϯδχΞʹͳΕΔ৫ ❖ֶͼଓ͚ΒΕΔ ❖جૅΛେࣄʹ͢Δ ❖ٕज़ྗΛՌͷݪಈྗʹͰ͖Δ ❖ϞνϕʔγϣϯΛେࣄʹ͢Δ
ֶͼଓ͚ΒΕΔ৫ ✓ ҰਓલͷΤϯδχΞ: ৽͍ٕ͠ज़ΛֶΜͰ͠ଓ͚Δ ❖ ֶͼ͕ਪ͞ΕΔڥ • ษڧձ/ΠϕϯτͷࢀՃ։࠵Λิॿ ❖ ֶͼΛେࣄʹ͢Δϝϯόʔ
• ޓ͍ʹֶͼܹ͠߹͏ • ֶ৺Λॏࢹ
جૅΛେࣄʹ͢Δ৫ ✓ ण໋ͷ͍جૅٕज़Λେࣄʹ͢Δ ❖ 10ޙ͑ΔࣝΛֶͿ • ϑϨʔϜϫʔΫϥΠϒϥϦ͚ͩͰͳ͘ɺͦͷࢥ • ݴޠιϑτΣΞ͚ͩͰͳ͘ɺͦͷཧ
ٕज़ྗΛՌͷݪಈྗʹͰ͖Δ৫ ✓ ޭମݧࣗ৴͕ΤϯδχΞΛͤ͞Δ • ͏·͍ͬͯ͘Δײେࣄ ❖ ٕज़ಓ۩ → ٕज़Λ׆͔ͯ͠ՌΛͤΔΛ࡞Δ •
Ϗδωεͱͷڠௐੑ • ྫ: Mackerel, اۀ͚ϒϩά
ϞνϕʔγϣϯΛେࣄʹ͢Δ৫ ✓ ΤϯδχΞͷϞνϕʔγϣϯ༗ݶ • ݩؾʹࣄ͢Δͷେࣄ ❖ ݸਓ͕Ͳ͏͍͏ϞνϕʔγϣϯΛ͍࣋ͬͯΔ͔ΛΔ • γχΞΤϯδχΞʹΑΔϝϯλϦϯά ❖
Ϟνϕʔγϣϯʹ߹ΘͤͯۀʹऔΓΊΔڥ • ࠷ύϑΥʔϚϯε͕ग़Δͣ
·ͱΊ
͓ͨ͜͠ͱ ❖ͯͳʹ͓͚ΔΤϯδχΞ੍ ❖͋Δ৽ଔΤϯδχΞ(hakobe932)ͷ߹ ❖ҰਓલͷΤϯδχΞʹͳΕΔ৫ʹ
ͯͳͰҰਓલͷΤϯδχΞʹͳΔ ❖ ҰਓલͷΤϯδχΞʹͳΕͨͷ? • ͯͳͷֶͼଓ͚ΔจԽʹҭͯΒΕͨ • ͔͠͠ແݶʹ࣍ͷεςοϓ͕ͬͯΔ ❖ ͜Ε͔Β •
͓͠Ζ͍͜ͱΓଓ͚ΒΕΔΑ͏ʹٕज़ΛֶͿ • νʔϑͱͯ͠ΤϯδχΞ͕ͦΕͧΕͷҰਓલΛ ࢦͤΔ৫Λεέʔϧͤ͞Δ