忽然間想起了10年前,那是2004年的8月装诡,我再次畢業(yè)房待。感謝兩次上學(xué)的城市沈陽倔矾。
畢業(yè)后我又離開了這座城市,回到了之前工作的城市大連毙驯。報道到一家專做日本外包的公司倒堕。先到之前同事家落腳,只待公司召喚報道尔苦。
晚上我和朋友一起喝酒涩馆,擼串行施。
朋友問我,打算怎么辦魂那?我說之前的工資都交給學(xué)校了蛾号。同事說,他們大部分都在大連付了首付買了房涯雅,在考駕照鲜结,哥們得好好干。
是啊活逆,我說精刷,現(xiàn)在從頭開始,一定得好好加油蔗候。
過了幾天我遇到了在北京上班來大連出差的朋友怒允。
他興奮地和我說,北京有個互聯(lián)網(wǎng)公司剛被并購锈遥,缺研發(fā)工程師纫事,是個機(jī)會,邀請我前往所灸。我喜歡互聯(lián)網(wǎng)丽惶,之前還做過站長,反正現(xiàn)在是零爬立,不如一試钾唬。那天晚上我們打著出租車在大連城區(qū)轉(zhuǎn)了幾圈。9月我買了一只皮箱侠驯,裝著夢想抡秆,坐上了大連通往北京的火車。沒有臥鋪陵霉,硬座的感覺也那么好琅轧!
坐了一夜的火車伍绳,當(dāng)我走出國貿(mào)地鐵站踊挠,外面的陽光是那么耀眼。
我拖著皮箱冲杀,走在長安街上效床,看著似乎比大連要高又多又厚實(shí)的樓群。從那時权谁,我從零起步剩檀,一腔熱血,正式開始了我的北漂生活旺芽。
至此沪猴,我的職業(yè)生涯辐啄,軟件開發(fā)行業(yè)到現(xiàn)在已經(jīng)超過15年。從程序員到架構(gòu)師运嗜、半個技術(shù)管理者壶辜,以及創(chuàng)業(yè)者和作者之路。
現(xiàn)在回過頭看担租,從當(dāng)年的選擇技術(shù)這條路砸民,寫了兩本書,做了幾個明星級產(chǎn)品奋救,雖然苦岭参,卻也有樂趣,也給自己帶來了一些價值尝艘。
興趣驅(qū)動
我的高中時代演侯,親人送我一本BASIC語言書。后來我翻了翻背亥,發(fā)現(xiàn)很有趣蚌本,幾行程序就可以讓計算機(jī)做題,實(shí)現(xiàn)比人能夠完成更強(qiáng)大的應(yīng)用隘梨,還能顯示不同的圖形程癌。
我的家鄉(xiāng)在農(nóng)村,那時候電腦還是486和586時代轴猎。興趣驅(qū)動我尋找有電腦的縣城嵌莉,那時縣城的打字復(fù)印社也不多,終于找了一家店捻脖,我不和人家要錢锐峭,幫助人家打字,只要讓我用機(jī)器就可以可婶。我家離縣城不算遠(yuǎn)沿癞,大概15公里。就這樣矛渴,在暑假椎扬,我來來回回十幾次,不僅學(xué)會了BASIC具温,還學(xué)會了五筆字型蚕涤,UCDOS和WPS。
那時候最喜歡看到紅藍(lán)相間的UCDOS界面和WPS的純藍(lán)界面铣猩,看到香港金山和求伯君幾個字揖铜,很是佩服,希望將來有機(jī)會也成為一個程序員达皿。
到了大學(xué)天吓,我學(xué)的是計算機(jī)贿肩,除了功課之外,還有在校外網(wǎng)站和網(wǎng)絡(luò)維護(hù)龄寞。
所有的這些初心尸曼,都需要有興趣驅(qū)動,否則是堅持不下來的萄焦。
如果你只想多賺點(diǎn)錢生活控轿,開始可能干勁很足,但我擔(dān)心你可能堅持不了多久拂封。
當(dāng)有了興趣驅(qū)動茬射,你會有熱情,有方向冒签,更具有信念在抛。此時的你應(yīng)該專注在目標(biāo)上。
清晰的目標(biāo)
目標(biāo)是你在一段時間內(nèi)要達(dá)成的結(jié)果萧恕。比如說在一段時間內(nèi)學(xué)好一門語言刚梭。
要注意基礎(chǔ)的積累,寫程序需要有嚴(yán)謹(jǐn)和邏輯思維票唆。否則寫不出好的代碼朴读。
我記得有一次,有一個同事寫的代碼邏輯存在問題走趋,循環(huán)成了死循環(huán)衅金。這段程序是后臺的批量下單,結(jié)果顧客在同一天收了幾次貨簿煌。好在氮唯,客戶并未多收,禮貌給拒絕了姨伟,才沒給公司帶來損失惩琉。
所以,你要訓(xùn)練自己有一個嚴(yán)謹(jǐn)?shù)膽B(tài)度和思維方式夺荒÷髑基礎(chǔ)扎實(shí)的人
你可能是那個“不適合編程的人”
在編程的時候,是多多少少處在一種在困難中解決問題的情緒般堆,你會覺得在孝,你會努力,再大的努力去解決它淮摔,不管它有多棘手,還是有多簡單始赎,你都會想辦法做好它和橙。你除了自己努力還要有三五好友仔燕,多出去走走,沒事喝點(diǎn)小酒魔招。
然后你才能從悲觀到孤寂后收獲那滿滿的成就晰搀。
在三到五年的時間,我曾遇到過嚴(yán)重的瓶頸办斑,編程很苦逼外恕,每天都面對電腦,和人打交道少乡翅,加班嚴(yán)重等對自己的思維干擾鳞疲。
我覺得寫程序很累,有點(diǎn)不愿意干了蠕蚜,想轉(zhuǎn)行尚洽,可是又沒有想出要做什么。也有人說:“你很聰明靶累,做點(diǎn)別的吧”腺毫,后來我不斷的拓寬自己的深度和廣度,看書挣柬,實(shí)踐潮酒,溫習(xí)算法,數(shù)據(jù)結(jié)構(gòu)邪蛔。
后來我嘗試寫書澈灼,從感覺到容易,再到寫起來難店溢,再到寫出來叁熔,有沒有書商愿意出版。出版社說你寫吧床牧,我們給你出荣回。再到出版了,有沒有人愿意買戈咳,你又擔(dān)心賣得好不好心软。
如此這般,經(jīng)過幾關(guān)著蛙,終于從別人的眼光里跳出來删铃,做回了自己。
人適不適合踏堡,只有自己知曉猎唁,或者自己愿意不愿意堅持。
透過現(xiàn)象看本質(zhì)
寫程序經(jīng)過四五年后顷蟆,多半是CRUD的操作诫隅。但是應(yīng)用級別越來越復(fù)雜腐魂,使得開發(fā)強(qiáng)度越來越大。有的人也可能會產(chǎn)生厭倦逐纬。你可以這樣來做:
這時不妨嘗試一些新語言蛔屹,或者查看底層的源代碼,比如JDK或者PHP的源代碼豁生⊥枚荆看得多了,你就不是只知其然甸箱,而知其所以然了育叁,理解了底層機(jī)制后就可以觸類旁通,對應(yīng)用級開發(fā)簡直就是小菜一碟摇肌。
還有GitHub的開源平臺上也有很多優(yōu)秀的源代碼可看擂红。在GitHub前幾代有Sourceforge、Google Code围小,但這些平臺慢慢的都Out了昵骤。其實(shí)本質(zhì)上它們區(qū)別并不大,但是到后來就是沒人用了肯适,為什么变秦?
停下來多想想,你的核心競爭力是什么框舔?是和別人一樣的Coder蹦玫?
向上,向左還是向右刘绣?向上樱溉,是架構(gòu)師。向左產(chǎn)品經(jīng)理纬凤,向右轉(zhuǎn)行福贞?
實(shí)踐出真知
當(dāng)你累積了一定編碼量,以及應(yīng)用開發(fā)經(jīng)驗后停士。你所在的公司可能會推著你向技術(shù)經(jīng)理或架構(gòu)師轉(zhuǎn)換挖帘。
技術(shù)經(jīng)理會承擔(dān)一些項目、產(chǎn)品計劃恋技,而架構(gòu)師會多承擔(dān)技術(shù)上的深一層拇舀,比如大并發(fā),高負(fù)載蜻底、可擴(kuò)展等能力骄崩。
你可能要面臨著一堆冗余的爛代碼,不同架構(gòu)的系統(tǒng),經(jīng)常宕機(jī)的網(wǎng)站等等棘手問題刁赖。我們需要根據(jù)這些情況搁痛,一邊要讓車正常跑在路上长搀,還要邊快跑邊修車宇弛,這個難度顯而易見。
人生就是一個難題接著一個難題源请,需要我們用極大智慧來解決枪芒,來克服,包括我們自身的改變谁尸。
非權(quán)力領(lǐng)導(dǎo)力
程序員轉(zhuǎn)型管理舅踪,在此方面應(yīng)該是偏弱的。因為創(chuàng)造環(huán)境是需要更多的與環(huán)境和人交互良蛮。而技術(shù)者更多擅長的是與計算機(jī)交互抽碌。與環(huán)境交互,與人打交道所需要的技能和與人機(jī)交互所需要的技能是完全不一樣的决瞳。
在此方向货徙,我也曾遇到過,哪個工程師”背著手上廁所皮胡,就是不扶你“的情況痴颊,有的同學(xué)投機(jī)取巧,寫爛代碼屡贺,遲到早退蠢棱,屢教不改被我開除,還跑到百度知道上罵我和我的書不好云云甩栈。
還有經(jīng)常事必恭親泻仙,程序員盼著我來救火,上司看著我像頭牛量没,動不動就自己拼了命玉转。結(jié)果上下不討好,搞得自己精疲力盡允蜈。
所以冤吨,對于程序員來說,成為技術(shù)領(lǐng)導(dǎo)的道路真心不太容易饶套。下面是我的事后諸葛亮:
第一步漩蟆,你需要建立在整個團(tuán)隊的威信。比如在某個時候上線妓蛮,一個人遇到了問題卡在那里怠李,在這個關(guān)鍵時刻,你走上前,幾分鐘解決問題捺癞。另外夷蚊,能夠搞定問題,但不要陷入細(xì)節(jié)髓介,這些是你團(tuán)隊的問題惕鼓,不要讓猴子跳到背上。
第二步唐础,招合適的人箱歧,對路的人,招比自己年輕且優(yōu)秀的人一膨。你需要側(cè)重的是讓大家的方向感呀邢,目標(biāo)感。還有自己與同級豹绪、上級的溝通技巧价淌。
除了是技術(shù)大牛,你還得是情商瞒津、管理大牛蝉衣。這條路,我和電腦前的朋友們共勉仲智。
現(xiàn)在买乃,該你了。
PS:知道大家喜歡看到這樣的文章钓辆,或者有任何建議剪验,歡迎后臺留言告訴我,我會試著連載一系列文章前联,帶著大家從程序員走向架構(gòu)師功戚,CTO之路。