一位工作8年程序員的成長感悟,值得深思 文|洪生鵬 01剛畢業(yè)時(shí),到一家軟件創(chuàng)業(yè)公司上班,公司規(guī)模不大,加上領(lǐng)導(dǎo)只有6個(gè)人,主要做教育平臺(tái),那時(shí)待遇,1500元。(不怕你笑話,剛畢業(yè)時(shí)對薪資不敢期望,有人收留就已經(jīng)感激不盡了) 做會(huì)員模塊時(shí),要實(shí)現(xiàn)在線支付功能,得與支付寶、財(cái)付通第三方支付sdk對接,在此之前,我對這些一點(diǎn)都不了解。 不怕你笑話,當(dāng)時(shí)心里那個(gè)怕啊,雖說專業(yè)是計(jì)算機(jī)軟件的,可同學(xué)中從事專業(yè)對口的的,寥寥無幾啊,指望同學(xué)指點(diǎn)幾乎不太可能。 找同事幫忙也就更不太可能了,他們都很忙,負(fù)責(zé)的模塊也多,當(dāng)時(shí)心里就慌了,要是沒能完成任務(wù),豈不是得丟了飯碗。如同人家說的,一畢業(yè)就失業(yè)啊,好不容易應(yīng)聘到的崗位,如果因此就沒有了,心不甘。 在做程序員前,早就聽老師說過,程序員最關(guān)鍵的是解決問題,甭管你之前學(xué)沒學(xué)過,只要在你職責(zé)范圍內(nèi)有需求,你都得想法設(shè)法把問題處理。 想到這,心靜了下來,于是逐個(gè)訪問官網(wǎng),按照官網(wǎng)提供的文檔以及官網(wǎng)提供的demo,逐個(gè)對接到項(xiàng)目中來,領(lǐng)導(dǎo)安排我做這個(gè)模塊前, 還特意給我的賬號(hào)各打了10元,方便調(diào)試。 對接這兩個(gè),我用了4天的時(shí)間,雖然中間遇到一些坑,通過查看官方論壇查看別人碰到相似問題的,實(shí)在沒法就加入官網(wǎng)技術(shù)群,找技術(shù)支持幫忙。 記得周五那天演示給領(lǐng)導(dǎo)看時(shí),領(lǐng)導(dǎo)輕輕拍了我一下肩膀,說,“不錯(cuò),流程走通了”。心里甭提有多開心,這次任務(wù)給予了我足夠的信心,讓我繼續(xù)走程序員這條路。 02后來我成功應(yīng)聘到某集團(tuán)技術(shù)部擔(dān)任技術(shù)員,也是網(wǎng)站開發(fā),主要開發(fā)辦公OA系統(tǒng)和電子商務(wù)。 有段時(shí)間工作相對比較輕松,那時(shí)Android開發(fā)比較火,我正好買了一臺(tái)智能手機(jī),如果不能讓其實(shí)現(xiàn)資源最大化的利用,太浪費(fèi)資源了。 說來也巧,部門臨時(shí)來了個(gè)重要客戶單子,需要開發(fā)一個(gè)安卓app,由于公司主要業(yè)務(wù)不是做app,也就沒計(jì)劃招app開發(fā)人員。同事都是從事網(wǎng)站開發(fā)的,我剛好會(huì)點(diǎn)安卓,項(xiàng)目周期也算比較充足,領(lǐng)導(dǎo)就把這個(gè)項(xiàng)目交給我負(fù)責(zé),說實(shí)在,我當(dāng)時(shí)挺開心,正好給自己檢測一下這段時(shí)間的學(xué)習(xí)成果。 由于有一定的Android基礎(chǔ)和時(shí)間比較充足,讓我有更多的時(shí)間去查找相關(guān)開發(fā)資料,這個(gè)Android客戶端也順利完成了,客戶也比較滿意。 有些東西你只要用心學(xué)習(xí)去做,其實(shí)并不像你想象那么難。要敢于去嘗試,給自己一點(diǎn)點(diǎn)壓力,取得的效果是你自己難以想象的。 噴泉之所以漂亮是因?yàn)樗辛藟毫Γ黄俨贾詨延^是因?yàn)樗龥]有了退路;水之所以能穿石是因?yàn)橛肋h(yuǎn)在堅(jiān)持。 03職場上,請牢記,解決問題是我們的義務(wù)。公司請我們來的目的只有一個(gè),解決問題。對于領(lǐng)導(dǎo)安排的工作,千萬不要說“我不會(huì)”、“我做不到”類似這樣的話。 工作中要是遇到困難,這很正常,我們需要做的是主動(dòng)尋找答案和辦法,哪怕你的辦法不妥,那么就去問,但無論如何請不要對你的領(lǐng)導(dǎo)說,我不會(huì)。當(dāng)然特殊的需求除外,譬如什么接口都沒有就要,就要我們根據(jù)手機(jī)殼動(dòng)態(tài)更換App主題顏色。 有次聽見市場部的領(lǐng)導(dǎo)安排一位同事定一個(gè)大會(huì)議室,客戶下午要來討論需求。雖然是大公司,但要定個(gè)大的會(huì)議室是很難訂到的,弄不好還需托關(guān)系。這個(gè)同事問了樓層前臺(tái),前臺(tái)說沒有大會(huì)議時(shí),被其他部門定了,于是他跟領(lǐng)導(dǎo)說“前臺(tái)說沒有大會(huì)議室了,我訂不到了”,領(lǐng)導(dǎo)當(dāng)時(shí)就急了,“那怎么辦?讓我來定嗎?還是叫客戶不要來開會(huì)了?” 這位同事發(fā)現(xiàn)自己訂不到會(huì)議室后,首先要自己想辦法解決問題,向前臺(tái)說明此處會(huì)議的重要性,看看能否和其他部門協(xié)商一下,而不是直接向領(lǐng)導(dǎo)反饋“我訂不到”。 解決問題的能力是員工最關(guān)鍵的能力。在工作中遇到困難特別正常,在這時(shí),我們有一項(xiàng)義務(wù),就是找到解決問題的辦法,而不是制造問題。 04要想人前顯貴,背地里需付出更大的努力。大家都在同一個(gè)平臺(tái)下干活,智商其實(shí)都差不多,誰也不比誰高多少(當(dāng)然天才除外),大多拼的是用心程度。 一項(xiàng)任務(wù),你用心了,就有可能比人做得好。要是你原本就落后別人一大截,人家下班你也下班,人家玩你也跟著玩。試問一下,你拿什么和人家競爭?憑長相? 我們有沒有用心去做,領(lǐng)導(dǎo)一看就清楚,如果你想糊弄過關(guān),抱歉,領(lǐng)導(dǎo)并不傻。領(lǐng)導(dǎo)在判斷問題時(shí),標(biāo)準(zhǔn)其實(shí)也很簡單:
也就是我們平時(shí)所說的“超預(yù)期”。如果你每次都能給你的領(lǐng)導(dǎo)一個(gè)超預(yù)期的結(jié)果,那絕對是個(gè)好員工,頒發(fā)個(gè)最佳年度員工獎(jiǎng)都不為過,升職加薪指日可待。 作為員工,不管我們的工作能力如何,首先考慮的就是如何能夠讓領(lǐng)導(dǎo)認(rèn)可我們的工作。 想要讓領(lǐng)導(dǎo)認(rèn)可,就需要知道領(lǐng)導(dǎo)對我們的預(yù)期值。比如領(lǐng)導(dǎo)讓你做一個(gè)方案,方案周五要使用,如果你在周三或周四提前完成,這樣你就超過了領(lǐng)導(dǎo)的預(yù)期;反之,如果你在周五才完成,雖然你完成了安排的工作,但要是方案哪里出現(xiàn)不足,需要調(diào)整之類,這樣時(shí)間就會(huì)相對比較倉促,你在領(lǐng)導(dǎo)心中就會(huì)產(chǎn)生不好的印象,這對你以后的工作十分不利。 但程序員的崗位有點(diǎn)特殊,要是我們總是提前跟領(lǐng)導(dǎo)反饋任務(wù)已經(jīng)完成了,下次安排給我們的任務(wù)可能就加重了,如果我們自己負(fù)責(zé)的模塊提前的完成,這時(shí)我們可以自己先測試,提前解決已知bug,不用等到測試反饋。也不至于一給測試人員測試,問題就一大堆。要是真沒發(fā)現(xiàn)什么bug,可以利用這個(gè)時(shí)間多學(xué)點(diǎn)新知識(shí)。 如果對于領(lǐng)導(dǎo)安排的任務(wù)實(shí)現(xiàn)有問題, 應(yīng)該盡早提出,再根據(jù)領(lǐng)導(dǎo)的期望去有針對性地工作,從而給自己創(chuàng)造一個(gè)良好的工作環(huán)境。比如,當(dāng)你接到一項(xiàng)任務(wù)后,領(lǐng)導(dǎo)要是對任務(wù)沒有提出具體要求,可以根據(jù)具體情況主動(dòng)去和領(lǐng)導(dǎo)討論,將你自己的想法告訴他。在開始工作之前,提前和領(lǐng)導(dǎo)溝通你對工作完成時(shí)間的預(yù)計(jì)。 要是發(fā)現(xiàn)有困難,要及時(shí)反饋,比如,“根據(jù)我的工作經(jīng)驗(yàn),這項(xiàng)任務(wù)完成可能要比預(yù)期的時(shí)間向后延遲兩天”等,這樣在工作之前就讓領(lǐng)導(dǎo)心中有所了解,取得表現(xiàn)自己的機(jī)會(huì)或者避免因?yàn)橥瓿蓵r(shí)間的延后而給領(lǐng)導(dǎo)制造麻煩,同時(shí)也會(huì)建立起良好的信任關(guān)系。 05作為一名Android 開發(fā)人員,如何在面試中脫穎而出,找到自己心儀的工作?就個(gè)人觀點(diǎn)看,一般需要這樣的技能:技術(shù)扎實(shí),有技術(shù)追求和工作激情 ;良好的溝通和協(xié)作。 簡單點(diǎn),就是技術(shù)水平和溝通能力。其中技術(shù)始終是面試成敗的決定因素,技術(shù)掌握到什么程度才能相對輕松地通過面試呢? 一般來說,一場Android面試內(nèi)容不太可能全是Android的問題,應(yīng)該也會(huì)與編程基礎(chǔ)相關(guān)的問題。譬如數(shù)據(jù)結(jié)構(gòu)、算法和常見的設(shè)計(jì)模式要熟悉,比如單例模式、工程模式、觀察者模式等。至于數(shù)據(jù)結(jié)構(gòu)工作中不常用到,但還是要稍微了解下,能熟練掌握更好。 在工作中不斷提高自身技能,提高自身的競爭力。如果提高自身的核心競爭力,這里給幾點(diǎn)建議: 1、形成個(gè)人知識(shí)體系 工作中,我們的知識(shí)積累往往相對比較零散,需要我們思考匯總,從而形成自己的理解,圍繞自己的職業(yè)目標(biāo),去有意的獲取和提高自己的知識(shí)范圍,塑造有利于自己職業(yè)生涯的知識(shí)體系。 對于基礎(chǔ)知識(shí),要重視。比如Activity的啟動(dòng)模式、Service的啟動(dòng)模式、消息機(jī)制等,這種問題很多。這類知識(shí)點(diǎn),我們在開發(fā)過程中可能不會(huì)去太在意,這會(huì)導(dǎo)致一個(gè)問題,那就是開發(fā)應(yīng)用沒問題,但要是我們辭職了,去面試,要是在面試時(shí)面試官只要稍微問下細(xì)節(jié)或者特殊情況,可能就接不住了。 所以,平時(shí)開發(fā)中還是得重視。 2、形成個(gè)人方法體系 著名的PDCA循環(huán)(Plan\Do\Check\Action),也稱戴明環(huán)。PDCA是為了提高質(zhì)量的管理思想,是一套科學(xué)程序,注重管理活動(dòng)的全部過程。 “P”是PLAN:制定目標(biāo)和計(jì)劃。 《禮記·中庸》提到:“凡事預(yù)則立,不預(yù)則廢.”,說明了目標(biāo)和計(jì)劃的重要性。 很多時(shí)候,我們都是走一步算一步,缺少目標(biāo)的定制和計(jì)劃,認(rèn)為這個(gè)很虛,沒有必要,也就缺少對目標(biāo)的實(shí)施,到底完成了多少,實(shí)現(xiàn)了多少,還是那些未能實(shí)現(xiàn),是什么原因?qū)е碌?,都無從知曉。 “D”是DO:開始行動(dòng),實(shí)施計(jì)劃 很多人制定了計(jì)劃,可以說,計(jì)劃是相當(dāng)完美,可因見異思遷,三分鐘熱度,一時(shí)的激情過后就沒了動(dòng)力了。有位記者采訪通用公司前總裁杰克.韋爾奇時(shí),記者問:“請問韋爾奇先生,你們?yōu)槭裁茨艹晒?”,韋爾奇先生回答說“你們知道了,我們做到了”。很多時(shí)候我們都沒有勇敢的邁出第一步,總是想著這,顧慮那,慢慢就放棄了。 “C”是CHECK,對行動(dòng)的結(jié)果進(jìn)行檢驗(yàn) 行動(dòng)了,做了,要有個(gè)結(jié)果,對其結(jié)果是否滿意,思考下次方案是否可以改進(jìn)等。 “A”是ACTION.糾正錯(cuò)誤,調(diào)整方向.其實(shí)也就是總結(jié)、完善的意思 工作中,小到日報(bào),周報(bào),大到月總結(jié),季總結(jié)等。有總結(jié)我們才能更進(jìn)一步把工作做得更好。平時(shí)要要注意積累,比如寫博客等,這樣有助于我們對知識(shí)點(diǎn)更好的掌握。 3、明確的職業(yè)目標(biāo):對自己的職業(yè)生涯應(yīng)該有個(gè)目標(biāo) 階段性總結(jié), 制定合理計(jì)劃,實(shí)現(xiàn)階段性目標(biāo),對于那些沒能實(shí)現(xiàn)的任務(wù)要時(shí)常更新,卸載掉一樣沒用的,別讓包袱負(fù)擔(dān)太重。播下的種子,并不是都會(huì)發(fā)芽結(jié)果,但沒付出何來的收獲?業(yè)精于勤而荒于嬉,腳踏實(shí)地,切記勿好高騖遠(yuǎn),所謂 “慢工出細(xì)活”,相信總有一天會(huì)有質(zhì)的飛越,精益求精。 比如AIDL原理、Binder機(jī)制、多進(jìn)程、View的繪制流程、事件分發(fā)、消息隊(duì)列等。這類知識(shí)點(diǎn),需要我們不斷去探索實(shí)踐,運(yùn)用才能更好的解決問題。 我們平時(shí)如何積累面試中需要的技術(shù),閱讀源碼是一個(gè)不錯(cuò)的選擇,因?yàn)槊嬖囍械暮芏鄦栴}我們都可以從源碼中找答案,其次要主動(dòng)學(xué)習(xí)平時(shí)工作中遇不到的一些技術(shù),由于工作的原因,我們不可能通過公司的項(xiàng)目來解除到Android中所有的重要技術(shù),尤其是一些規(guī)模不大的項(xiàng)目來說,這個(gè)時(shí)候需要我們主動(dòng)去學(xué)習(xí)。 4、善意待人 在你往上爬的時(shí)候,一定要保持梯子的整潔,否則你下來時(shí)可能會(huì)滑倒。進(jìn)退有度,才不至進(jìn)退維谷,寵辱皆忘,方可以寵辱不驚。今日你面試他人,他人明日可能面試你,這軟件圈子,有時(shí)候說小還真的小。懂得善待他人,這也是我們提升自身競爭力不可忽視的一面。 【END】 |
|