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.7k
はてなで一人前のエンジニアになる方法
hakobe (Yohei Fushii)
December 06, 2016
Tweet
Share
More Decks by hakobe (Yohei Fushii)
See All by hakobe (Yohei Fushii)
はてなにおけるプログラミング言語の歴史とこれから
hakobe
0
640
ざっとわかる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.3k
なめらかにGHEに移行する方法
hakobe
19
7.7k
開発フロー@はてなブックマーク
hakobe
0
150
Git on WebApp with Perl
hakobe
1
3.8k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
425
64k
Code Reviewing Like a Champion
maltzj
519
39k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Automating Front-end Workflow
addyosmani
1365
200k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
790
Making the Leap to Tech Lead
cromwellryan
132
8.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Done Done
chrislema
181
16k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
What's in a price? How to price your products and services
michaelherold
243
12k
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)ͷ߹ ❖ҰਓલͷΤϯδχΞʹͳΕΔ৫ʹ
ͯͳͰҰਓલͷΤϯδχΞʹͳΔ ❖ ҰਓલͷΤϯδχΞʹͳΕͨͷ? • ͯͳͷֶͼଓ͚ΔจԽʹҭͯΒΕͨ • ͔͠͠ແݶʹ࣍ͷεςοϓ͕ͬͯΔ ❖ ͜Ε͔Β •
͓͠Ζ͍͜ͱΓଓ͚ΒΕΔΑ͏ʹٕज़ΛֶͿ • νʔϑͱͯ͠ΤϯδχΞ͕ͦΕͧΕͷҰਓલΛ ࢦͤΔ৫Λεέʔϧͤ͞Δ