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

我的工作經驗 (到目前為止)

我的工作經驗 (到目前為止)

應吳昇老師之邀,回中正資工「電腦軟體設計」課程分享。

Ping-Yen Tsai

May 22, 2015
Tweet

More Decks by Ping-Yen Tsai

Other Decks in Technology

Transcript

  1. 我的⼯工作經驗
    蔡秉諺 Ping-Yen Tsai
    pingyen Vexed ⽶米蟲
    (到⽬目前為⽌止)

    View Slide

  2. 中正資⼯工系 2001.9 - 2005.7
    中正資⼯工所 2005.9 - 2007.7 指導教授 吳昇
    中華電信 2007.10 - 2013.9
    Yahoo 2013.9 - 2015.4
    Puffin 2015.6

    View Slide

  3. Xuite 隨意窩

    View Slide

  4. Xuite Yo 隨意遊

    View Slide

  5. Xuite UI

    View Slide

  6. TinyMCE

    View Slide

  7. Hami+

    View Slide

  8. TW / HK

    View Slide

  9. Local Search

    View Slide

  10. Local DD

    View Slide

  11. View Slide

  12. Puffin

    View Slide

  13. 「⼯工作中遇到的問題。︒。」

    View Slide

  14. 程式需要維護
    程式正有⼈人在⽤用
    超過⼀一個⼈人⼀一起寫程式
    程式需求不明確
    不確定寫出來的程式是不是使⽤用者要的
    跟不懂程式的⼈人合作

    View Slide

  15. 「怎麼解決。︒。」

    View Slide

  16. 版本控管
    Code Review
    Test
    Agile
    CI / CD
    Issue Tracking
    Collaboration
    Instrumentation
    Experiment

    View Slide

  17. 版本控管

    View Slide

  18. Code Review

    View Slide

  19. Test
    Unit Test
    Integration Test
    Functional Test
    TAD
    TDD
    BDD

    View Slide

  20. Unit Test
    add(3, 6) == 9 ?

    View Slide

  21. Integration Test
    minus(add(3, 6), 2) == 7 ?

    View Slide

  22. Functional Test

    View Slide

  23. TAD / TDD
    Test-After Development
    Test-Driven Development
    需求明確嗎?

    View Slide

  24. BDD
    Behavior-Driven Development

    View Slide

  25. View Slide

  26. add(3, 6)

    View Slide

  27. add(3, 6, 1)
    add(3, 6, 1, 2)
    add(3, 6, 1, … )

    View Slide

  28. View Slide

  29. View Slide

  30. View Slide

  31. 測試即⽂文件

    View Slide

  32. View Slide

  33. Agile
    MVP
    Scrum
    Kanban

    View Slide

  34. MVP
    Minimum Viable Product

    View Slide

  35. View Slide

  36. View Slide

  37. View Slide

  38. View Slide

  39. View Slide

  40. Kanban
    カンバン
    看板
    from TOYOTA

    View Slide

  41. View Slide

  42. View Slide

  43. View Slide

  44. CI / CD
    Continuous Integration
    Continuous Delivery

    View Slide

  45. View Slide

  46. View Slide

  47. Issue Tracking

    View Slide

  48. View Slide

  49. Collaboration

    View Slide

  50. View Slide

  51. View Slide

  52. Instrumentation

    View Slide

  53. View Slide

  54. Experiment

    View Slide

  55. View Slide

  56. View Slide

  57. 「連連看。︒。」

    View Slide

  58. 程式需要維護
    - 版本控管
    - Code Review
    - Test
    - Issue Tracking
    - Collaboration

    View Slide

  59. 程式正有⼈人在⽤用
    - Code Review
    - Test
    - Instrumentation
    - Experiment

    View Slide

  60. 超過⼀一個⼈人⼀一起寫程式
    - 版本控管
    - Code Review
    - Test
    - Agile
    - CI / CD
    - Issue Tracking
    - Collaboration

    View Slide

  61. 程式需求不明確
    - Agile
    - Test

    View Slide

  62. 不確定寫出來的程式是不是使⽤用者要的
    - Agile
    - Instrumentation
    - Experiment

    View Slide

  63. 跟不懂程式的⼈人合作
    - Agile
    - Test

    View Slide

  64. 「現在就⽤用。︒。」

    View Slide

  65. 版本控管 + Code Review + Issue
    Tracking + Collaboration
    - GitHub
    - Phabricator
    - Bugzilla
    - Trac

    View Slide

  66. Test
    - Selenuim
    - BDD

    View Slide

  67. Agile
    - Scrum
    - Kanban

    View Slide

  68. CI / CD
    - Jenkins
    - Travis

    View Slide

  69. Collaboration
    - Google Docs
    - Hackpad
    - TWiki

    View Slide

  70. Instrumentation
    Google Analytics
    Flurry

    View Slide

  71. Experiment
    - Google Analytics
    - 關鍵字 A / B Test

    View Slide

  72. Linode $10 / M
    DigitalOcean $5 / M
    Windows Azure
    Heroku
    Amazon
    CloudFlare

    View Slide

  73. 「學⽣生專案。︒。」

    View Slide

  74. View Slide

  75. View Slide

  76. 「其它。︒。」

    View Slide

  77. 選擇資⼯工是不錯的決定
    程式背後是⼈人 程式是⽤用來解決⼈人的問題
    要與⽣生活結合
    要好玩
    不要怕
    80 / 20 法則
    Side Project

    View Slide

  78. View Slide

  79. View Slide

  80. View Slide

  81. View Slide

  82. View Slide

  83. View Slide

  84. 「Open Source。︒。」

    View Slide

  85. 為什麼願意 Open Source ?

    View Slide

  86. 不要重覆造輪⼦子

    View Slide

  87. 「⾯面試。︒。」

    View Slide

  88. Hacker
    Doer
    Maker

    View Slide

  89. GitHub
    你的個⼈人履歷

    View Slide

  90. ⽤用⼯工具 別讓⼯工具⽤用你

    View Slide

  91. 要求甚解

    View Slide

  92. 「就業現況。︒。」

    View Slide

  93. 矽⾕谷缺⼯工

    View Slide

  94. 免費午餐
    飲料
    MBP
    iPhone
    Why?

    View Slide

  95. 1 ⼯工程師 3 ⼈人撐

    View Slide

  96. 「U CCU。︒。」

    View Slide

  97. 不要 60 分

    View Slide

  98. 好好做 圈⼦子很⼩小
    Credit 會留下

    View Slide

  99. ⾞車騎慢⼀一點
    過好每⼀一天

    View Slide

  100. 「謝謝。︒。」

    View Slide