天天看點

程式員每天都在使用的6個驚訝的軟技能作者:碼農網 – 小峰◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆

程式員每天都在使用的6個驚訝的軟技能作者:碼農網 – 小峰◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆

導讀

如果你想要開啟作為web開發人員的職業生涯,那麼你需要涉及的不僅僅是知道如何寫代碼。

有一些通用的軟技能幾乎可用于每個領域——包括技術行業。成為軟體開發人員涉及的不僅僅是編寫代碼。自從我開始我的第一份作為軟體開發人員的工作之後,我很快就知道了這一點。如果你想要在這個領域茁壯成長的話,那麼你需要學習“特定的技能系列”。

你看,每一家公司都有一個大局。除了寫代碼,你需要利用其他技能,使自己更有影響力,進而賺取更多的money。

在我作為一名開發人員的任職期間,我學會了除了程式設計之外還需要掌握的技能。下面我将分享6個令人驚訝的技能,作為一個有抱負的開發人員你一定不能錯過哦。

程式員每天都在使用的6個驚訝的軟技能作者:碼農網 – 小峰◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆◆ ◆ ◆

技能1、書面溝通

在開始每天的工作之前,你可能需要先回複郵件。電子郵件迅速成為了生産力的死亡陷阱。與此同時,電子郵件也是展示你對别人有多大價值的門戶。書面技能依然是事實業務溝通的領頭羊。

既然書面溝通技巧是如此之重要,于是我花了很多時間來掌握發送電子郵件并快速得到回複的技術。

我所有的電子郵件不但設計友好,而且會盡快切入正題。這是我在郵件中要求技術需求的4個步驟:

感謝對方發送電子郵件。這适用于每封電子郵件。例如:感謝你與我聯系。

強調他們的要點并說明你已了解。例如,“如果我了解正确的話,你是想……”。

提出問題,以確定你了解他們想要什麼。

在他們回答你的問題之後,按照步驟2的方式回複以确認你了解的内容。

這些步驟将提前節省你大量的時間,讓你突出于那些沒有做到位的人。書面交流是開發者武器庫中一項最被低估的技能。當然要想正确表達自己的想法需要多年的實踐,但用好這個武器往往會有“殺人于無形”的奇效。

技能2、教學相長

如果你是一個初學者,那麼你可能認為你沒什麼可以教人的。但現實情況是,你也許可以。

當我開始我的第一份web開發工作時,我認為我需要花更多的時間向别人學習。但不是所有的情況都是如此。事實上,我做到了學習與教學的結合。我們公司已決定從svn轉移到git。而我得到這份工作也是因為我的主要賣點就是大量的github代碼倉庫。

當我加入的時候,我發現這是一支正在蓬勃成長的團隊,并且轉移到git對于我們而言是有壓力的,因為它是一個更好的協作工具。

這真是一個超現實的體驗,因為,這是我人生中第一次不得不用标記來武裝自己以及在白闆上畫圖。雖然隻是一些簡單的圖表,用來示範git是如何工作的以及它如何與github互動。還有解釋如何最佳利用分支。

請記住:這隻是在公司待滿一個月之後。從那以後,我一直是頭腦風暴會議的一部分,解釋rails中一切的工作原理,從會話到嵌套表單。

在你第一份開發工作中,通過教學,你可能最終會給人一種你比他們更知識淵博的印象。即使你不認為自己是“專家”或“進階開發者”。

在每一家公司裡,總有共享的知識池。當我教人的時候,我會對此作出貢獻,同時帶走别人的經驗和見解。

基本上說來,每個人都會貢獻自己的經驗和觀點到這個知識池中。而這便是大規模的教學相長。

技能3、專注

任何職業,無論是畫家還是作家,專注于小細節才有可能一步步累積至偉大。如果你想産出令人驚豔的工作,那麼你得小心注意并調整方法。

如果你對細節的關注還不到位,那麼關鍵是要具備處理專注的能力。

完全專注于一項任務的能力在我們目前這個世界裡是呈現遞減狀态的。twitter,facebook和reddit正在不斷誘惑我們的注意力。cal newport在他的《deep work》一書中指出,為了有一個有影響力的就業,人們必須放棄淺層的工作并擁抱深層的工作。

淺層工作被定義為隻有短期利益的工作。例如,你可以花一天用來撰寫和回複郵件,但會是以而錯過深層工作。深層工作是需要全神貫注并最終導緻實際成果的工作。

