在小公司中 技術(shù)人員能做什么有挑戰(zhàn)的事情?
當前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
曾經(jīng)有不少人對我問過類似的問題:作為技術(shù)人員在創(chuàng)業(yè)團隊(或是小公司)工作,技術(shù)上沒什么挑戰(zhàn),覺得自己得不到鍛煉,我該怎么辦? 的確,就說互聯(lián)網(wǎng)這個領(lǐng)域吧,創(chuàng)業(yè)團隊或是小公司的網(wǎng)站規(guī)模往往并不大,或者至少要從小做起,用戶訪問量和那些大型網(wǎng)站在當下自然沒法比,從這個角度上看,很多中小網(wǎng)站的確暫時面臨不到這些高并發(fā)、大流量、高可用的這些“嚴峻挑戰(zhàn)”,另外,團隊的職能崗位甚至也沒有大型公司那么齊全,人家連做配置管理的團隊規(guī)模甚至都比你整個公司人多,似乎在小團隊作技術(shù)的出門都低人家一頭,見面不好意思打招呼,真的有必要妄自菲薄么? 首先要說明的是,在大一點的公司里面,最不缺的就是解決復雜技術(shù)上的資源,但是有意思的是,遇到技術(shù)“挑戰(zhàn)”的其實是極少數(shù)的一部分工程師,大多數(shù)工程師做的都是相對可以規(guī)范起來的事情。或許有人不信,但是你要知道在團隊有了一定規(guī)模以后,很多技術(shù)人就會形成路徑依賴,一遇到稍微復雜一點的問題就去請教那些比較資深的同事,往往放棄了自己動手解決問題的機會,有些情況甚至他們也不敢承擔風險,那么,你認為這種情況對他們會有多少挑戰(zhàn)? 我們前面說到了復雜技術(shù),以前關(guān)于網(wǎng)站架構(gòu)設計、大規(guī)模集群、海量數(shù)據(jù)處理等主題,多少都還有一些神秘感,但是最近幾年來,相關(guān)技術(shù)文章帶來的信息越來越全面,越來越開放,不夸張的說,構(gòu)建一般的大型網(wǎng)站的技術(shù),你可以通過公開技術(shù)信息獲得所有的細節(jié)內(nèi)容。當然,有了這些,就好比你已經(jīng)有了一份藍圖,具體的施工還是要自己控制。不要誤會,我不是說創(chuàng)業(yè)團隊的技術(shù)人不會遇到技術(shù)難題,如果真的遇到目前能力無法逾越的技術(shù)障礙怎么辦?我的回答是:求助于社區(qū),利用群體智慧。和那些封閉的大公司的技術(shù)團隊所擁有的資源相比,這是更為遼闊的空間。注意,解決了問題不是最后一步,要把解決問題的能力逐漸培養(yǎng)起來。有若金庸小說中的北冥神功,要善于化為己用。 有些人把挑戰(zhàn)等同于自己想做的事情,有些人把挑戰(zhàn)看做一種憧憬,想象那些沒有做過的事情,在我看來,真正的挑戰(zhàn)恰恰是你不愿意做、不愿意改變、當前做不好的一些事情。 在創(chuàng)業(yè)團隊你可以做的一些更有挑戰(zhàn)的事情: 重構(gòu)自己的代碼 如果是開發(fā)人員,隨時要記得的事情是如何改善自己的代碼質(zhì)量。要讓自己成為更好的技術(shù)人,重構(gòu)或許是是隨手可作的并且切實可以提高自己能力的一件事情。有好的代碼為基礎,才有可能隨時面對更大的系統(tǒng)壓力。要記住小網(wǎng)站有可能發(fā)展為大網(wǎng)站,技術(shù)人需要的是提前做好準備,為你的代碼,為你自己,為你的團隊。 自動化日常工作 有人說,蘿卜快了不洗泥,團隊什么事情都要我做,我怎么有時間去搞什么重構(gòu)?那么,是否可以將一些日常需要重復做的事情盡可能的自動化,比如日常發(fā)布是否可以自動化?測試工作是否可以自動化?安全檢查是否可以自動化?有了這些為前提,你肯定有足夠的時間去做你想要做的事情。 良好的開發(fā)習慣 在一個團隊中,如果養(yǎng)成良好的開發(fā)習慣會讓你節(jié)省時間和精力。比如對版本工具的掌握程度,如果連 SVN 都缺少使用意識的話,很難想象團隊協(xié)作開發(fā)的時候會搞成什么樣的局面。也不要抱怨團隊的同事沒有好習慣,他們或許正需要你的幫助呢。..用你的行動,去帶動他們。順便問一下,你平時為代碼寫注釋么? 改進自己的產(chǎn)品 復雜未必是最大的競爭力,細致和精致有的時候是更好的競爭力。很多技術(shù)人員做到最后發(fā)現(xiàn)自己做了很多對用戶并不重要的功能和產(chǎn)品,而最重要的產(chǎn)品反而疏于改進。這未必都是別人的錯,如果自己能夠?qū)Ξa(chǎn)品和業(yè)務有足夠的了理解的話,你或許會驅(qū)動團隊少走彎路,做更正確的事情。 提高資源使用率 別人用數(shù)臺機器支撐的訪問量,換了你,能否用更少的硬件支撐?這些方案是可擴展的么?是可驗證的么?遺憾的是,我看到多數(shù)小團隊硬件利用率甚至比一些大團隊更低。如果聽任低效的代碼、冗雜的產(chǎn)品功能不去改變,那么可能的確要面臨資源利用率相對較低的窘境。 規(guī)劃資源的能力 團隊小的時候,整個產(chǎn)品架構(gòu)、整個網(wǎng)站架構(gòu)的信息收集并不難,讓你建立起一個全局的觀念相對更為容易一些。注意分析整體架構(gòu)的演變,根據(jù)自己的理解,一步一步預期將來可能出現(xiàn)的問題。這是非常難得的鍛煉自己的機會。順便問一下,你給自己的網(wǎng)站畫過架構(gòu)示意圖么? 保持學習的熱情 我在前面說到了網(wǎng)絡上的技術(shù)資源的豐富性,你是否能夠持之以恒的去學習、吸收這些技術(shù)經(jīng)驗,是否養(yǎng)成了評估某項技術(shù)成熟度的能力? 什么,學了用不上?問題是再大的公司在技術(shù)上也是要有取舍的,更多的時候都是在用更為合適的技術(shù)而不是看起來更“先進”的技術(shù)。 這個清單肯定可以列得更長,至少還應該包括溝通技巧的改進、傳授技能給他人、塑造技術(shù)影響力。看似都是一些平淡無奇的事情,其實在大的團隊大的公司,我覺得有挑戰(zhàn)的也都是類似的事情,我也不確定哪一個對你來說更難做到。不過真的能把這些都做好的話,或許驀然回首,那些所謂的挑戰(zhàn)對你來說已經(jīng)是浮云。 說到底,不能靠環(huán)境改變自己,如果你自己要改變自己對你收益是最大的(當然挑戰(zhàn)也大),而要環(huán)境改變你會讓你更為痛苦。只要你愿意。而且,在規(guī)模較小的團隊中,你的改進會直接體現(xiàn)到團隊的整體上,不要忘了,你是這個團隊的一份子。團隊越小,你的影響力就會越大,等到團隊壯大起來,不就是你有更大職能的時候么?從經(jīng)濟學的角度上看,團隊雖小,但是人均產(chǎn)出未必不如那些大團隊的成員。正好比做手表的做到巔峰,不比造飛機的少賺多少。總有一天,很多技術(shù)人會以在小團隊工作為榮。 挑戰(zhàn)不在河對岸,就在你面前。 作者:Fenng 丁香園CTO 原支付寶數(shù)據(jù)庫團隊負責人 該文章在 2012/3/12 14:19:57 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |