在程式設計師的日常工作中,關於技術重要性的爭論從未停歇。有的人覺得技術不重要,認為技術只是工具和手段;而另一些人則堅信技術的重要性,認為它是推動專案成功和個人職業發展的關鍵。在這樣的爭論中,筆者嘗試著去探討出現這兩種論調的原因,並提出自己的觀點。
認為技術至關重要的人通常是剛工作幾年的研發人員。工作前幾年,環境對我們的要求就是做好程式設計交付和效能最佳化類技術工作,而我們正是透過不斷學習各種編碼技巧、程式碼最佳化和研發效能工具,提升個人技術能力,透過求職面試和內部晉升的。所以形成了只要不斷提升技術,就能升職加薪的認知。
相反,認為技術不重要的人通常是工作年限較長的資深研發人員。隨著工作年限的增加,環境對我們的要求不再只是“寫程式碼”、“做技術”,我們也需要根據業務做好技術規劃和專案落地,因此這個階段我們會花大量時間去深入瞭解業務,並做好專案管理。正是由於這種經驗的積累,我們漸漸形成了一種觀念:技術只是達成目標的工具和手段,不再是重要的因素。
筆者認為,對於大多數技術人員來說,技術在任何階段都是重要的,關鍵在於合理分配精力。一方面,技術是我們生存的基礎,只有不斷精進技術,才能保持競爭力,因為技術的不斷提升是我們求生存的必要條件。另一方面,隨著工作經驗的積累,我們需要更多地關注業務理解和專案管理等非技術類工作,這樣才能實現個人的職業發展,因為在職場中,除了技術能力外,對業務的理解和專案管理等能力也是促進個人職業發展的關鍵因素。