加班了
“前面左轉胸竞,拐入宛平南路高架橋欺嗤,從盧浦大橋走,……”撤师,加班完之后我叫了輛滴滴剂府,已經是凌晨1點了,平時打車我都會看看高架橋上車窗外的燈火和夜景剃盾,畢竟黃浦江上燈火璀璨彰顯大城市的美麗腺占,可是今天我只想閉上眼睛休息一會。已經連續(xù)兩個周末加班了痒谴,21點30甚至更晚衰伯,就像今天。
為何加班积蔚?因為我是一名程序員意鲸。我在趕一個項目進度,產品所謂的花3天的時間整理出來的業(yè)務尽爆,需要我們在一星期內開發(fā)完成并上線怎顾。第一個周末我們花了一天時間過完了需求,即所謂的產品需求移交漱贱,第二周的周一我們花了一天時間拆分了業(yè)務具體到個人槐雾,然后預估了下開發(fā)周期,詳細到人天幅狮。
最后的我們發(fā)現(xiàn)這是項不可能的任務募强,除非每天不眠不休24小時株灸。因為10幾個產品他們的需求鏈整合起來已經是一個完整的產品需求了,而不是迭代式的擎值。這一套做完至少也需要一個月的時間慌烧。
可是產品是不會理會這些的,因為他們的需求已經給出來了鸠儿,PRD也已經移交了屹蚊,他們的任務已經完成,后面的工作能不能按時完成責任并不在他們這了捆交。如果項目延期上線淑翼,上面的領導追責下來也不會到他們那。這時我就在想我當初為什么沒選擇產品這行呢品追?
三明治
程序員玄括,你是三明治。為什么這么說肉瓦?主要是因為程序員上游有產品經理遭京,下游有測試。產品的需求你可以挑三揀四泞莉,但是你不能拒絕哪雕。測試提的 bug 你可以說,'是不是你們操作有問題鲫趁?'斯嚎,但是你不能說,‘我不修’挨厚,最后還是要去自己操作一遍然后查看日志定位問題堡僻。兩邊你都不好得罪,因為最后妥協(xié)的肯定還是你疫剃。
其實钉疫,如果要認真的說,測試其實也很無奈巢价,因為測試實質上是給程序員收拾爛攤子的牲阁,給程序員開發(fā)出來的產品做體檢的。項目上線前壤躲,測試也是要加班加點的城菊。如果說程序員的加班是因為產品提的需求,那么測試的加班則是由程序員的 Bug 量決定的碉克。善待你的測試吧役电,雖然被人指錯誤是很痛苦的。
所以主要來說說產品經理吧棉胀,在這里我沒有想詆毀產品經理法瑟,畢竟《人人都是產品經理》,也許程序員以后想轉產品經理呢唁奢,畢竟常常聽到被人勸說霎挟,"你要具有產品的思維,不要總是從編程的角度看問題"麻掸,確實程序員總是容易陷在自己的 code 世界里酥夭。
世界上不乏有上帝思維的產品,騰訊的微信之父 - 張小龍脊奋,網易的網易云音樂產品經理團隊等等熬北。每個行業(yè)都有優(yōu)劣之分,但是很多產品經理也有混的嫌疑诚隙,打著 "競品有這些功能讶隐,我們也需要有"的口號,當有邏輯缺陷的時候久又,"讓我看看競品是什么樣的"巫延,甚至之前網上發(fā)生的“能不能實現(xiàn)主題跟著手機殼變換顏色”互毆事件等等。產品是不是也應該具備一點編程的思維地消?
編程之路
程序員炉峰,你當初是如何走上編程之路的?程序員一直都是一個備受人們關注的群體脉执,隨著近年全國互聯(lián)網創(chuàng)業(yè)熱潮的興起疼阔,"互聯(lián)網+"、"云計算"半夷、"人工智能"以及"區(qū)塊鏈"等領域發(fā)展迅速婆廊,市場對程序員的需求更為旺盛。
風口的互聯(lián)網玻熙、大數(shù)據和人工智能否彩,讓IT人才炙手可熱,行業(yè)工資水漲船高嗦随。這幾年培訓機構也是賺的盆滿缽滿列荔,每年培訓機構向社會上傳輸?shù)腎T人員達到了百萬之多。
為何如此之多的人不斷的涌入該行業(yè)枚尼?是因為熱愛嗎贴浙?通過梳理近十年來行業(yè)工資水平變遷,以及不同城市之間的互聯(lián)網技術人才工資水平發(fā)現(xiàn):
IT 領域的人才薪資水平已經連續(xù)3年超過金融行業(yè)署恍,占據榜首崎溃。一線城市的程序員的平均工資是二線城市的工資的近兩倍。涌入行業(yè)的人數(shù)很多盯质,但是技術水平參差不齊袁串,企業(yè)要求的高水平技術人才依舊一將難求概而。其實,對于大多數(shù)人來說囱修,相對于其他行業(yè)赎瑰,編程的生活是枯燥的,即使是對編程非常有興趣的同學和朋友也會如此破镰。很多人說看到自己開發(fā)的產品在線上平穩(wěn)運行是件很有成就感的事餐曼,我只想說,''真羨慕你鲜漩,你還很年輕''源譬。
當你經歷過多年的開發(fā),被看似不斷變更實則平平無奇的業(yè)務拖累孕似,被生活瑣事糾纏踩娘,人近30,父母見老鳞青,婚事未得而頭發(fā)漸希霸饲,房貸未清學費又來,……臂拓,等等這些之后厚脉,是否你還能保持如此單純的想法?
大多數(shù)人胶惰,也許只是熱愛它能提供的高額收入傻工,畢竟養(yǎng)活自己,支撐生活才是最重要的孵滞。究竟是否熱愛中捆,可以問自己個問題:“當編程并不能為你帶來期望的薪資,或有個更有趣的事業(yè)坊饶,你是否還是愿意堅持在這個行業(yè)泄伪?"
很多人說程序員薪資高,其實程序員的薪資是按小時算的匿级,每天按時下班那是件奢侈的事情蟋滴,平均折算下來又有多少。工作之后你會發(fā)現(xiàn)痘绎,年是按月過的津函,發(fā)12次工資,一年就過去了孤页,換兩三家公司尔苦,5/6年就過去了。
如此快節(jié)奏的生活,你的技術是否跟得上允坚?很多人5年的工作經驗甚至比不上3年的實際項目經驗魂那。程序員要懂得給自己充電。
程序員職業(yè)特點
程序員的生活很少有能打理得井井有條的屋讶,皮膚粗糙冰寻,頭發(fā)蓬松,鼻梁上擴著鏡片皿渗,永遠的格子衫,腳上基本都是運動鞋轻腺。
1乐疆、程序員性別比例
一直以來,程序員這一群體多以男性為主贬养,女性程序員占極少數(shù)挤土。這次調查發(fā)現(xiàn)程序員群體中男女比例還是近12:1,這和客棧在2016年調查的結果(92.62%:7.38%)驚人的相似误算。而如此"畸形"的男女比例也是解釋了為什么很多程序員自嘲為"單身狗"仰美。
其中男程序員單身比例達到了40.7%,女程序員單身比例也達到了35.6%儿礼。
2咖杂、程序員的年齡及婚姻狀況
近一半的程序員年齡在25-29歲之間,且35歲以上占一成不到蚊夫。根據搜狐科技網《中國互聯(lián)網發(fā)展簡史》顯示诉字,中國1994年正式接入國際互聯(lián)網,最近一次中國互聯(lián)網大浪潮是在2009年知纷,PC端互聯(lián)網轉移到移動互聯(lián)網壤圃,中國程序員數(shù)量呈井噴式發(fā)展。這也解釋為什么中國程序員大多年齡集中在25-34歲之間琅轧。
從上圖可以看出伍绳,24歲以下程序員絕大多數(shù)都是單身,程序員群體普遍結婚較晚乍桂,且30-40歲之間竟也有兩成人未婚冲杀。
3、程序員地區(qū)分布
因為主要的大型互聯(lián)網公司都坐落在北京模蜡,上海漠趁,深圳,以及近年來阿里巴巴的杭州忍疾。從地圖中也可以看出闯传,北京市(17.18%)、上海市(11.04%)卤妒、浙江省和廣東省程序員人數(shù)最多甥绿,從調查樣本數(shù)據進一步得到浙江省中杭州(13.50%)人數(shù)最多字币,廣東省中深圳(8.59%)和廣州(9.52%)人數(shù)最多。
在程序員群體中流行這樣一句話"逃離北上廣"共缕,與2016年客棧調查報告相比洗出,很明顯看出杭州和深圳的程序員人數(shù)在增加。
4图谷、程序員公司性質
近四分之三的程序員所在民營企業(yè)翩活,近一成的程序員是自由職業(yè)者,國有企業(yè)的程序員僅占4.2%便贵。
5菠镇、程序員跳槽現(xiàn)狀
有近8成程序員都有過跳槽經歷。其中有1次跳槽經歷的15.2%承璃,2次跳槽經歷的20.5%利耍,3次跳槽經歷的21.1%,14.7%的程序員有過5次及以上的跳槽經歷盔粹。據調查隘梨,程序員跳槽原因主要包括缺乏發(fā)展空間,與預計的期望不符和更高的薪水舷嗡。
6轴猎、近年程序員擅長語言和職業(yè)方向
- 擅長語言
- 職業(yè)方向
從調查數(shù)據可知陕壹,程序員擅長語言多為Java(41.4%)惜浅、JavaScript(38.6%)和PHP(22.4%)等,另外Python(15.2%)狞贱、C語言(14.3%)垮斯、C#(13.3%)和C++(12.9%)等也是使用較多的計算機語言郎仆。再結合程序員客棧后臺4000多名簽約開發(fā)者的職業(yè)方向,與本次調查基本符合兜蠕。(注:此項為多選扰肌,總和大于100%)。
7熊杨、程序員對工作現(xiàn)狀滿意程度
調查顯示絕大多數(shù)程序員對自己工作現(xiàn)狀持一般態(tài)度曙旭,近三成程序員對自己的薪資不滿意,滿意度最高的是同事晶府。
8桂躏、程序員兼職意愿
綜上所述,國內一線城市依然是程序員的主要聚集體川陆,一些經濟發(fā)達剂习,科技公司密集的二線城市也聚集了大量的程序員。在計算機語言方面,中國程序員擅長Java鳞绕、JavaScript失仁、PHP和Python最多,這也符合世界計算機語言流行度们何。從薪資來看萄焦,中國程序員薪資相比于其他行業(yè)相對較高,平均年薪達到15w以上冤竹,近五成程序員租房租金在1.5k以上拂封,住房條件較高。
在工作上贴见,76.6%的程序員在私企工作烘苹,近一成的程序員是自由職業(yè)者。77.2%的程序員都有過跳槽的經歷片部,且跳槽過后的薪資相對提升。雖然中國程序員平時工作壓力很大霜定,經常加班档悠,但可以看出他們對自己工作現(xiàn)狀都比較可觀,沒有抱很大負面情緒望浩。
挑戰(zhàn)和提升
IT行業(yè)是一個需要不斷自我挑戰(zhàn)的行業(yè)辖所,這就讓很多人都想要進行嘗試、挑戰(zhàn)磨德。IT行業(yè)的工作屬于腦力勞動缘回,需要不斷的攻克難關,且在工作的過程需要不斷的更新自己的技能知識典挑,跟上時代的腳步酥宴。在該行業(yè),從業(yè)者需要不斷的突破自己您觉,一步步的得到自我的提升拙寡。是一個持續(xù)學習的過程。
之前有個前同事和我聊天琳水,他現(xiàn)在很焦慮肆糕。兩年前我們在xx公司相聚,那是我第一次跳槽入職新公司在孝,職位為中級诚啃,他比我早幾個月,新成立的項目組私沮,當然意味著我們少不了加班始赎。程序員之間相處其實很單純,沒有職場競爭,也沒有勾心斗角极阅,能力強的也愿意攬比較難的活胃碾,有難題也相互咨詢解決。
主要是我們年齡相仿筋搏,包括組長和架構師仆百,還有我們幾個研發(fā),年齡差在4奔脐、5之間俄周。雖然每天都加班很晚但氛圍好,所以也不感覺累髓迎。吃飯一起峦朗,下班一起,深夜修復完bug之后等運維發(fā)布版本的空隙時間排龄,七零八散的葛優(yōu)躺著波势,聊聊天打打農藥。年輕就是好橄维。
可是不到半年時間尺铣,項目變動,走的七零八散争舞,架構師去了陸家嘴金融公司凛忿,組長去了成都安家。我考慮到自己的技術和發(fā)展最后也走了竞川,臨走前我花了一個星期的時間將新需求設計開發(fā)完成店溢,我認為對于這種自愿離職的最好還是完成自己的任務,不留爛攤子給后面交接的人委乌,程序員已經這么辛苦了床牧,何必還為難程序員呢。
今年我們又相遇了福澡,他沒有換工作還在原來的地方叠赦,聽他說我們離職之后,還有另外2位同事也留下來了沒有走革砸。他抱怨除秀,公司雖然給他升級了,但是他的薪資沒有漲多少算利,我和他溝通册踩,換員之后,項目架構調整用到了哪些技術效拭,他說我們已經換成了 Springboot暂吉,mogodb胖秒,開發(fā)工具全都統(tǒng)一改成了 IDEA。"就這些慕的?"阎肝,"是啊",他說他現(xiàn)在也不敢離職肮街,說沒想到兩年沒見你能力比我強多了风题。其實并不是我變強了,是我一直在行走嫉父,而你在原地踏步了沛硅。
從近幾年的互聯(lián)網發(fā)展可以看到,行業(yè)一直在變化绕辖,風口也一直在變化摇肌,技術也是日新月異,如雨后春筍般冒新仪际,13/14年大量招Java后端围小,基本會 Spring,mybatis树碱,springmvc吩抓,Mysql/Oracle,再掌握點 js / Jquery 就能找到一份不錯的工作赴恨;15/16年移動互聯(lián)網盛行,導致企業(yè)大量招 Android / IOS伴栓,前后端分離思想在國內也開始流行伦连,前端工程師也開始發(fā)力,angularJs钳垮,HTML5惑淳,后端的大數(shù)據工程師需求量爆發(fā);17/18年饺窿,區(qū)塊鏈技術歧焦,人工智能,Angular 2肚医,React 绢馍,Vue,微服務框架肠套,SpringCloud舰涌,……。
面對技術更新?lián)Q代如此迅速的市場你稚,你如果原地踏步瓷耙,那就是相當于在等待被淘汰朱躺。
你的生活很枯燥
程序員的編程生活為什么很枯燥,或者換句話說: 是什么導致程序員的編程很枯燥的搁痛?
其實原因無非就是以下這幾種:
1.同一個環(huán)境长搀,同一種技術
什么意思?跟同一個世界鸡典,同一個夢想不同的是源请,你在一個公司待久了,使用你所知的一種技術轿钠,重復的干著一個項目巢钓,你說時間久了,是不是很無聊呢疗垛?如果在一個公司做一個項目症汹,長達一年,在這一年里贷腕,你僅僅是用你所知的技術一步一步的去實現(xiàn)背镇,學不到新的技術和知識,技能得不到提高泽裳?這時候瞒斩,無聊自然就會隨之而來,悄無聲息涮总⌒卮眩可能對于公司來說,這是有意義的工作瀑梗,但是對你來說:這是重復的烹笔,機械的搬磚。
2.復制粘貼……
其實和上邊道理差不多抛丽。工作每天都是從網上粘貼復制谤职,項目就是這樣被壘起來的。很多人離開了網絡亿鲜,基本上就喪失了百分之八十的編程能力允蜈,而剩余的那百分之二十還是抄書。很多程序員編程不思考蒿柳,而是簡單的粘貼復制饶套。
當然,聰明點的程序員還是會封裝的其馏,自己就會把一些常用的工具類凤跑,一些方法,一些控件進行封裝叛复,留著以后備用仔引。在公司開發(fā)完 A 項目扔仓,然后開發(fā) B 項目的時候,就會很簡單咖耘,把自己封裝的東西拿過來直接用翘簇,這樣機械的復用或者粘貼復制是不是很無聊呢?答案是肯定的儿倒。
3.重復的迭代和維護版保,以及修改 Bug
其實當一個項目進入測試階段以及后期維護和迭代階段的時候,開發(fā)人員基本上百分之九十的工作任務就是在修復 Bug 夫否,而不是在研發(fā)新功能彻犁,學習和使用新技術。天天在維護和更新迭代這個項目的時候凰慈,其實工作是很乏味的汞幢。
4.沒有思想的程序員
其實很多時候,程序員是沒有話語權的微谓,尤其是在小的創(chuàng)業(yè)公司森篷,因為老板基本上就是產品經理,需求說讓你做什么豺型,你就得做什么仲智?讓你去實現(xiàn)什么,你就得實現(xiàn)什么姻氨。不會讓你參與到產品的討論當中來的钓辆,當然,如果老板讓你參加肴焊,估計由于產品經理是老板岩馍,你也沒有什么話語權和發(fā)言權。
在這樣一個沒有個人思想和獨立思考的開發(fā)環(huán)境中抖韩,你是不是很無聊呢?只是機械的去實現(xiàn)老板想法的一個工具疫铜?是的茂浮,你就是一個工具,這種現(xiàn)狀那又該如何改變呢壳咕?是時候考慮離職了席揽。
什么時候離職
實事求是的說,作為一個開發(fā)者谓厘,一個程序員幌羞,我相信大多數(shù)人干同一份工作的時間基本上不會超過兩年,換句話說就是:一個程序員在同一家公司干同一份工作超過兩年的很少竟稳。
很多人說属桦,程序員是一個跳槽比較頻繁的職業(yè)熊痴,每一次的跳槽都會使工資大幅度甚至成倍的增長,所以這時候就會有很多人跳出來說:程序員跳槽的目的很簡單聂宾,就是因為想漲工資了果善。
在這里,我想說:我并不否認系谐,確實有很多開發(fā)者和程序員跳槽是為了漲工資巾陕,但是我相信作為一個有責任,有志向的程序員纪他,跳槽中最大的目的并非漲薪鄙煤,而是換一個更好的環(huán)境,更好的成長平臺和發(fā)展空間茶袒,漲薪只不過是跳槽過程中附帶的價值梯刚。
人往高處走,程序員也是人弹谁,當自己的能力成長達到一個瓶頸的時候乾巧,原來的公司不能提供很好的上升空間的時候,上升空間不限于技術還是管理预愤,是可以考慮離職了沟于。
那如果我發(fā)現(xiàn)跳槽可以讓自己工資上漲,那是否可以頻繁性跳呢植康,如果真是這樣我相信未來你肯定會失業(yè)很久或者成長停止很久旷太。技術也是需要時間沉淀的和消化的。如果你的離職理由一直是項目不好或者領導不好销睁,那你的眼光肯定也不好供璧,面試是一個雙向過程,面試官在挑你的時候冻记,你也有權利挑公司睡毒,面試的時候你可以反向提問以更多的了解公司是否適合自己。
程序員冗栗,技術是我們的主導力演顾,因此,入職新公司前我們可以反向問面試官:公司的技術人員配比隅居,入職后的項目詳情钠至,公司的產品發(fā)展方向,以及目前主要的架構技術胎源。這些可以讓我們快速的了解當前公司是否適合自己棉钧。
一般判斷自己是否可以離職,若無特殊原因涕蚤,可以從以下幾個點去判斷:
公司的項目宪卿,產品邏輯是否全部了解的诵,下家面試時是否可以詳細講解清楚,細到邊邊角角愧捕。項目中所涉及的技術奢驯,是否全部已經知其然知其所以然。不要停留在表面會用的階段次绘,要了解技術原理深知其特點瘪阁。技術是個累積的過程,你也知道技術更新快邮偎,所以盡量不要回頭學管跺,用到一個技術就將它理解的透透的。有更高的目標可以追求禾进,并且認為自己現(xiàn)在已經有能力實現(xiàn)豁跑。程序員你30了
中國古語,30而立泻云,程序員你是否擔心你的30歲艇拍?我認為如果你在30歲之前已經做好了準備,你就沒什么好擔心的宠纯。如果你害怕卸夕,說明你做的并不夠好。請問如果你有孫悟空的七十二變你會怕取經路上的妖魔鬼怪嗎婆瓜?如果你有成是非的金剛不壞神功快集,你會怕江湖上的刀槍劍影嗎?請別給自己帶上了緊箍咒廉白。未雨綢繆个初,是任何職業(yè)人員都需要做的。
當你在30歲之前沒有消耗自己猴蹂,一直堅持著技術積累院溺,我相信在30歲的時候你也是滿懷自信的,因為有能力的人走哪都是不懼的磅轻。
還有最后一句:量力而行覆获。人可以有夢想,但不可以好高騖遠瓢省,不切實際。這個世界山連著山痊班,水潺著水勤婚,人上還有人。環(huán)境不同涤伐,起點不同馒胆,自己內心過的得意缨称,我有十兩銀子吃穿溫暖,家庭幸福又何必在意別人的百兩金子祝迂。
后記
程序員你累了嗎睦尽?那就睡一覺吧,睡醒之后又可以戰(zhàn)斗了型雳。
最后也分享一下我自己的一套Java學習資料庫当凡,大伙看看有沒有需要的:
- Java核心知識點:
- Java千道面試寶典:
內容涵蓋:Java、MyBatis纠俭、ZooKeeper沿量、Dubbo、Elasticsearch冤荆、Memcached朴则、Redis、MySQL钓简、Spring乌妒、Spring Boot、Spring Cloud外邓、RabbitMQ撤蚊、Kafka、Linux 等技術棧
- 架構學習資料:
- 學習視頻:
以上這些學習資料都能夠免費分享給小伙伴們坐榆,希望能一起努力拴魄,共同進步!有需要的席镀,直接戳 免費領取匹中!
以上這些學習資料都能夠免費分享給小伙伴們,希望能一起努力豪诲,共同進步顶捷!有需要的,直接戳 免費領取J豪椤服赎!
以上這些學習資料都能夠免費分享給小伙伴們,希望能一起努力交播,共同進步重虑!有需要的,直接戳 免費領取G厥俊H崩鳌!