1. 程式人生 > >程式設計師也需要的軟技能,既為了生存,也為了早日財務自由

程式設計師也需要的軟技能,既為了生存,也為了早日財務自由

  最近讀了一本不是程式設計的程式設計師技能書《》,全書分為7個篇章,分別是職業、自我營銷、學習、生產力、理財、健身和精神。其中在讀過職業、自我營銷和理財這三個篇章後,讓我非常有感觸,也讓我很意外,本來以為國外的軟體環境會與國內不同,現在看來很多情況都很類似。下面會著重圍繞這三個篇章展開討論。

一、職業

1)像企業一樣思考

  大部分人(包括我在內)都是抱著打工者的心態在企業上班,這並沒有什麼錯,只不過正像作者所說會固化自己對職業生涯的思維方式,從而將自己束縛住。接著作者提出像企業一樣思考,企業需要有能夠賺錢的產品或服務,而大多數程式設計師賣的正是開發軟體這項服務(即把一個想法變成一個數字化的現實產品),在宣傳這項服務時,不僅要傳達它所具備的有形價值,還要傳達它與其他成千上萬款同類服務有何不同,必須讓潛在客戶瞭解該服務。你需要規劃自己的職業生涯,注重自我營銷,設法提升你的服務,專注為特定型別的公司或行業提供服務,集中精力成為一名專家。

2)改善人際交往能力

  很多人對程式設計師的印象是木吶,不善言談,這可能與我們的工作有關,程式設計師常和計算機打交道,喜歡安靜的寫程式碼,醉心於數字世界。但事實上,所有的職業都是與人打交道,包括程式設計師,例如開會、收發郵件、需求討論等。由此可見,改善人際交往的能力至關重要。作者介紹了一些應該瞭解的能提升該項能力的基本概念:

1、要意識到每個人都是以自己為核心,並且都覺得自己最重要。

2、永遠不用批評別人,管住自己的舌頭只說些鼓勵的話。

3、換位思考,對他人而言數碼才最重要,什麼才是他們需要的。

4、避免爭吵,學會控制和隱藏負面情緒。

3)破解面試之道

  作者大膽的提出大多數面試官決定僱傭某個人其實是基於各種各樣的非技術因素,當多個技術過硬的技術人員競爭同一個崗位時,決定勝負的最大因素已經不再是技術能力了。通過面試最快捷的方式是讓面試官對你有好感,達成該目標的方法大多數可以在面試之前完成。接下來作者提出了幾個新穎的方法:

1、花時間研究這家公司,找出這家公司技術人員的部落格,在文章中留下深思熟慮的評論,讓這些人認識你。

2、從期待加入的公司中找到介紹人,與他建立友誼從而獲得推薦,作者為了接近公司的經理,就加入了他所在的俱樂部,從而認識了他。

3、面試的時候,要集中精力證明自己是無需督促就能自動自發做好事情的員工。

4、當下可做的是閱讀技術書籍和部落格文章,並花時間提升自己的技能,或者未雨綢繆,拓展自己的社交圈子,認識本領域的其他技術人員或招聘人員。

4)軟體開發人員

  在一個專業方向上擁有專長,不要擔心成為專才後,潛在僱主和客戶群會變小,也不必擔心市場會過渡飽和。因為專業化程度越深,獲得這些機會的可能性反而會越大。例如專攻Java Web開發棧,也許會把工作機會降低到50個,但可供挑選的機會依然很多,同時因為現有的技能和知識都是針對這些工作的,於是獲得這50個工作中的某一個的機會反倒會增加。

  作者給出的專業領域分為Web開發棧、嵌入式系統、作業系統、移動開發、框架和軟體系統。下面列出一些技巧來選擇自己的專業:

1、公司裡有哪些主要痛點?你能成為一名專門解決這些痛點的專家嗎?

2、有沒有一種特定的工作是無人能及,或者缺乏經驗豐富的人?

3、在各種會議上和使用者組中哪些話題最常出現?

4、哪類問題你回覆的最多?

