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
670
ざっとわかる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
160
Git on WebApp with Perl
hakobe
1
3.8k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
Designing Experiences People Love
moore
140
23k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Six Lessons from altMBA
skipperchong
27
3.6k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
For a Future-Friendly Web
brad_frost
176
9.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Visualization
eitanlees
146
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
980
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)ͷ߹ ❖ҰਓલͷΤϯδχΞʹͳΕΔ৫ʹ
ͯͳͰҰਓલͷΤϯδχΞʹͳΔ ❖ ҰਓલͷΤϯδχΞʹͳΕͨͷ? • ͯͳͷֶͼଓ͚ΔจԽʹҭͯΒΕͨ • ͔͠͠ແݶʹ࣍ͷεςοϓ͕ͬͯΔ ❖ ͜Ε͔Β •
͓͠Ζ͍͜ͱΓଓ͚ΒΕΔΑ͏ʹٕज़ΛֶͿ • νʔϑͱͯ͠ΤϯδχΞ͕ͦΕͧΕͷҰਓલΛ ࢦͤΔ৫Λεέʔϧͤ͞Δ