$30 off During Our Annual Pro Sale. View Details »

はてなで一人前のエンジニアになる方法

hakobe (Yohei Fushii)
December 06, 2016
6.4k

 はてなで一人前のエンジニアになる方法

hakobe (Yohei Fushii)

December 06, 2016
Tweet

Transcript

  1. ͸ͯͳͰ
    ҰਓલͷΤϯδχΞ

    ʹͳΔํ๏
    id:hakobe932

    View Slide

  2. ࣗݾ঺հ
    ෬Ҫ ༸ฏ id:hakobe932
    @hakobe
    νʔϑΤϯδχΞ(৽ถ)

    ͸ͯͳϒϩά ΤϯδχΞ

    View Slide

  3. http://developer.hatenastaff.com/entry/2016/09/01/163542

    View Slide

  4. @YAPC::Asia 2014
    http://yapcasia.org/2014/talk/show/d557ddbe-fde4-11e3-b7e8-e4a96aeab6a4

    View Slide

  5. http://hakobe932.hatenablog.com/entry/2016/04/15/142756

    View Slide

  6. ৽ଔ̓೥໨

    View Slide

  7. ͸ͯͳϒϩά͸ͯͳϒοΫϚʔΫ
    .BDLFSFM͸ͯͳμΠΞϦʔ

    ͸ͯͳΩʔϫʔυ#,6."͸ͯͳελʔ
    ਓྗݕࡧ͸ͯͳ͸ͯͳϑΥτϥΠϑ

    ͏͝ϝϞ͸ͯͳ͸ͯͳίίϓϥοτϑΥʔϜ

    View Slide

  8. ͸ͯͳͰҰਓલͷ
    ΤϯδχΞʹͳΔํ๏

    View Slide

  9. ฉ͑͜Δݬௌ

    View Slide

  10. ҰਓલͷΤϯδχΞͬͯ?
    ˒͜͏ͳΓ͍ͨͱࢥ͏ΤϯδχΞͷ૾
    ❖͓·͑͸ҰਓલͷΤϯδχΞͳͷ͔?

    ͨͿΜৗʹҧ͏…
    ❖Ͱ΋৽ଔͷ͜Ζͷࣗ෼͕ࠓͷࣗ෼ΛݟͨΒ

    ͦ͏ݴͬͯ͋͛ΕΔ͔΋

    View Slide

  11. ͓࿩͢Δ͜ͱ
    ❖͸ͯͳʹ͓͚ΔΤϯδχΞ੍౓
    ❖͋Δ৽ଔΤϯδχΞ(hakobe932)ͷ৔߹
    ❖ҰਓલͷΤϯδχΞʹͳΕΔ૊৫ʹ

    View Slide

  12. ͸ͯͳʹ͓͚Δ
    ΤϯδχΞ੍౓

    View Slide

  13. ❖ 2001೥ژ౎Ͱ૑ۀɻ
    ❖ ࣾһ໿100໊ (ژ౎ɾ౦ژ΄΅ಉ਺)
    • ΤϯδχΞ͸ͦͷ൒෼͘Β͍
    ❖ ΢ΣϒαʔϏεΛͭͬͯ͘·͢
    • ͸ͯͳϒοΫϚʔΫɺ͸ͯͳϒϩάɺetc..
    ❖ 2016೥2݄ Ϛβʔζ্৔
    ͸ͯͳ

    View Slide

  14. ❖ ΞϓϦέʔγϣϯΤϯδχΞ
    • αʔϏενʔϜʹॴଐ͠ΞϓϦέʔγϣϯͷ։ൃΛߦ͏
    ❖ ΢ΣϒΦϖϨʔγϣϯΤϯδχΞ
    • αʔϏεΛࢧ͑ΔγεςϜ΍Πϯϑϥͷߏஙӡ༻
    ΤϯδχΞͷ৬छ

    View Slide

  15. ΤϯδχΞͷ୲౰ྖҬ
    ωοτ
    ϫʔΫ
    αʔό
    ӡ༻
    ϛυϧ
    ΢ΣΞ
    ӡ༻
    όοΫ
    Τϯυ
    ϑϩϯτ
    Τϯυ
    ΞϓϦ
    νʔϜ
    ӡ༻
    αʔϏε
    اը
    ΞϓϦέʔγϣϯ
    ΤϯδχΞ
    ΢Σϒ

    ΦϖϨʔγϣϯ

    ΤϯδχΞ
    ୲౰ྖҬ

    View Slide

  16. • ΤϯδχΞΛࢧԉ͢ΔνʔϜԣஅͷ૊৫
    ❖γχΞΤϯδχΞ
    • ΤϯδχΞҰਓͻͱΓͷϝϯλϦϯά/ڭҭ/ධՁ

    ٕज़ྗ޲্/੒௕ࢧԉ
    ❖νʔϑΤϯδχΞ
    • ํ਑ΛܾΊΔ/શମͷ·ͱΊ໾
    ΤϯδχΞ૊৫: ٕज़άϧʔϓ

    View Slide

  17. ✓ઐ໳ੑΛߴΊͯ׆༂
    ✓ٕज़άϧʔϓͰ׆༂
    • → γχΞ → νʔϑ
    ✓νʔϜӡ༻΍اըྗΛߴΊͯ׆༂
    • → σΟϨΫλ
    ͸ͯͳΤϯδχΞͷΩϟϦΞ

    View Slide

  18. ͋Δ৽ଔΤϯδχΞ
    hakobe932 ͷ৔߹

    View Slide

  19. • 2008೥ ॳ୅͸ͯͳΠϯλʔϯࢀՃ → ֶੜΞϧόΠτ
    • ࣾһελοϑ͔ΒͷࢦࣔͰλεΫΛ͜ͳ͢
    ❖ ٕज़
    • Perl / JavaScript / MySQL / git /

    ςετͷ΍Γํ / λεΫͷਐΊํ
    ೖࣾલ: Πϯλʔϯ → ΞϧόΠτ

    View Slide

  20. ❖ Ұϲ݄ΈͬͪΓֶͿ
    • ࣮ࡍͷαʔϏε։ൃΛମݧ͢Δ
    • ಇ͖ํ΍ελοϑͷงғؾΛֶͿ
    • ੒ޭମݧɺ΍͍͚ͬͯΔࣗ৴
    ❖ Πϯλʔϯग़਎ऀ͸ଟ͍
    • 3ׂऑ͘Β͍
    ͸ͯͳαϚʔΠϯλʔϯ (2008 ~)

    View Slide

  21. • Πϯλʔϯܦݧऀ͸ٕज़ݚमͳ͠ (※ࠓ͸͋Γ·͢)
    • αʔϏεʹ഑ଐ → ͸ͯͳίί
    ❖ ٕज़
    • αʔόߏ੒ͷཧղ / σϓϩΠ /

    ϩάͷݟํ / ίʔυϨϏϡʔͷ࢓ํ/

    αʔϏεاը΁ͷؔΘΓํ
    1೥໨: ৽ଔೖࣾ → αʔϏεʹ഑ଐ

    View Slide

  22. ❖ΠϯλʔϯͷWebΞϓϦ։ൃΧϦΩϡϥϜ
    ❖ΤϯδχΞ͕ߨٛܗࣜͰ঺հ
    • WebγεςϜͷجૅ (ΞϓϦฤ/Πϯϑϥฤ)
    • ͸ͯͳಛ༗ͷγεςϜߏ੒ʹ͍ͭͯ
    • ΞϓϦέʔγϣϯઃܭ֓࿦
    • ো֐ରԠԋश
    ࠷ۙͷ৽ਓݚम

    View Slide

  23. • → ৽ࣄۀ։ൃ → ͸ͯͳϒοΫϚʔΫ → ϓϥοτϑΥʔϜ
    • ࣾ಺ษڧձͷࢀՃ΍։࠵/Πϕϯτొஃ
    ❖ ٕज़
    • ΞϓϦέʔγϣϯͷઃܭ / iPhone,Android ։ൃ / 

    ো֐ରԠ / ύϑΥʔϚϯεվળ / 

    ϓϥοτϑΥʔϜͷ஌ࣝ / Ϣʔβߦಈ෼ੳ
    2~3೥໨: νʔϜΛ౉Γา͍ͯमߦ

    View Slide

  24. νʔϜҟಈ͕͠΍͍͢จԽ
    ❖ νʔϜʹΑͬͯ৮ΕΒΕΔٕज़͸ҧ͏
    • ৽αʔϏενʔϜ
    ‣ ৽نΞϓϦέʔγϣϯͷઃܭٕज़
    • طଘαʔϏενʔϜ
    ‣ େྔΞΫηεΛ͞͹͘ύϑΥʔϚϯεɾνϡʔχϯά
    • ΞϓϦ͕ओྗͷνʔϜ
    ‣ iPhone/Android ։ൃͷٕज़

    View Slide

  25. ޓ͍ʹֶͿจԽ
    ❖ Slack (౰࣌͸IRC)
    • ؾܰʹٕज़ͷڞ༗
    • ٕज़ڞ༗bot
    ❖ ͸ͯͳάϧʔϓ
    • ·ͱ·ͬͨ࿩͸ͪ͜ΒͰ
    • ͱʹ͔͘ࡶʹΞ΢τϓοτͰ͖Δ

    View Slide

  26. ࣾ಺ษڧձ
    ❖ ༗ࢤʹΑΔྠಡձ͕ܧଓͯ͠։࠵
    • ”LinuxΧʔωϧ2.6ղಡࣨ “ ྠಡձ
    • ”࣮ફDDD” ྠಡձ
    • “Algorithms on strings” ษڧձ
    ✓ ॻ੶ߪೖิॿ΍ଧ্ͪ͛Λαϙʔτ

    View Slide

  27. http://developer.hatenastaff.com/entry/tech-group-snapshot-2016

    View Slide

  28. • → ͸ͯͳϒϩά → Mackerel
    • اۀ޲͚ͷϒϩάOEMͷ࢓૊Έͷ։ൃ
    • mackerel-agent΍Mackerelͷ՝ۚͷ࢓૊ΈͳͲΛ։ൃ
    ❖ ٕज़
    • Scala΍Go ৽ݴޠͷಋೖ /

    DDDͳͲͷઃܭɾϞσϦϯά / εΫϥϜ։ൃ / BtoB։ൃ
    4~6೥໨:৽ٕज़΍ઃܭ஌ݟΛ׆͔ͯ͠։ൃ

    View Slide

  29. Πϯλʔϯҕһ௕
    ❖ ٯͷཱ৔ͰΠϯλʔϯΛड͚ೖΕΛऔΓ·ͱΊ
    • ΧϦΩϡϥϜࡦఆ
    • Scala ߨٛͷ৽ઃ
    • ืू/બߟ
    • ͦͷଞσΟϨΫγϣϯ

    View Slide

  30. γχΞΤϯδχΞ
    ❖ ଞͷΤϯδχΞΛࢧԉ͢Δཱ৔ʹ
    ❖ ͳΜͰγχΞʹ? → ͦΕ·Ͱͷ׆ಈͷࣗવͳԆ௕ͩͬͨ
    • Πϯλʔϯҕһ௕
    • ษڧձ։࠵
    • GitHub EnterpriseͳͲͷڞ༗Ϧιʔεͷϝϯς
    ❖ ͋͘·Ͱ΋αʔϏενʔϜͰͷΤϯδχΞϦϯά͕ϝΠϯ

    View Slide

  31. ݱࡏ:৽ถνʔϑΤϯδχΞ&͸ͯͳϒϩά։ൃ
    ✓ νʔϑΤϯδχΞͱͯ͠
    • ٕज़άϧʔϓͷӡ༻΍ٕज़తͳ൑அ
    • γχΞΤϯδχΞΛ·ͱΊͯ

    ࣾ಺ษڧձ΍αϒ૊৫ͷӡ༻΍ϝϯλϦϯά
    ✓ ̍ਓͷΤϯδχΞͱͯ͠
    • اۀϒϩά޲͚ͷػೳ։ൃ
    • ৽ٕज़΋ษڧ: ΞϧΰϦζϜ ػցֶश ిࢠ޻ֶ

    View Slide

  32. ҰਓલͷΤϯδχΞʹ
    ͳΕΔ૊৫ʹ

    View Slide

  33. ҰਓલͷΤϯδχΞʹͳΕΔ૊৫
    ❖ֶͼଓ͚ΒΕΔ
    ❖جૅΛେࣄʹ͢Δ
    ❖ٕज़ྗΛ੒ՌͷݪಈྗʹͰ͖Δ
    ❖ϞνϕʔγϣϯΛେࣄʹ͢Δ

    View Slide

  34. ֶͼଓ͚ΒΕΔ૊৫
    ✓ ҰਓલͷΤϯδχΞ: ৽͍ٕ͠ज़ΛֶΜͰ੒௕͠ଓ͚Δ
    ❖ ֶͼ͕ਪ঑͞ΕΔ؀ڥ
    • ษڧձ/Πϕϯτ΁ͷࢀՃ։࠵Λิॿ
    ❖ ֶͼΛେࣄʹ͢Δϝϯόʔ
    • ޓ͍ʹֶͼܹࢗ͠߹͏
    • ޲ֶ৺Λॏࢹ

    View Slide

  35. جૅΛେࣄʹ͢Δ૊৫
    ✓ ण໋ͷ௕͍جૅٕज़Λେࣄʹ͢Δ
    ❖ 10೥ޙ΋࢖͑Δ஌ࣝΛֶͿ
    • ϑϨʔϜϫʔΫ΍ϥΠϒϥϦ͚ͩͰͳ͘ɺͦͷࢥ૝
    • ݴޠ΍ιϑτ΢ΣΞ͚ͩͰͳ͘ɺͦͷཧ࿦

    View Slide

  36. ٕज़ྗΛ੒ՌͷݪಈྗʹͰ͖Δ૊৫
    ✓ ੒ޭମݧ΍ࣗ৴͕ΤϯδχΞΛ੒௕ͤ͞Δ
    • ͏·͍ͬͯ͘Δײ͸େࣄ
    ❖ ٕज़͸ಓ۩ → ٕज़Λ׆͔ͯ͠੒ՌΛ࢒ͤΔ৔Λ࡞Δ
    • Ϗδωεͱͷڠௐੑ
    • ྫ: Mackerel, اۀ޲͚ϒϩά

    View Slide

  37. ϞνϕʔγϣϯΛେࣄʹ͢Δ૊৫
    ✓ ΤϯδχΞͷϞνϕʔγϣϯ͸༗ݶ
    • ݩؾʹ࢓ࣄ͢Δͷ͸େࣄ
    ❖ ݸਓ͕Ͳ͏͍͏ϞνϕʔγϣϯΛ͍࣋ͬͯΔ͔Λ஌Δ
    • γχΞΤϯδχΞʹΑΔϝϯλϦϯά
    ❖ Ϟνϕʔγϣϯʹ߹Θͤͯۀ຿ʹऔΓ૊ΊΔ؀ڥ
    • ࠷΋ύϑΥʔϚϯε͕ग़Δ͸ͣ

    View Slide

  38. ·ͱΊ

    View Slide

  39. ͓࿩ͨ͜͠ͱ
    ❖͸ͯͳʹ͓͚ΔΤϯδχΞ੍౓
    ❖͋Δ৽ଔΤϯδχΞ(hakobe932)ͷ৔߹
    ❖ҰਓલͷΤϯδχΞʹͳΕΔ૊৫ʹ

    View Slide

  40. ͸ͯͳͰҰਓલͷΤϯδχΞʹͳΔ
    ❖ ҰਓલͷΤϯδχΞʹͳΕͨͷ?
    • ͸ͯͳͷֶͼଓ͚ΔจԽʹҭͯΒΕͨ
    • ͔͠͠ແݶʹ࣍ͷεςοϓ͕଴ͬͯΔ
    ❖ ͜Ε͔Β
    • ͓΋͠Ζ͍͜ͱ΍Γଓ͚ΒΕΔΑ͏ʹٕज़ΛֶͿ
    • νʔϑͱͯ͠ΤϯδχΞ͕ͦΕͧΕͷҰਓલΛ

    ໨ࢦͤΔ૊৫Λεέʔϧͤ͞Δ

    View Slide