search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

在 CTO 眼裡,什麼樣的程序員是更值得信賴的?

編輯|小智

「 閱讀原文 」,獲得簡訊提醒,不錯過下次 InfoQ 大咖說直播!

回復: 核心 ,獲取視頻下載。

平衡個人成長和公司效率

我的個人經驗來看,互聯網公司分為兩種:一種是獨角獸公司,另一種是創業公司。當你在創業公司的時候,公司給你的 title 可能不是太得到市場的認可,這就要求你和公司一起成長,當公司成為這一行業裡面的獨角獸的時候,你也同時會得到市場的認可。公司的發展和工程師的個人成長的成長是相輔相成的。

從程序員的角度來想,個人考慮的大多數是如何漲工資,如何提高個人技能,或者獲得一些資格認證,然後來證明自己的獲得成長,一步步走向成功。

在公司層面來看,一是希望每個小夥伴都能成長地更快,這樣做事的人感覺到成就感,人才自然而然就留下來。二是做事的效率和結果。一般公司也會經常組織進行技術分享會、內部交流探討會,鼓勵大家申請技術專利等,或者給予一些參加技術大會的門票福利,如 QCon、ArchSummit 等大會。這樣小夥伴得到成長,提高效率把公司業務發展得更好。達到一個平衡,也是雙方的共識。

90 后程序員

其實最開始創業的時候,內心覺得 80 後會比 90 后更能拼,二次元溝通困難。輕鬆籌開始從校招之後,我們發現很多 90 后小夥伴挺能拼的,經常加班到很晚。做事情也很積極主動。

如果你是一個新手程序員或者是剛剛進入互聯網行業不久的 90 后程序員,其實你不必擔心,你只需要一步一步穩紮穩打地做。當你找不到方向的時候,你可以從網上找到權威的網站 InfoQ 或者是技術大會,你只需了解一些關鍵詞,看看他們的方向,然後做深入研究。最重要的是花大量的時間在這上面,並且持續投入。最近有個很流行「一萬個小時」的理論。就是你在這個很專業的領域持續投入一萬個小時,刻意練習后你就能達到一個很成熟的程度,大約就是三年的時間你就可以成長起來。

當然 80 后做事穩重、更加成熟、經驗豐富。他們會幫助這些 90 后小夥伴更快的成長起來,90 后小夥伴也渴求得到指點。有的 90 后小夥伴也慢慢逐漸有了獨立完成任務的能力,成為了團隊的中堅力量。

技術選型

輕鬆籌前端框架有基於 Vue、React、還有自己研發的一套已經開源的框架 H5UI.IO,後端框架使用的開發語言是 Golang,我們是在 15 年下半年使用 Golang,之前使用的是 PHP,2016 年經歷過一次高峰期,我們切換到能夠扛高併發的 Golang。PHP 是 CPU 消耗型,所以當時用 PHP 成本非常高,還有語言的特性本身有一些局限,比如說要寫一個連接池或者守護進程都很麻煩。

當時考慮 Go 語言的語言特性自身就支持協程,支持高併發,I/O 消耗型,所以當時決定選型用 Golang 的時候,在比較大的併發和流量的頁面,比如眾籌的一個詳情頁面,然後發現用 GoLang5 台機器幹了 PHP 用幾十台機器乾的活,機器還沒有壓力,所以試驗了一段時間,發現 Go 語言比較好,當時我們用 1.5 就開始做了 (這裡指 Go 語言的版本號),現在 Go 語言都到 1.9,已經比較成熟,很多創業公司從一開始創業就直接選擇 Golang。

我覺得產品初期或者創業公司初期,技術負責人選擇自己最熟悉的語言是最好的語言,用 PHP 做東西快就用 PHP,用 Golang 快就用 Golang,因為項目初期可能更多要求的是這個趕快上線,每種編程語言都是需要你投入時間去深耕的,或多或少都會踩各種各樣的坑,所以在技術選型上用哪一個語言,就是在你適合的時候選擇合適的語言。

關於系統重構,如果你是一個負責任的人,你可以把舊的東西推倒重做,不建議為老代碼填坑。如果想做好這個事情。初期可以先在一些邊緣業務嘗試,不用提前和產品、運營溝通新型技術,他們可能會覺得會影響到進度或者不穩定因素來阻止你。最好是等上線一段時間后,再開始跟非技術人員講,或許他們並關心技術如何實現,只要結果好就行。關鍵是要保證好項目進度。做好備用方案,如果新架構執行失敗,那就加班在原有的基礎上完成新的任務。

個人轉型

我覺得大齡程序員還接著干,是因為喜歡寫程序這個事情。如果你現在不是因為喜歡代碼而是在養老,那麼可能就會逐漸失去競爭力。

不要因為最近哪個技術火就盲目選擇,到底做設計、前端、後端、人工智慧或者大數據,這都取決於你的個人因素。如果你是一個喜歡做一些看起來很酷的事情,那麼做前端比較好,如果你是一個邏輯思維比較清楚而且有點內向,那麼你適合做後端。這都完全取決於你個人。

對於不在互聯網行業的同學,比如有數學或者統計學方面的功底,可以嘗試轉型做互聯網大數據,對黑客方面有所研究的,可以轉型做互聯網安全方面。如果你有這樣的機會,初期不要要求太高薪水,要耐得住寂寞,三年時間你就可以在這個行業站穩腳跟。

公司方面

程序員最熟悉的 996,可能在大多數互聯網公司已經司空見慣,當然也有很多彈性工作時間,周末不加班的公司,公司從實際的角度來講是以結果來衡量程序員的,所以不必追問中間過程環節,但是一些特殊項目或者重要時間節骨眼,公司也可能會要求 996。目的是為了把公司的運轉效率提高。

程序員和架構師在創業公司沒有分的那麼清楚和嚴格,都得寫代碼,因為創業公司人比較少,有可能是看上你可以一個人頂 10 個人用,所以還得看創業公司為什麼邀請你,看重你哪方便的個人能力。

優秀程序員身上重要的特質

一、聰明,大部分人都喜歡和更聰明的人一起工作,聰明人理解事情的程度、做事的方向、察言觀色等方面都出色。

二、積極主動,不管是個人的生活態度還是工作態度,都是充滿陽光的,甚至能給別人帶來正能量的人。

三、責任感,如果公司網站出故障,不管是不是自己平時負責的,都能主動嘗試先去解決問題。

四、完美主義,代碼結構非常清晰,一旦決定做一個事情,會自始至終把這件事做到極致。當寫完代碼會再次 review,而且會從別人角度來審視代碼,自測也是一個非常重要的環節,完美主義者 bug 是很少的,在別人心中是一位「老司機」,對自己也要求非常嚴格。

程序員也需要高情商

情商高低標誌一個人對別人關心的程度。講述三個方面的情況:

1、溝通協作

做一個互聯網產品,需要很多角色的齊力協作。現在已經不是一個能單打獨鬥的時代,對整個團隊來說,你的口碑更好,別人也會更願意和你合作。別人覺得你更靠譜,後面有合作也會主動來找你。就是俗稱的「人緣好」。

如果遇到隊友代碼很爛,當著別人的面羞辱一番,可能一時痛快,後面可能所有隊友也會對你有所距離和謹慎。好的方式是你可以一個產品升級的時候提出重構項目,之後對這個項目有了主動權,選擇一些更優秀的人和一起協作。

2、做事方式

一些程序員不愛講話,在自己的舒適區域埋頭苦幹,做一個事情也很少講出來,是很吃虧的。既然已經辛辛苦苦把一個事情做了,至少總結或者記錄下來,拿出點實際的結果數據或者事實,這樣你在團隊合作的結束後會給人留下很深的印象。

3、技術管理

成為一個好的技術管理者,特別是遇到一個問題,會去分析問題原因,找誰來解決問題,最後有人總結出問題的本質,避免再次發生。管理團隊需要因人而異,找到一個合適的人來做這件事非常關鍵,如何引導和激勵團隊成員,需要具備良好的溝通能力,從別出拿過來的需求是否也理解透徹,不要把團隊成員帶到一個錯誤方向。

另外程序員可以參加一些 meetup,可以給自己找到一個更寬廣的社交範圍。這樣生活更加與眾不同。

與產品經理共同打造一款成功的產品

互聯網公司主要考慮的第一個因素是用戶,不管你做什麼,互聯網最關注的是你的用戶,你的用戶需要什麼,你就去做什麼,而不是說我們想一個東西,讓用戶來適應我們,而是我們去了解用戶真實的需求,去幫助他們解決一個問題。

第二個因素就是你的團隊,互聯網最重要的就做事的人,大家齊心協力去做一個事情,不管是產品、市場還是技術,大家都是出於一個目的,就是為了把這個產品做出來,用戶給你好口碑,大家做這個事情很有成就感,同時自己得到了一個成長。

在整個過程中,邏輯是技術服務於產品,產品服務於用。但在這個環節,或多或少和產品有一些摩擦,但是我個人更看好的是和產品有更好的溝通,當我做技術編程角色的時候,更多的是和產品一起去探討,初期討論產品需求的時候,一起加入產品一起去探討,怎麼做更好,邏輯該怎麼寫,怎麼更符合用戶體驗好一些。程序員天生邏輯性思維比較強的,而且比較保守。這樣產品和技術剛柔結合起來,對最終產品的打磨更少出錯。

理解產品需求

程序員需要了解產品需求的本質,一種是最小化可行性產品的需求,最開始只是做一個實驗性的東西,然後一個逐步迭代的過程,需要不斷地去嘗試,去迭代,去引導用戶。然後找到用戶真正的剛需,驗證這個需求是不是一個自己「意淫」或者「偽造」出來的東西。這種情況下我建議技術一定要和產品多溝通,最開始你參與進來和產品探討,成為這個產品成員的一份子,後期這個方向不對或者甚至砍掉不做了,程序員也能明白其中的原因,同時樂在其中,最後大家一起其樂融融往同一個方向走。

另一種產品需求是邏輯關係複雜和嚴謹的,已經給你考慮到會出現 N 多種情況,各種錯誤提示及文案都一一俱全,這樣程序員看到找不出有什麼邏輯漏洞,只好照辦。技術最終實現了產品,如果最終的實際效果不好,這時候技術就會覺得不爽,會覺得自己身上一點問題也沒有,其實技術在這樣的情況下也是有責任的,技術要勇於說「不」,可以說好的產品大道至簡,舉一些實際成功案例來引導「產品」。

我覺得第一種模式是最好的(看美國大片,首先一般會遇到一個難題,然後找到自己的 team,中間出現一些小分叉,然後克服困難、同心協力,最後暴擊大 boss,取得成功),大家共同參與進來,一起去探討,然後一起共同去做,如果出了問題也有自己一部分的責任,往任何一個方向改變,也是大家共同的意見。後期出現什麼問題都好溝通,這樣其實產品和技術更和諧,形成一個精英團隊,程序員和產品需要一起去打磨和成長,大家形成一個利益共同體,一起暢想未來,一起提出問題一起解決。

產品和技術「撕逼」那些事

產品和技術爭辯一個事情怎麼去實現的情況,時常都會發生,或多或少都有爭鋒相對的意思,其實主要看是在什麼場合爭吵,不要在公司辦公區大庭廣眾之下或者有上級領導在場的地方,那樣會造成同事或者領導對你的印象不好,或許也會認為你們不適合在一起做事。關起門來爭吵是比較好的,這個事情不管最後誰說服誰,最後這個疑問有了一個結論並達成一個共識,對最後產品形態來說是一件好事。或許兩個人關係變得更近了。

記住只有在乎這個事情的人或者想和你說真話的人才會和你去爭論,如果壓根不在乎,他就會隨便應付草草了事。

如果你想加入我們的團隊,簡歷請發送到 [email protected]

作者介紹

李汐輕鬆籌 CTO、EGO 會員。3 次創業經歷,趕上移動互聯網關鍵轉折點,遺憾錯過「團購」大戰,2012 年開始意識到眾籌在的發展機遇,國內首款開源眾籌系統作者,給國內多家企業提供眾籌解決方案,2014 年 9 月作為聯合創始人創辦「輕鬆籌」並擔任 CTO,總體負責工程方向的技術把控、工程方向人才的培養、項目管理、招聘和晉陞體系。主導輕鬆籌核心交易平台、大數據、區塊鏈、AI 等工程項目。

打個廣告

這是變革的時代,技術的發展比任何時候都超乎想象!無論傳統產業,還是新興行業,不管是否準備就緒,人工智慧的時代已經來臨!無論是面向端的應用,還是企業級的平台,ABC(AI,Big Data,Cloud Computing)三位一體的融合已成為趨勢!

繼 2016 年百度成功舉辦 ABC SUMMIT 之後,今年 ABC SUMMIT 將在 9 月 15 日北京國家會議中心重磅開幕。現在,大咖說福利放出,掃描下圖註冊二維碼註冊參會,您在 0 元搶購 188 元大會門票的同時,還有機會獲得大咖說送出的 Cherry 鍵盤。

中獎規則:您掃碼報名后將收到系統隨機生成的註冊邀請碼,如果尾數為 6,恭喜您中獎!我們的工作人員會在一周內與您聯繫。

要怎樣努力,才能修鍊成一個架構師?



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