隨想錄(35歲後的程式設計師)

2021-09-16 21:48:26 字數 1944 閱讀 1806

很多人都說程式設計師是青春飯的工作,35歲或者40歲之後基本上沒有程式設計師的工作。那我們自己也要思考一下,為什麼大齡程式設計師會比較危險,他們有什麼危機?

1、技術僵化

大部分程式設計師從事的工作基本上都是增、刪、查、改的一般工作,缺少技術積累,很容易被取代。試想一下,如果乙個程式設計師一直從事的是公司的核心軟體開發工作,他是否還有被開除的危險呢?

2、996文化

目前網際網路公司盛行996文化,即9點上班、9點下班、每週工作6天,這樣的工作節奏對於大齡程式設計師來說是無法接受的。

3、較高的待遇要求

和剛入職的程式設計師不同,大齡程式設計師往往對薪水的要求要高一些。少則上萬,多則4,5萬乙個月,當行業不景氣或者公司發展不順利的時候,為了成本上的考慮,大齡程式設計師往往優先成為那個被裁員的物件。

上面說道的這些問題都是真實存在的,那麼難道大齡程式設計師真的一無是處了,不能在業務上面更進一步了。其實也不是,我們還是可以繼續學習、繼續進步,只不過方向和重點可能要做一些改變。

a、注重基礎

新技術很多,各種各樣的程式設計技術也是五花八門,但是計算機基礎的cpu、作業系統、編譯器、網路其實沒有多大的改變。很多人迷戀於大資料、人工智慧、計算機視覺這些新概念,卻很少在基礎上面下功夫,有點得不償失。

b、關心產品和行業

不管什麼樣的技術,最終都是要有人買單的,我們的客戶可能是企業也有可能是普通的消費者。所以,對於做技術的人來說,需要有乙個產品思維,我這個產品有什麼用、優點是什麼、缺點是什麼、未來改進的方向是什麼?

c、理解軟體工程和專案管理

關於軟體工程、專案管理,這方面的書很多。不管是人月神話、瀑布開發、敏捷開發,最好了然於心。現代商業上面,人與人溝通的成本有時候遠遠大於開發的成本,特別是那些眾多人員參與、但是技術難度不是很高的專案,很有可能開發本身占用的時間只是整個專案開發時間的一小部分,溝通、協調佔了大頭,相信有過大公司工作經驗的同學應該對此十分了解。

d、培養自己軟體架構的能力

對於乙個軟體產品來說,軟體架構占有很重要的地位。特別是團隊不斷成長,從小團隊、大團隊、平台拆分慢慢發展開來,軟體架構的工作會越來越重要。軟體架構會考慮到復用性、成長性、除錯性、效能、介面特徵、安全性、部署難度,這些都不是一般工程師可以做的工作。

e、提高對新產品的敏感度

不管什麼公司,都會生產一批產品、研發一批產品、預研一部分產品。現有的產品由於紅海、競爭、萎縮,所以需要在現有基礎之上,增加新的特性、方法、優勢,不斷滿足客戶的需求。所以作為研發人員來說,除了要提高自身的業務素質,提高市場意識、競爭意識、產品意識也是十分重要的。

f、明確自己的定位

一般的公司,老闆都是銷售或者財務出身,所以需要乙個研發經理來幫老闆實現想法,而老闆自己就是那個產品經理。一開始,他需要的可能就是能力比較強的技術員。等有了乙個3,5人的隊伍之後,這個時候就需要乙個技術leader。當然這個leader除了業務方面的工作之外,還要負責一些招聘、培訓類的工作。當老闆發現更多商機的時候,公司可能會進行多個產品的開發,當然與之匹配的就是多個技術leader,這個時候就需要乙個技術總監,負責搭建公共的技術平台,協調各個產品的研發程序,保證產品的及時發布。當然在產品開發的過程中,技術總監會發現**質量不高、流程混亂、返工較高等各種情況,這個時候就需要軟體架構師來梳理整個業務流程。當然,對有一些公司來說,技術總監還會細分成專案總監、工程總監、演算法總監、產品總監等,這個取決於具體的公司。最後,當公司大到一定程度的時候,就需要研發副總或者cto的深度參與了,cto除了研發管理、流程搭建之外,他最重要的工作就是配合市場預研部分產品、搭建人才隊伍、持續改進現有產品滿足市場需求,畢竟產品是公司生存的重要前提。

說了這麼多,對於大齡程式設計師來說,我們要問自己的就是自己應該適合哪個角色,除了編碼,我們還能做些什麼?是高階軟體開發工程師、技術經理、技術總監、cto,還是專案經理、產品經理、質量經理等等?每個人都要對自己有乙個清晰的定位。做深做精是基本的要求,而大規模的生產和銷售才能讓公司不斷發展,個人其實也是一樣的。

隨想錄(程式設計師怎麼用英文查資料)

學英文的好處,大家其實都是知道的。但是怎麼用英文來查資料,很多朋友都沒有好好想過。有些朋友也許會說,我英文不好,詞彙量小,看不懂英文,怎麼辦?其實大可不必擔心,我們查資料,主要是利用搜尋引擎來找到我們想要找的東西就可以了,有很多現成的工具可以用的。1 學會用bing等搜尋引擎查詢資料 2 配置好自己...

隨想錄(公司程式設計師的九層樓)

一層樓 不能及時完成開發任務,任務經常延期,開發的 經常引入新的問題。二層樓 勉強完成開發任務,但是bug多,自測不充分。三層樓 及時完成任務,同時出具自測報告,但是 中還是存在不少bug。四層樓 任務完成的時間點控制得還不錯,但是 編寫質量不高,函式冗長 不易閱讀,難維護。五層樓 提前完成開發任務...

隨想錄(驅動開發程式設計師需要的一些技能)

01 驅動程式員需要較好的c語言功底和彙編功底,因為操作的是controller暫存器或者匯流排,所以編寫 的時候必須想好每一行code帶來的結果是什麼 02 驅動往往是和具體的os繫結在一起的,無論是linux windows vxworks,都需要開發者了解相關的os 驅動框架。本質上說,這些都...