5)公司

  小公司和創業公司通常關注快速增長,竭盡所能讓公司盈利,或者達成其它一切迫切目標。這類公司的程式設計師通常要身兼多職,不能只寫程式碼,角色不固定,需要靈活多變。你所做的事情可能影響更大,如果你樂於看到自己的工作成效,那麼小公司無疑是最佳場所。但小公司不穩定,隨時面臨倒閉、發不出工資或裁員等情況,不過從長遠來看,潛在的回報會很大,升職率會高很多。選擇小公司的理由是喜歡那種快節奏、令人興奮的工作環境,希望構建偉大的產品並見證它的成長。

  在中等規模的公司裡,角色定義明確,會更穩定,工作節奏有點慢。你的貢獻可能不會導致公司業務下滑或波動,但仍然能被注意到。公司厭惡風險,行事緩慢。如果你喜歡使用前沿技術,將很難受到老闆的賞識,因為風險很難評估。

  大公司都有深厚的公司文化,滲透到公司各個方面,CEO都是社會名流,可望不可及。大量的規範和流程,面試一家大公司時,需要經過一系列面試。在大公司工作,要遵守這裡已有的做事方式,魯莽和變節者在這裡不受歡迎。在大公司工作會有很多成長機會,例如培訓、各種自家的軟體產品可供使用、就業指導、內部學習等。對大公司而言,技術創新是很常見的,給市場帶來真正了不起的產品。程式設計師在大公司工作,個人的貢獻無足輕重,容易隱藏在芸芸眾生之中。大公司通常有著複雜的政治體制,堪比大型政府機構,程式設計師應儘量避開辦公室政治。

6)晉升

  作者給出了一些攀登晉升的建議:

1、要脫穎而出的法寶就是承擔更多的責任,例如主動尋找機會負責一項沒人願意碰的遺留應用,或是成為團隊中其他人的導師。

2、引人注目,作者每週會發週報(討論一週取得的成果)給他的經理,確保被他注意到。或者在團隊中演講,在會議上發表意見。

3、自學,不斷增加自己的技能和知識。報名參加培訓課程,或考相應的資質證書。眼光更遠一點,學習領導力、管理和商科的相關知識。分享自己的知識,建立部落格、為雜誌寫文章或寫書,還可以在社群活動或技術大會上發表演講。外部曝光有助於建立自己在該領域的權威地位。

4、成為問題的解決者,在任何公司中,最有用的就是那種看似沒有克服不了的障礙的人。

7)建立第一個產品

  作為軟體開發人員,你不僅能夠開發軟體產品,還可以開發書籍和視訊這樣的資訊產品。

1、如果你想開發一款產品,第一步應該是篩選出一組特定的受眾。去客戶常去的地方,多做調研,找出沒解決或沒被很好解決的問題。

2、通過測試市場來驗證你的產品,看看潛在客戶是否願意為它買單。例如建立銷售網頁,講述產品的內容、功能等,提前預訂就能打折等。

3、從小處著手,作為副業開發你的第一個產品。

8)簡歷

  簡歷和旅遊小冊子一樣,都是廣告,最終目的就是讓人們心甘情願掏錢。如果你的簡歷跟大多數程式設計師的簡歷一樣乏善可陳的話,你得花點功夫改良。

  簡歷如此糟糕,原因很簡單,你不是專業的簡歷寫手。因此,你可以僱一個人為你代寫。首先要尋找一名可靠的代筆者,並確保準備了他所需的所有資訊,你請他主要是做兩件事:

1、為你的經歷做一個文字優美引人入勝的廣告,令你看起來光彩照人。

2、讓這份廣告看上去裝幀精美,格式賞心悅目。

  給他們提供儘可能多的資訊,他們會把資訊整理、提煉出來,從而可以高效地把你推向市場。如果不想僱簡歷寫手,那麼你可以把簡歷掛在網上,製作一份線上簡歷,試著給簡歷新增點獨特的創意(例如做成可玩的視訊遊戲),以吸眼球的形式呈現,請專業的平面設計師把簡歷設計得非常流行。

二、自我營銷

1)如何自我營銷

  自我營銷從打造能代表你自己的個人品牌做起,最突出的還是個人部落格,這是一個你完全能夠控制資訊的地方。還可以建立自己的播客頻道,上傳自己的課程視訊,給軟體相關的雜誌投稿,參加程式碼營,在技術大會上發言等。隨著時間的推移,你所寫的每一篇博文、每一期播客,都有助於營銷自己,提升個人品牌和知名度。最終你在這個領域成為了權威,就擁有了追隨者,這些聲望轉化為更好的機會,最終成就你的事業。

  自我營銷的基本機制:要想讓人們追隨你、傾聽你,你就要帶給他們價值,例如為他們的問題提供答案,或給他們帶去快樂。

2)建立大獲成功的部落格

  如果你播客的流量足夠大,你可以把他作為推銷自己產品的平臺。如果有穩定的訪問使用者,那不妨圍繞他們的興趣開發產品,將流量直接轉化為客戶。

  打造成功部落格的最大祕訣是持之以恆。定好一個計劃,然後堅持不懈,每週至少更新一篇的速度更新部落格(有點難度,我從開通部落格到現在也才169篇隨筆),一年就會增加52篇文章,文章寫的越多,來自網際網路搜尋的流量也就越多。還要確保你寫的都是高質量內容,質量越高,越能吸引人持續瀏覽你的部落格,或者通過RSS訂閱。網站內容品質越高,越有可能被社交媒體分享,連結到部落格的網站越多,所帶來的流量就越多。

  剛開始的時候,部落格基本無人問津。提升訪問量的第一個策略是在其他人的部落格中寫下有意義的評論,只要有機會就連結到自己的部落格上。另外一個好辦法是在社交網路上分享你的部落格文章,在你的電子郵件簽名的地步以及所有線上個人主頁新增你的部落格連結。最後,如果認為自己的文章足夠優秀或富有爭議,可以把自己的文章提交到社交新聞網站。

3)為他人增加價值

  先弄明白別人的真實想法,他們的興趣點,這就得通過現象看本質,然後找到方法來提供自己的價值,例如在網路論壇上找相關的話題,分析行業的整體趨勢,瞭解最重要的,人們都在害怕的東西。

  把工作成果的90%都做成免費的,作者每週寫三篇博文,釋出一個YouTube視訊、兩期播客還有其他一些內容,這些全是免費的。免費內容比付費內容更容易被分享。免費會讓人們對你心存感激之情,贏得為他人提供價值的聲譽,也為自己的未來創造機會。贈人玫瑰,手有餘香,幫助別人越多,面對的問題和情況越多,能結交的人也越多,在解決自己問題的時候將更加輕鬆自如。

4)社交媒體

  要想用好社交媒體,首先要給自己積累足夠多的粉絲,或者讓人們進入你的社交網路,最容易做到的就是關注他人,或者邀請他人加入你的網路。你對別人感興趣,別人會對你更感興趣。也可以把個人主頁的連結放在你的線上介紹、部落格文章的結尾或者郵件的簽名檔中,通過這些方式獲得關注。大多數情況花錢買的偽粉結果都是打水漂,因為他們並不代表真正的人群。

  在社交網路中釋出你認為有用或有趣的。確保你釋出的內容一直保持在較高水準上。作者每週都會把認為有用的資訊整理為一份內容集錦,藉此吸引人們在社交網路上關注他,這份集錦通常包括部落格文章、新聞報道、勵志名言、與軟體開發相關的小技巧等,同時提出一些問題來挑戰關注者,促使他們與作者對話。

  如果你不能持續不斷地在你的社交媒體上保持足夠的活躍度,你將會丟掉大量粉絲。作者會使用Buffer工具,一次性安排好他的社交媒體更新計劃。要自我營銷,就需要在各大主流社交網路上佔有一席之地,作者推薦Twitter(相當於國內的微博),可以在一條推文中提及別人,甚至是相當有名的人,並且有較高的概率獲得回覆,Twitter也是分享部落格文章和科技相關新聞的好地方,對字數的限制能保持對話簡短又切題。

  作者還推薦LinkedIn,面向專業人士的社交網路,在LinkedIn上可以建立自己的線上簡歷,與其他專業人士建立聯絡。它是社交和專業內容的優質渠道,部落格文章能夠準確直達目標受眾。還能使用群組功能直接和目標群體建立聯絡。

5)說話的極客

  聽過你演講的人更容易記住你,也會覺得與你建立了某種個人聯絡。當你在大會發言時,你能夠直接回答現場聽眾的問題,讓他們參與到你的演講中。這種互動方式能夠迅速建立起人群對你的大量信任感,能幫你收穫粉絲,促進資訊的傳播。從小規模的場合(例如公司內部的分享會、程式碼訓練營)做起,逐漸完善你的演講技能。要想能在公眾面前從容自如地發表演說,需要很長時間的刻苦練習。

  無論是現場培訓或錄製培訓,都是建立自己聲譽的另一種很棒的方式,甚至還能賺點錢。現在,幾乎每個人都可以提供某種形式的線上培訓課程,剛開始的時候,在免費視訊網站上通過建立截圖視訊的方式做分享,提供免費培訓是提升自己品牌的絕佳方式,最終頁可以為自己建立的內容收費,例如與培訓公司合作、或者直接在網上銷售等。

6)著書立說

  一個人通過寫書可以收穫極大的信賴,如果某個人就某一特定主題寫過書或發表過文章,那麼他們就可能是這方面的專家。一本書就像是一輛滿載的貨車,可以以非常具有針對性的、聚焦的方式傳達你的資訊,你會長期被讀者關注。讀完一本書需要10~15個小時,很難找到別的媒介,讓人投入這麼長的時間去傾聽你的資訊。通過一本書,你能將自己想要表達的資訊完整無誤地呈現給你的讀者。

  你不會為了賺錢而去寫書,寫書是為了提高自己的聲譽。通過一本書獲得一筆可觀的收入是很罕見的,而且作者只能獲得收益的一小部分,時間和精力成本與酬勞並不能成正比。但通過出版,你能獲得更廣泛的知名度和聲望,出版的書籍會間接帶來其他的賺錢機會。

三、理財

1)薪酬談判

  薪酬談判的能力很大程度上受聲望的影響,你的名字越為人知,你在談判時掌握的主動權越大。打造開發領域的名氣,基本策略就是儘可能讓自己的名字出現在各種的媒體上,寫部落格、做播客、寫書或文章、在大會或使用者組中發表演講、製作視訊教程、為開源貢獻程式碼等,盡一切可能讓自己的名字出現在各種場合。

  影響薪酬談判的第二大因素是獲得工作的方式,第一種是看到招聘啟事,自己發簡歷過去,這是獲得工作最糟糕的方式。因為和僱主比起來,你處於明顯的弱勢。需求最大的人在談判中通常都會處於劣勢。第二種是他人推薦,這種方式要好很多,未來的僱主可能並不知道你在積極找工作,因此你的需求被認為不那麼急切。而且,因為你有了推薦,所以你已經具有了一定的可信度。推薦人在公司的聲譽越高,你的可信度也就越高。這種可信度會大大影響你在入職時的薪酬談判。

  先出價的人會處於明顯的劣勢,先出價,你就無法繼續加價,卻給了對方壓價的空間。雖然沒有上漲的空間,但卻有下調的可能。如果被問及你的期望薪酬,那麼空著不填或者填寫面議,或者說這取決於貴公司的整體薪酬方案,包括福利,試著儘可能繞過問題。如果你不得不先出價,那就給出一個跨度很大的範圍,並且以整體薪酬方案為條件,但要確保該範圍的最小值略高於你心裡價位的最低值。當被問及當前薪酬時,還是要繞過問題,例如可以回答“因為我於現在的僱主簽有保密協議,不能與其他人討論具體的薪資數目”。

  儘可能詳細的研究一下自己求值公司的薪酬範圍,再利用一些網站來獲取該職位在市面上的薪酬範圍。調查工作做的越好,談判起來越容易。如果你能說出準確的數額範圍和統計資料,表明自己要求的薪酬相當合理,就會處於有利地位。

2)期權

  創業公司經常以期權作為噱頭,吸引其他人加入,那什麼是期權呢?期權就是允許某人在未來的某個日期買入或賣出股票的權利,要想獲得期權就得花錢,例如可以購買在未來購買微軟股票的選擇權,但是為了購得這項權利,你必須支一定數額的權利金。如果交易得以繼續進行,你就購得了在未來3個月內的任何時間購買300股微軟股票的權利。將來當微軟股價高於你買入期權時的價格你就可以以當初約定的價格購買股票,並從中賺取鉅額利潤。

3)房地產投資

  投資房地產的最大原因是穩定性。作者建議投資的是可租賃房產。這種房產的穩定收入就是租金,租金不會明顯波動,所以優質的房地產會一直是優質的房地產。即使租金有變化,通常也是上漲而不是下跌。總之,如果你購買的房產用於出租,並且每個月按固定貸款利率還款,那你從這一房產中的收入就會非常穩定;你可以利用銀行的前支付購買房產所需的大部分費用,從而讓自己利用資本負債獲得高額回報;如果遇上通貨膨脹,你的房產投資可將資本負債作為對衝工具從中受益。

4)33歲財務自由

  作者每天白天工作8小時完成日常工作,每晚花四五個小時製作Pluralsight課程,在兩年半的時間裡,建立了60節課,其中55節正式釋出,錄製的教學視訊足夠24小時不間斷地看上一週。在此期間,還堅持每週更新一次部落格,開播了一檔關注開發人員健身的播客,開始每週製作一期視訊釋出到YouTube上。這是,作者開始擁有源源不斷的多個被動收入流,部落格也開始通過廣告和加盟銷售賺錢,還出售自己編寫的跑步應用的Android和iOS版本,並且在房地產投資商業看到有幾個月出現了正向的現金流。於是,作者寫郵件告訴他的老闆,他要辭職,不再上班,他自由了。