推 yangs0618: 推個 希望有機會聽到進一步分享how10/28 07:58
→ yangs0618: On提出數據說服主管/管理層 開發是越來越耗時間10/28 07:59
→ panbanana: 要怎麼跟上頭說開發越來越久跟code quality有關10/28 08:18
幾個很簡單的學術名詞就能說明,我相信大家也知道
耦合性 如果我改A模組,B模組就需要跟著改 (這還是B模組沒有牽連其他模組的情況下)
經驗法則告訴我們 改的模組越多,消耗的時間也越多
所以時間成本增加
正交性 如果一個錯誤設計的函數其副作用會影響到非預期的變數或狀態(非正交)
非正交的設計會導致bug甚至影響業務的正確性
生活化的例子:「如果你今天開熱水器,結果旁邊的維波爐也開了」
不會抓狂嗎?
所以時間成本增加(你要再請工程師花時間解bug甚至賠償客戶)
粒度 你是希望有一千個功能相似又微妙差異的工具,每次要選擇都要重新翻箱倒櫃
還是你是希望有十個零件可以組出一千種功能?
不一定有對錯,但從新人教育程度跟熟悉的速度,
認識十個零件肯定是比一千個工具之間的細微差異還簡單
粒度低可以降低時間成本
這些都是理論,我相信對沒有技術背景的人來說也不難懂
那數據呢?統計呢?
從ticket、commit的內容我們可以發現,一定是有某些模組、某些類別、某些函數經常
被更改,而這些程式碼才是最有價值的地方,因此程式碼的重要性、頻率是可以從執行
紀錄、commit等資訊來加以量化的
如果某個模組特別容易出bug,很有可能是其模組本身或是其使用的模組有問題
這時你才有機會說服管理階層建立測試及其重要性
管理階層重視的不是工程師寫程式舒不舒服,而是用戶有沒有受影響?能不能減少公司
的執行成本?
測試可以盡量避免工程師改壞功能,而只有保證不改壞程式碼,工程師才有可能說服
管理階層允許大幅改寫原始的程式碼
而如何證明code quality跟test可以降低執行成本?這需要有證明的材料,如果某個
模組的code quality很高,而該模組相關的開發與維護速度都比其他模組來得有效率,
那也許可以透過比較間接證明此觀點 (但有些政治因素比較重的辦公室,我不推薦你
去比較)
如果現在沒有"你認為"品質好的程式碼,你就只能不斷透過能力證明而且去創造
你要說服管理階層,只能從管理階層重視的價值著手
最後做個總結:
遇到code quality差的公司建議直接跳槽
--
https://i.imgur.com/1VlaBnp.png--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.109.122 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1698484595.A.43B.htmlaa086661樓我反而 建議 遇到錢少的 在跳過 即可 10/28 17:23
abccbaandy2樓講一大堆結論還不是不爽不要做XDD 10/28 18:13
→ happy86493樓你可以直接推文最後一行 10/28 18:20
lchcoding4樓推-簽名檔 10/28 18:50
jpg745685樓推 總結 10/28 19:27
TSMCfabXX6樓總結簡單明瞭 10/28 19:45
andy00andy7樓講得好 10/28 19:57
yangs06188樓感謝分享 覺得這些是光靠自己下班精進很難有機會提升 10/28 20:43
→ yangs06189樓到的能力 10/28 20:43
viper970910樓推最後一行 10/28 20:54
purplvampire11樓知識文 10/28 21:25
shieldsky12樓推這篇量化方式,看來有測試真的是很重要的一環 10/28 21:27
Nitricacid13樓推總結 10/28 22:04
vi00024614樓其實 $$跟code quality沒正相關 選錢多的即可 10/28 22:07
→ vi00024615樓$$多 大便也能變香 10/28 22:07
→ flash540816樓2023都要結束了 還有沒test的公司喔 工程師心臟很大耶 10/29 05:51
→ flash540817樓 10/29 05:51
s06yji318樓沒有test的公司100年之後還是會有。 10/29 08:27
mathrew19樓沒有test的公司,比你想像中多得非常多 10/29 10:07
rtoday20樓推 10/29 10:15
→ abccbaandy21樓想到面試問測試,一堆答自己測,甚至啥工程師要能保證 10/29 13:42
→ abccbaandy22樓正確性這種幹話的,沒QA就乖乖承擔風險好嗎... 10/29 13:43
→ Mrhonest23樓沒時間寫測試至少發PR主管review一下還比較保險,至於 10/29 13:56
→ Mrhonest24樓那種想推code就能推的 老實說多到爆,光一堆接案公司根 10/29 13:56
→ Mrhonest25樓本沒在管這塊的,更不用說傳產 10/29 13:56
s86013426樓下次把最後一行移到第一行可讀性會更高 10/29 16:55
kaitokid227樓2023都要結束了,一條龍工程師比你想的還多... 10/29 17:03
→ kaitokid228樓從談需求、架設備開VM或開雲端,設計資料庫寫程式 10/29 17:05
→ kaitokid229樓到測試、佈署,然後客服,一條龍工程師! 10/29 17:05
a8261114130樓推總結 10/29 19:44