曾經(jīng)混過百度滩字,呆過平安造虏,現(xiàn)在職美團
本人普通二本畢業(yè)去的一家小公司御吞,半年后去了某知名大廠, 后來繼續(xù)在大廠之間跳槽 漓藕。如今已娶妻生子 買房定居陶珠。這幾年經(jīng)歷過面試,買房享钞,學(xué)車揍诽,結(jié)婚,生子栗竖,職業(yè)
沉淀暑脆。也算是真正領(lǐng)悟到了編程到底有什么意義!編程的意義這個話題留到以后再談狐肢。
每年都有無數(shù)年輕程序員添吗,加入軟件行業(yè)。他們在學(xué)校里學(xué)過編程份名,但是對這個行業(yè)的現(xiàn)實一無所知碟联,我今天介紹這個行業(yè)的一些實際情況。這幾年自己在技術(shù)博客沉淀很多技術(shù)僵腺。其他方面也算成功鲤孵,至少和同齡人和自己起點一樣本科生來說,作為過來人有幾點說一下:
前面四點主要針對三年經(jīng)驗以內(nèi)的想邦。后面的幾點寫給3年到8年的同行裤纹,最后一段寫給所有的同行。
1.不要迷信“大派ッ唬”
看到你問題中有什么踩坑的鹰椒,技術(shù)人唯一的不好就是對非技術(shù)盲目崇拜,尤其對非技術(shù)網(wǎng)紅呕童。就放前面說說:網(wǎng)上的“大牌峒剩”多半不靠譜。
其一是真正的大牛沒時間混跡在網(wǎng)上做人生導(dǎo)師夺饲,天天講道理奸汇,整天出現(xiàn)在你Timeline里的人要么半吊子水貨,要么另有所圖(賺錢智商稅)(我黑起人來連自己也不放過)
其二相比較入門的你比就算是大牛往声,他的經(jīng)驗對你未必有用擂找。大牛說我學(xué) Python 也就翻了下基本語法,當天就上項目開干了浩销。(大神說我覺得沒有順手的語言贯涎,就發(fā)明了 Python)大牛說我從不看基礎(chǔ)知識,因為大牛天天忙著公司架構(gòu) 哪來機會看基礎(chǔ)慢洋。
2.少說廢話塘雳,多寫代碼
廢話有很多種陆盘,程序員屆最多的大概就是整理哪個語言/框架/平臺/技術(shù)好,準程序員則喜歡問败明,我是不是應(yīng)該學(xué)Java c php……學(xué)了是不是有用之類隘马。我學(xué)習(xí)什么技術(shù)好?技術(shù)討論并不完全無意義妻顶,但在你打好計算機基礎(chǔ)酸员、數(shù)據(jù)結(jié)構(gòu),熟練掌握至少一門語言盈包、開發(fā)過一個能看的項目之前沸呐,這些討論對你來說就是浪費時間的廢話,而不是今天跟風(fēng)學(xué)這個呢燥,明天又聽人說那個好崭添。不要等畢業(yè)的時候說出XX技術(shù)學(xué)校沒教過,所以我不會這種話叛氨。
有這時間多寫點代碼呼渣,刷刷算法題,找點項目做做寞埠,找不到就從自己日常身邊找點需求去用代碼實現(xiàn)屁置。不要說你覺得沒有什么可寫的,如果是這樣仁连,那你要反思下自己適不適合編程這條路蓝角。
我能告訴你的是 接下來幾年不會算法是不行的。不要說我進去公司用不到這些話 如果你拒絕學(xué) 那沒必要做程序員了饭冬。
3.做一個程序員使鹅,不是碼農(nóng)。
碼農(nóng)的工作和搬磚沒什么區(qū)別昌抠,就是把一些模塊拼到一起患朱,有問題了就東修西補,程序能跑通就不錯炊苫,只會用教過的一兩種技術(shù)裁厅。做個碼農(nóng)很容易,天天改改Bug 水水群 侨艾,編程5的分鐘 扯淡兩小時执虹。就是說的是碼農(nóng)。但程序員是個長期的職業(yè)唠梨,你在學(xué)校學(xué)習(xí)的是編程的思想袋励、解決問題的邏輯、持續(xù)學(xué)習(xí)的能力。重視基礎(chǔ)課程插龄,深入學(xué)習(xí)一兩門語言和技術(shù),理解透徹了科展,以后學(xué)習(xí)別的新技術(shù)自然觸類旁通均牢。沒事看看就行,別去跟風(fēng)湊熱鬧才睹。你上的是大學(xué)徘跪,不是技能速成培訓(xùn)班。
總結(jié)一句琅攘, 碼農(nóng)喜歡說顛覆 喜歡說取代 更喜歡扯布道者垮庐。天天喊著新技術(shù)。
程序員專注基礎(chǔ)能力坞琴,談業(yè)界影響哨查,說貢獻。
4.短期不要高估自己剧辐,長期不要低估自己
絕大多數(shù)人都會犯的錯誤就是“短期高估自己寒亥,長期低估自己”。除非你天資聰慧荧关,否則別想著大一就搗鼓出什么牛逼程序來一鳴驚人溉奕。學(xué)編程的過程會經(jīng)歷數(shù)個瓶頸期,中間你也許會數(shù)次感到萬分絕望忍啤,甚至開始懷疑人生加勤。
但你要相信,只要堅持寫下去同波,瓶頸總會突破鳄梅,成為一個超越平均水準的職業(yè)程序員是沒有什么大問題的。
畢業(yè)三年拿到15到20k 的人不少参萄,不代表你牛逼卫枝,因為行業(yè)曲線就這樣。但是你想6年拿60k 確實沒幾個人讹挎,畢竟50w年薪是大部人的天花板校赤。所以也別灰心 。
5筒溃,最后相信自己马篮,尊重自己的職業(yè)
- 不要自稱「 xx 狗」,尊重自己
- 不要為了談戀愛而談戀愛怜奖,不要相信「程序員找不到女朋友」
- 除了計算機知識浑测,也要學(xué)好英語 + 數(shù)學(xué)
- 基礎(chǔ)學(xué)扎實,學(xué)算發(fā),不要追求熱門
- 不要迷戀語言迁央,不要陷入語言的戰(zhàn)爭
- 多寫有質(zhì)量的代碼 別瞎折騰實踐
6.90%的編程工作來自內(nèi)部軟件
計算機專業(yè)的學(xué)生掷匠,可能有一種錯覺,覺得大部分程序員岖圈,都在編寫公開出售的軟件或者通用軟件讹语。
這種看法是不對的。大部分程序員蜂科,實際上編寫的是不公開的企業(yè)內(nèi)部軟件顽决,這就是說所謂的外包。比如追蹤費用的軟件导匣、優(yōu)化裝運成本的軟件才菠、幫助記賬的軟件、設(shè)計新部件的軟件贡定、計算保單價格的軟件赋访、識別惡意訂單的軟件等等。
各種各樣的商業(yè)公司缓待,開發(fā)內(nèi)部軟件进每,解決它們自己的問題。市場上對程序員的大部分需求來源于此命斧,只有極少數(shù)程序員直接編寫面向外部顧客的軟件田晚。
內(nèi)部軟件的開發(fā),通常非常乏味国葬,令人厭倦贤徒。因為它們的技術(shù)復(fù)雜性低、技術(shù)決策非常保守汇四、預(yù)算很少接奈、缺乏長遠考慮。但是通孽,世界上大部分編程工作都是這種序宦。你如果想入行程序員,你就要有心理準備去接受這樣的工作背苦。
7 別人雇你的目的互捌,是讓你創(chuàng)造利潤,不是讓你編程
商業(yè)公司最關(guān)心的(或者說唯一在乎的)事情行剂,就是增加收入秕噪、降低成本。因此厚宰,它們實際上需要的不是程序員腌巾,而是能夠幫助它們增加收入、降低成本的人。
開發(fā)優(yōu)美的軟件澈蝙,解決技術(shù)難題吓坚,編寫沒有 bug 的代碼,這些都不是商業(yè)公司的目的灯荧。它們雇傭你凌唬,是為了讓你幫它們完成某個可以增加收入、降低成本的項目漏麦,而不是為了讓你追求個人的軟件成就。
你對于公司的唯一價值况褪,就在于能多大程度上為它們增加收入撕贞、降低成本。
這就是為什么阿里p8拿不到業(yè)務(wù)就是滾蛋的情況 测垛,在沒有業(yè)務(wù)就沒有產(chǎn)出捏膨,沒產(chǎn)出就沒有利潤,那么技術(shù)好壞 只成為你不容易被裁的幾率食侮。
8 好的程序員專注于為公司帶來價值
很多公司的開發(fā)經(jīng)理不懂技術(shù)号涯,在他們心目中,程序員就是一群高成本的勞動力锯七,只會在一臺復(fù)雜的機器上干一些他們難懂的事情链快。
如果你自稱為”碼農(nóng)”,只會寫代碼眉尸。當公司需要壓縮成本的時候域蜗,某些經(jīng)理首先就會想到解雇你,因為你的工資高噪猾。
有一家公司叫 Salesforce霉祸,口號是”沒有軟件”,意思就是如果經(jīng)理們購買了他們的服務(wù)袱蜡,就不再需要別的軟件管理銷售業(yè)務(wù)了丝蹭,也就是說,不再需要自己雇傭程序員了坪蚁。
正確的做法是奔穿,你應(yīng)該把自己描述成與增加收入、降低成本有關(guān)系的人敏晤,比如”xx產(chǎn)品的開發(fā)者”或”改進者”巫橄。有一個 Google Adsense 程序員的自我介紹,是這樣寫的:”Google 公司97%的收入茵典,與我的代碼有關(guān)湘换。
9 不要給自己設(shè)限
年輕學(xué)生經(jīng)常會問,應(yīng)該選擇哪種語言或平臺?Java 是不是比 .NET 容易找工作彩倚?
過分強調(diào)某一種語言或平臺筹我,都是不必要的。如果你把自己限定為 Java 程序員或 .NET 程序員帆离,你就已經(jīng)輸了蔬蕊,因為首先你不應(yīng)該自稱為碼農(nóng)(理由見上一點),其次這種限定使得你自動被排除在世界上大多數(shù)編程工作之外哥谷。
現(xiàn)實生活中岸夯,學(xué)會一種新語言,只需要一兩個月们妥,然后再過半年到一年猜扮,你就會變成老手。那時监婶,根本沒人在乎你以前用什么語言旅赢。
天才程序員是很少的,可是需要天才程序員的工作機會卻很多很多惑惶,大多數(shù)場合都是需求遠遠大于供給煮盼。
這意味著,即使你不是天才程序員带污,只要你是一個優(yōu)秀工程師僵控,那些招聘公司也會立刻錄用你,因為它們知道招聘到天才程序員的機會微乎其微鱼冀。(重復(fù)一遍喉祭,所謂”優(yōu)秀工程師”,就是你的履歷上有一連串可以為公司增加收入雷绢、降低成本的記錄泛烙。)
某些公司的人事部門,會根據(jù)某個關(guān)鍵詞(比如 Java 或 .NET)過濾簡歷翘紊。雖然這樣的公司根本不值得去,但是如果你真的想過這一關(guān)帆疟,也很容易:投入幾個晚上和周末,在你當前的項目中設(shè)法用到這個關(guān)鍵詞踪宠,然后再把它寫進簡歷就行了。
你要知道 語言只是工具柳琢,公司為了利潤绍妨,在任何時候都可能讓你轉(zhuǎn)語言。
10 如何提高求職時的談判能力他去?
(1)記住你不是在求職,不是在展示編程技巧灾测,而是在推銷某種商業(yè)問題(增加收入或降低成本)的解決方案爆价。
(2)面試時,要有自信媳搪,要平等的對話秦爆。你要的是一個互利的錄用合同,不要每次對方提出要求鲜结,你都說Yes精刷。
(3)雇主可能會問”你的上一份工資是多少”,他們其實在說”給我一個理由怒允,壓低你的報酬”锈遥。你要想好如何適當?shù)鼗卮疬@個問題。
(4)要還價丽惶。這里不僅僅指錢爬立,還指其它你關(guān)心的方面。如果你無法要求更高的薪水侠驯,那就試著要求更多的假期。
11 創(chuàng)業(yè)公司是否適合應(yīng)屆畢業(yè)生儒士?
如果你一畢業(yè)就加入創(chuàng)業(yè)公司檩坚,最可能的結(jié)果是诅福,接下來幾年你都工作得非常辛苦权谁,然后公司悲慘地失敗了憋沿,你失業(yè)了,不得不又去另一家創(chuàng)業(yè)公司工作采章。
如果你真的想去創(chuàng)業(yè)公司壶辜,應(yīng)該首先找一家大公司干上幾年,攢一點錢抵怎,積累一些經(jīng)驗岭参,然后精心挑選一家創(chuàng)業(yè)公司噩凹,再去實現(xiàn)自己的夢想刷钢。
在創(chuàng)業(yè)公司工作睬愤,一般情況下潜支,你遇到的都是創(chuàng)業(yè)者娄徊。他們大多數(shù)人沒有能力在兩年后帶你寄锐;而在大公司工作,你遇到的都是其他大公司的人中鼠,他們中很多人將來有能力帶你或者幫你介紹工作沿癞。
12 溝通技能是最重要的職業(yè)技能
前面說過,工程師被雇傭惫搏,不是因為會編程,而是因為能夠創(chuàng)造商業(yè)價值铣猩。所以茴丰,你得讓人們相信你能創(chuàng)造價值,這是幫助你找到工作的最重要的能力峦椰。這種能力與你真的能創(chuàng)造多少價值汰规,實際上聯(lián)系不是很緊密。很多情況下滔金,你向別人展示的是對你能力的一種期望茂嗓,而不是你當前的能力在抛。
所以不要時刻說技術(shù)萧恕,因為技術(shù)只是工作的一種手段,價值才是你的武器朴读。
最后關(guān)注技術(shù)的同時 不要忘了關(guān)注自己自身能力的提高走趋。這一行都應(yīng)該有面對時刻失業(yè)的準備,因為大部分的的危機來自于體制外的工作當成了體制內(nèi)氮唯。
最后小結(jié)
普通人為了達成某個目標姨伟,需要舍棄一些東西夺荒,舍得舍得良蒸,有舍才有得伍玖。
職業(yè)生涯早期有機會去大公司大平臺窍箍,還是要去大公司見見世面。很多事情不是一蹴而就的造垛,如果能力不夠可以采取曲線救國晰搀,只要最終能達到目的就好。
技術(shù)是根本杆逗,沒有技術(shù)你就沒有錢鳞疲。技術(shù)又不是全部,因為你很難搞一輩子技術(shù)悔橄。
眼光和機遇很重要腺毫,機遇可遇不可求潮酒,但是機遇來了,眼光不夠沒有做出相對準確的預(yù)測扎狱,做錯了選擇勃教,那也是很傷。
學(xué)歷和起點不是問題污抬,其實能力和眼界才是程序員核心競爭力心软,大廠不一定就是鐵飯碗。
人都需要學(xué)習(xí)耳贬,并能不斷敢于挑戰(zhàn)自己咒劲,才能離成功幾率越大。
IT人員學(xué)習(xí)互聯(lián)網(wǎng)編程較廣帐偎,小編分享適合Java程序員學(xué)習(xí)的思路方向(達阿里P7級別)
對自己的學(xué)習(xí)規(guī)劃很迷没滓伲或者想獲取進階資料學(xué)習(xí)的工程師朋友們可以直接點擊【 石墨文檔 】獲取學(xué)習(xí)資料
1,架構(gòu)師內(nèi)功心法(設(shè)計模式)
- Proxy代理模式
- Factory工廠模式
- Singleton單例模式
- Delegate委派模式
- Strategy策略模式
- Prototype原型模式
- Template模板模式
- Decorator裝飾器模式
- Observer觀察者模式
2,架構(gòu)師審美觀(品味經(jīng)典育叁,分析源碼)
- AOP源碼解析
- IOC源碼解析
- Mybatis源碼
- Spring
- Spring5 Framework體系結(jié)構(gòu)
- Spring5環(huán)境搭建
- Spring5概述
3豪嗽,架構(gòu)師必備技術(shù)棧(這里主要列舉高并發(fā)場景分布式解決方案實戰(zhàn))
- 分布式主鍵生成方案
- Session跨域共享實戰(zhàn)
- 分布式事務(wù)解決方案實戰(zhàn)
- 分布式鎖解決方案實戰(zhàn)
- 分布式單點登錄 SSO實戰(zhàn)
- 分布式調(diào)度任務(wù)實戰(zhàn)
- 分布式配置中心
4隐锭,次世代架構(gòu)技術(shù)(微服務(wù)架構(gòu))
- 基于分布式思想下的RPC解決方案
- Dubbo應(yīng)用及源碼解讀
- SpringBoot
- SpringCloud應(yīng)用及源碼解讀
- Docker虛擬化技術(shù)
5变秦, 團隊協(xié)作專題
- Git
- Jenkins
- Maven
- Sonar
6蹦玫,架構(gòu)師筑基專題(這里主要列舉并發(fā)編程進階樱溉、JVM性能調(diào)優(yōu)知識點)
- JVM性能調(diào)優(yōu)
- Java程序性能優(yōu)化
- Tomcat
由于圖片太大上傳會不清晰纬凤,需要完整架構(gòu)體系大綱的可以直接點擊 【 石墨文檔 】,領(lǐng)取我已經(jīng)打包好的架構(gòu)體系大綱挖帘,免費分享給大家哦!
學(xué)會制定計劃
雖然有的人基礎(chǔ)好逻族,起步高骄崩,但這些并不是一成不變的要拂。接下來的這幾年的努力,最足以拉開人生的差距搏嗡。
王健林說:
定個小目標拉一,先掙一個億。
這樣的目標可能還是過于宏大了纽甘,但每一年抽碌,薪資以1.5倍速增長,并非遙不可及左权。
假設(shè)你從應(yīng)屆生畢業(yè)時月薪為8k痴颊,兩年工作下來14k蠢棱。從第三年起,到第五年泻仙,每年翻一番玉转,就是:
- 21k
- 32k
- 48k (年薪58萬) 似乎也沒有多少,對于大多數(shù)人來說這樣的小目標不算太難實現(xiàn)的猾担。
假設(shè)這三年如果只有30%的平均漲幅,那么就是:
- 18k
- 24k
- 30k (年薪36萬) 14k 相同的起薪妓蛮,20%的差距圾叼,就有22萬之多。所以這一階段的發(fā)展需要多付出些精力构挤,不可荒廢惕鼓。
適合Java程序員學(xué)習(xí)的視頻進階資料總結(jié)分享(以下是一部分文檔網(wǎng)盤資料圖)
對自己的學(xué)習(xí)規(guī)劃很迷孟淦纾或者想獲取進階資料學(xué)習(xí)的工程師朋友們直接點擊【 石墨文檔 】獲取學(xué)習(xí)資料
部分資料展示