作為一個開發者,這個技能不能被低估。我們的工作是建立有用的東西。而創造有價值的東西是需要大量時間的。少一點消費者的心态,多一點生産者的心态。

可能會有用的一種技術手段是番茄工作法。

下面是它的工作原理:

設定25分鐘的定時器

專注于一個任務25分鐘

25分鐘結束後,休息5分鐘

任何浮現出來和任務無關的想法,你可以先寫下來以便于以後來關注。

你重複循環四次(或更多)

這種技術之是以偉大是因為它使你一次專注于一件事情。它可以幫助你産出更有意義的工作,而不是每隔幾分鐘檢視twitter或facebook。

技能4、了解大局

那些主要産品圍繞代碼的開發人員需要執行一種小心以及平衡的行為。一方面,從釋出到産品來幫助企業成長。另一方面,你要保證不會給你将來的同僚留下難以維護的代碼。而且以及當然,使用者也得享受于軟體。

但是,首先,此刻你能做的就是編寫代碼。當你開始作為一個開發人員提高自己的時候,你将——回過頭去重構原先的代碼。讓你的軟體更适應将來在上面工作的開發人員。

有一個偉大的概念是dry(don’t repeat yourself)原則。其基本思想是寫一個隻需要改變一次的代碼片段,如果你決定将來更改它的話。這種方法既是程式員的福音,也有利于企業。

然而,所謂的大局并不僅僅涉及到代碼。大多數的大公司遵循peter drucker的原則。如果你學過mba,那麼你一定聽說過peter和他的管理原則。如果沒有,那麼建議閱讀他寫的書。

peter對西方公司産生了深遠的影響。他提出的最重要的概念之一是成本中心和利潤中心。在銷售和市場營銷工作的人被認為是企業的利潤中心。他們增加收入。必須控制企業成本以最大限度地提高收入。作為開發人員,你既可以是利潤中心也可以是成本中心。

管理你的職業生涯的最佳方式是了解你适合企業内部的哪個位置。這會附加你的價值,并讓你的職業生涯走得更遠。

技能5、社交技巧

許多人認為,像google這樣的公司創造了一種從自上而下的文化。不過,你和你的同伴也在建立文化。而培育這種團隊範圍的文化的最佳方式是通過你自己的社交技巧。

回想一下你的現實生活,而不是工作生活。你的朋友圈中有沒有這樣一個人是每個人都期待看到的?他們的存在可以帶來歡笑和深刻的讨論。他們不傳播流言和謠言。在有人需要幫助時他們會及時伸手。總而言之,他們被描述為是一個夠意思的哥們或菇涼。

這樣的人也存在于工作場所,而你的目标應該是嘗試成為那樣的人。成為一個每個人都期待看到的人。建立用一種建設性的心态說出意見的勇氣。這與你認為自己是一個内向或外向的人無關。

慢慢的,你的事業、你的技術技能将和這個領域中的其他人相同。但是如果你想在職場中獲得成功,那麼你需要成為團隊成員。你必須能夠和他人交流,能激勵他人,并值得信賴。因為在一天結束時,如果你不能與别人進行聯系,那麼你将永遠無法讓别人接受你的想法,無論多大或多小。最終你隻能接受其他人的想法,而不是給出你的想法。

技能6、發現并處理問題

程式員的作用是解決問題。但要解決問題,首先必須去發現問題究竟是什麼。

世界上最容易的事情是記住一堆指令或複制和粘貼在stackoverflow上的代碼。真正的能力是知道發生了什麼事的大局觀。如果你正在解決工作中的一個大問題,那麼最好是把它分解成微小的可編輯的片段。

先檢視問題本身。想想代碼試圖解決的問題。

它使人更容易購買嗎?

它做報告嗎?

建立這個軟體的目的是什麼?

然後,看一下目前的解決方案(如果存在的話)。最後,考慮目前的解決方案是如何解決這個問題。(如果它能解決的話)。

一旦你高度概括了這個應用程式,那麼你就可以進入應用程式的功能部分。利用問題、解決方案和細節技術來進一步分解問題。這些架構步驟幫助我了解了不同的開源項目,例如disourse。

結論

某些工作技能是普遍的,無論你是不是在高科技職業。例如,溝通和團隊合作。我真心希望我能在幹第一份web開發的工作之前就意識到這些軟技能的重要性。

原文釋出時間為:2016-06-13

本文來自雲栖社群合作夥伴“大資料文摘”,了解相關資訊可以關注“bigdatadigest”微信公衆号