停下來思考
軟體工程師成長程序中,學習編程語言、演算法、設計模式、系統平臺、軟體庫、工具等等,加上行業技術的快速發展,可謂是學無止境,面對無窮無盡的技術更新,很多軟體工程師會陷入一個思維 “不能停下腳步,停下來就等于落后,只有跑在技術前沿才能活下去”,
真的是這樣么?我思考了很久,其實不盡然,跟上技術更新,跟上潮流,很重要,但同時還需要在重要領域和技術點上進行沉淀,而更為重要的是,偶爾需要停下來思考一下,我們在做什么,為什么而做?找到我們產品的意義和價值,
因為存在問題,從而誕生了軟體(產品)
我們開發的每一個軟體、做的每一個產品,其本質都是為了解決某一個或是某一類問題,換個角度來看,因為存在問題,才誕生了我們的軟體和產品,不清楚為了解決什么問題,相當于失去了前進的方向,那么我們做軟體和產品,就是無的放矢,只有弄清楚了問題的本質,才能賦予軟體意義和價值,有價值才有存在的意義,否則做出來也只是廢品,
雖為“造物者”,卻造“無用之物”
從某種角度來看,軟體開發是一種創造行為,而且具有很快的反饋特性,一段代碼通過編譯、運行能讓工程師快速獲得滿足感,所以在軟體開發程序中,這種創造性、快速反饋特性,會讓很多軟體工程師,不自覺的陷入一種假象,有一種可以掌控一切的感覺,會讓人沉迷于這種“造物者”般興奮中,從而無法自拔,
軟體工程師常常在技術的海洋里越陷越深,無法自拔,脫離了現實,在這種狀態下,所做的產品,只是為了滿足自己的技識訓想,雖是造物者,但卻造出了無用之物,
沉浸于技術中,可以讓人興奮、激動,激發出工程師的創造力,這很重要,但是不能忽視現實,在現實需求(意義和價值)的基礎上,構建出我們的想象,才能創造出真正的產品,
軟體開發三階段
- 入門階段,細節
技術底子薄,經驗不足,更多的精力是放在細節上,往往會為了實作某個函式,某一段代碼,而投入大量的時間和精力;
- 進階階段,系統
技術提升,經驗積累,對于細節的實作已經不需要花費太多精力,更多的是考慮軟體的復用、擴展、跨平臺,視角上升到了系統層面;
- 大師階段,意識
大量的軟體積累,設計思想,已經可以很好的把握大型軟體的框架設計、功能實作,意識的提升,變成了進階的核心方向,也是質的變化,這是一個從術到法的變化,從我到他的變化,從個體到環境的變化,
不再滿足于技術給自身帶來快樂,更多的考慮給他人帶來快樂,為他人設計,為他人考慮,
產品意識,用戶體驗
產品意識,實際上就是利他意識,“他”就是用戶,就是遇到了問題,陷于某種困難和痛苦之中的人群,而產品就是為了解決這些問題,幫助用戶度過困難,脫離痛苦的一種事物,
好的產品可以助人解脫,壞的產品反而給人帶來苦難,
只要將意識提升到 “我不入地獄,誰入地獄” 的高度,把困難留給自己,把簡單易用送給用戶,才能將用戶體驗提升到極致,
期望
我們很多的工程師都處于第二個階段,沉浸于軟體的海洋中,意識無法得到提升和進化,希望眾多和我一樣熱愛軟體開發的程式員們,在開發軟體和產品的同時,能夠具備一些產品意識,讓軟體和產品更加有意義和價值,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/538367.html
標籤:其他
