35歲程序員有話說,那些年,我走過的彎路

背景

疫情尾聲,結束在家辦公的日子,開展新的一年的工作計劃,我接到朋友的微信電話,找我聊天。

他們部門進行調整,雖然最後他留了下來,但還是很焦慮。人無遠慮必有近憂,他這次被深深的影響到了,想提高一下自己,防止類似的事情。如何提高呢?

程序員首要考慮的就是技術能力,但現在真不知道學什麼了:幹了三四年的開發,手頭的工作馬馬虎虎都沒有什麼問題了。就算有問題,也是業務邏輯上問題,系統太複雜,吃不透;或者系統裡一些已經過時的/生僻的技術,反正覺得沒必要花時間花精力去研究,能應付就行了,是這樣的,反正下家公司很小的可能會用到這種東西的的。

那就是新技術問題了。新技術是非常雜的,不知道學什麼,實際上框架類庫沒有什麼技術含量,一兩週裡,你就能上手,之後呢?研究更深?事實上又會遇到舊技術一樣的問題,誰知道與它沒有用得上接下來的工作!和沉悶,可能是因為沒有挑戰吧,反正在路上,可以咋做?

35歲程序員有話說,那些年,我走過的彎路

學習瓶頸

一直聊到這裡,我都非常容易理解。其實我們稍微幹上一些年頭,就是這個樣子,看起來像是“學習工作熱情不斷下降”“懶得進行學習”,但本質上呢,兩個主要原因:

1.自身技能提升,能應付日常工作,沒有入職時那種壓力..

2.學習的效益降低,所以開始 投資/收入比的思考。

剛入行的時候,技術一小點的進步,都可以帶來非常大的成就感,至少能少挨點罵,積累到一定的時候,就可以跳個槽漲點工資啥的。但三五年過後,

我已經會了:

  1. 數據庫:MySQL , Redis, MongoDB ( Progress ,Sqlite 也會用,但不多)
  2. 運維技能:Docker , Nginx, Apache (主要在Linux 系統,常用Debian 或者 Ubuntu)
  3. 後端web框架: Flask , Tornado, Django, Bottle (主要 flask, 看過flask 的源代碼,其他的也能用)
  4. 前端技能: html, css, js, jquery 等 (Pure.css,Bootstrap ,RequireJs ,Jcrop, CodeMirror, Layerui 等都能用起來, 能自己寫輪播圖)
  5. 爬蟲技能:lxml,Scrapy, BeautifulSoup, PyQuery 都能用起來(爬過不少數據(百度 ,淘寶, 天貓,京東, 谷歌,bing, pinterest, instagram 等),也會做分佈式爬蟲系統。)
  6. 其他:Elasticsearch, Zabbix , chrome 瀏覽器插件等

學會優雅轉身

接下來和大家分享我這麼多年的轉型發展之路。姑妄聽之:

1、轉型技術管理

2008年下半年至2010年初,我慢慢轉向技術管理職務,管理研發部門。我走的路線是“技而優則管”。

簡單地說,就是你要是技術牛X,輕鬆搞定各種問題,開始帶人,下管項目團隊,那麼接下來,公司將力推你到技術管理人員轉型。

這種路線,也是大多數技術企業管理者走過的路線。如果你想轉型技術管理,可以考慮這種。

“技優”的要點是:有餘力

這是什麼意思,也就是你能高效的完成你的任務同時還能有多餘的時間。這樣領導就會給你更多更難的任務。當你還能高效搞定,還看起來有餘力,領導就會再給你更重要的任務……

如此良性循環,你就越來越具有重要,就會自己帶人、帶項目的機會。

如果你不能高效完成你的工作,你就不能走那條路。 但還有其他路線。

2、加入創業者行列

2015年9月,我是某種機會離開了公司工作了七年,重新考慮自己的方向。到了年底接受了好友邀請,和他一起創業。

我之所以願意嘗試,是因為:

創業和上班的可能性大不相同.. 如果成功,你的影響力和財務回報將上升到一個更高的水平。

一起做事的人靠譜。

製造的產品,清晰的盈利模式。

當然,不幸的事總會不斷髮生——我們失敗了。

我個人不後悔這樣的失敗經歷,因為當你站在更高的角度對公司負責時,你對工作的理解,會有很大的改變!! 這一變化將對後續的工作和生活產生重要的積極影響。

3、 重回開發崗位

我在20010年開始做技術管理,到2016年底創業失敗,7年時間。 但在眾多更好的管理機會面前,我毅然選擇回到技術崗位繼續做開發..

為什麼?

這是因為我們的工作,除了錢,以及自我實現的價值。

自我實現包括幾方面:

成長

成就

意願

成長是指你做一件事我們之前和之後,有你想要的、積極的變化。

假如你一個做了十年開發,技術水平、解決問題的能力,還是和剛入行時差不多,那就叫沒成長!

成就意味著你已經取得的成績,並獲得了相關的干係人的認可。

你負責進行一個管理模塊,用了最新的技術最牛逼的設計,也能 run ,實現了用戶信息需求。你個人覺得很有成就,可是你用的技術研究框架過於複雜,維護企業成本過高,運維團隊、二次開發項目團隊都不認可,那就不是真正的成就。

意願很好理解,就是你願意在什麼事情上投入你的時間和精力、你做什麼事情時會感到開心

很多開發者都會遇到要不要轉管理、要不要一直做技術這種問題,怎麼可以選擇答案,關鍵就在於你的個人意願和你做某件事的感受。

有人可能會問,如果你繼續發展,年齡大了,如何與年輕人鬥?

我畫了一幅畫,貼出來給大家看看:

35歲程序員有話說,那些年,我走過的彎路

由這張圖可以通過看到,開發者做軟件分兩次創造,第一次創造在頭腦中完成,屬於思考層面;第二次創造,是編碼技術實現,是腦力勞動體力化。

如果你想超越年齡,就要多在第一次創造所需要的能力上下功夫,必要的:

  • 構建自己的業務特定知識體系
  • 提煉想象,抽象,歸納,分析,整合,設計等..

這樣你就能進行思考得更多、做得少、做得非常關鍵、做得好,就可以實現超越年齡的限制。否則企業看到你整天和年輕人一樣只是噼裡啪啦敲代碼,肯定沒價值,很快被清退。

所謂的高級工程師就是逐漸沉澱在技術上,逐漸系統掌握核心技術..

而想要成為python高級工程師,就要肩負技術和組織兩個層面的重任,構建屬於自己完整的技術體系就很重要。

當然從結果來論,能力突出python高階工程師薪資也同樣會水漲船高,一個python高階工程師能夠拿到40萬的年薪都再正常不過了。

35歲程序員有話說,那些年,我走過的彎路

程序員職業路線圖

對於python高階工程師職責的介紹,網上已經鋪天蓋地,就不再贅述。今天我主要給大家分享一下成為一名python高階工程師應該掌握的技術能力。


35歲程序員有話說,那些年,我走過的彎路


1、Python基礎與Linux數據庫

掌握Python基礎語法,具備基礎的編程能力;掌握Linux基本操作命令,掌握MySQL進階內容。知識點包括Python基本語法規則及變量、邏輯控制、內置數據結構、文件操作、高級函數、模塊、Python常用標準庫模塊、函數、異常處理、MySQL使用、協程等。

2、WEB全棧

掌握WEB前端技術內容,掌握WEB後端框架,熟練使用Flask、Tornado、Django。涉及的知識點有HTML、CSS、JavaScript、jQuery、BootStrap、Web開發基礎、VUE、Flask Views、Flask模板、數據庫操作、Flask配置等。

3、數據分析+人工智能

掌握爬蟲、數據採集、數據機構與算法,掌握人工智能技術。涉及的知識點有數據抓取、數據提取、數據存儲、爬蟲併發、動態網頁抓取、scrapy框架、分佈式爬蟲、爬蟲攻防、數據結構、算法等。

4、高級進階

掌握自動化運維與區塊鏈開發技術,具備自動化運維項目以及區塊鏈項目經驗。涉及的知識點有項目開發流程、部署、高併發、性能調優、Go語言基礎、區塊鏈入門等。

最後

題外話,我在一線進行互聯網技術企業管理工作十餘年裡,指導過不少同行後輩。幫助他們很多人得到了自己學習和成長。

我意識到有很多社會經驗和知識都是值得分享給大家,也可以同時通過我們的能力和經驗解答大家在IT學習中的很多學生困惑,所以在教學工作繁忙的情況下企業還是需要堅持中國各種數據整理和分享。但苦於知識信息傳播發展途徑有限,很多程序員朋友之間無法及時獲得一個正確的資料能夠得到提高學習不斷提升,故此將並將具有重要的python進階資料主要包括django,flask框架、阿里面試題精編彙總、常見源碼分析等錄播視頻免費分享出來。

35歲程序員有話說,那些年,我走過的彎路

python進階視頻


35歲程序員有話說,那些年,我走過的彎路

Python基礎視頻


需要的朋友,可以點擊關注轉發私信“學習”免費領取!

我希望我可以用我的力量來幫助更多的迷茫,困惑的朋友,助大家在IT道路上學習和發展~


分享到:


相關文章: