Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
はてなで一人前のエンジニアになる方法
hakobe (Yohei Fushii)
December 06, 2016
4
6.3k
はてなで一人前のエンジニアになる方法
hakobe (Yohei Fushii)
December 06, 2016
Tweet
Share
More Decks by hakobe (Yohei Fushii)
See All by hakobe (Yohei Fushii)
はてなにおけるプログラミング言語の歴史とこれから
hakobe
0
400
ざっとわかるPython
hakobe
4
6.6k
契約による設計の紹介
hakobe
6
19k
アクターによる 並行処理アプケーション アーキテクチャ
hakobe
4
3.1k
Scala In Perl Company
hakobe
11
11k
TDDの練習 Coding Kata の実践
hakobe
0
1.3k
なめらかにGHEに移行する方法
hakobe
19
7.4k
開発フロー@はてなブックマーク
hakobe
0
120
Git on WebApp with Perl
hakobe
1
3.6k
Featured
See All Featured
Designing Experiences People Love
moore
130
22k
Intergalactic Javascript Robots from Outer Space
tanoku
261
26k
Mobile First: as difficult as doing things right
swwweet
213
7.8k
Side Projects
sachag
451
37k
Writing Fast Ruby
sferik
613
58k
Bootstrapping a Software Product
garrettdimon
299
110k
How to name files
jennybc
47
73k
Agile that works and the tools we love
rasmusluckow
320
20k
Principles of Awesome APIs and How to Build Them.
keavy
117
15k
GitHub's CSS Performance
jonrohan
1020
430k
A Modern Web Designer's Workflow
chriscoyier
689
180k
GraphQLとの向き合い方2022年版
quramy
20
9.9k
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)ͷ߹ ❖ҰਓલͷΤϯδχΞʹͳΕΔ৫ʹ
ͯͳͰҰਓલͷΤϯδχΞʹͳΔ ❖ ҰਓલͷΤϯδχΞʹͳΕͨͷ? • ͯͳͷֶͼଓ͚ΔจԽʹҭͯΒΕͨ • ͔͠͠ແݶʹ࣍ͷεςοϓ͕ͬͯΔ ❖ ͜Ε͔Β •
͓͠Ζ͍͜ͱΓଓ͚ΒΕΔΑ͏ʹٕज़ΛֶͿ • νʔϑͱͯ͠ΤϯδχΞ͕ͦΕͧΕͷҰਓલΛ ࢦͤΔ৫Λεέʔϧͤ͞Δ