科技界流傳著一個奇怪的說法,認為有一天你醒來,突然——砰——你就成了高級開發人員。
你獲得了頭銜。
你將承擔這份責任。
你會被邀請參加一些沒有議程的會議。
實際情況並非如此。
真實情況遠沒有那麼光鮮亮麗。
我原以為優秀的開發人員意味著掌握更多知識。
框架。庫。巧妙的技巧。
如果有問題,那麼解決方案肯定是:
另一種抽象
另一層
我在 Hacker News 上剛剛發現了另一個工具
我很快就交付了程式碼。
我也更快解決了問題。
從這裡開始,損害就開始累積。
你維護六個月前寫的程式碼,然後心想:
“Who let me do this?”
你意識到:
可讀性強的程式碼勝過巧妙的程式碼
文件編制並非可選項。
為事物命名真的是最難的問題,我可不是開玩笑。
你不再問“我們能建造這個嗎?”
然後開始問“我們應該這樣做嗎?”
在某個時刻,情況發生了變化。
你已經看到了:
同一個錯誤,只是變數名不同。
同樣的創業理念,不同的路演材料。
同樣的“緊急重寫”,結果卻並非如此。
所以現在你很平靜——不是因為你什麼都知道,而是因為你知道事情通常會如何失敗。
你不再急於編寫程式碼了。
你:
問一些令人不舒服的問題
範圍
刪除功能
悄無聲息地預防災難
沒有人會為此鼓掌。
沒關係。
身為一名人工智慧和網頁開發人員,我常被問到:
“Aren’t you worried AI will replace you?”
說實話?不。
人工智慧並沒有取代開發人員。
它取代了偽裝。
如果你的價值觀是:
鍵入樣板
複製 Stack Overflow
懂文法但不懂系統
是的……那部分已經沒了。
剩下的——而且比以往任何時候都更有價值——是:
判斷
建築學
理解權衡取捨
解釋某事物存在的原因
人工智慧編寫程式碼。
開發者決定哪些程式碼應該存在。
大多數時候,我的工作不是寫程式碼。
它是:
將模糊的想法轉化為可解決的問題
人機翻譯
防止「小」決定演變成代價高昂的錯誤
我寫程式的時候,通常都很無聊。
這是故意的。
平庸的法典得以存續。
有幾件事我希望有人能告訴我:
資歷不代表速度,而是代表克制。
複雜性是一種劣勢,而不是優勢。
從失敗的系統中你學到的東西會比從成功的演示中學到的東西更多。
未來的你才是你最重要的使用者。
最重要的是:
Feeling confused doesn’t mean you’re bad at this.
It means you’re actually learning.
我並不是透過精通所有技能才成為高級開發人員的。
我透過以下方式成為其中一員:
錯誤
修復它
記住成本
並且不再重蹈覆轍
就是這樣。
這就是秘訣。
原文出處:https://dev.to/art_light/i-didnt-become-a-senior-developer-i-accumulated-damage-7hd