前言
今天在 segmentfault 看到一片文章捎迫,寫的挺不錯的。里面所涉獵的技術(shù)我都會都狩獵過表牢,但限于工作及其他因素不能面面據(jù)到窄绒。至此
我都沒弄懂,基于木桶原則的話崔兴,我的短版在哪彰导?我覺得我望哪瞅哪都是短版蛔翅?額...
以下為轉(zhuǎn)文章原文 By:張友林
PHP程序員要月薪上萬塑陵,技術(shù)需要達到什么水平娃豹?
這是一個經(jīng)常被初級程序員問到的一個問題。如果你問公司的HR误证,人家會告訴你倔幼,你的薪資取決于于公司的薪酬制度,以及你在公司的位置爽待。损同。。鸟款,所以啊膏燃,你懂的,小伙子好好干何什,繼續(xù)加班吧组哩。
這是可恥的忽悠, 我們廣大程序員都是追求技術(shù)進步的有為青年处渣,程序員的薪資水平要掌握在自己手中伶贰。
咱們先來說說PHP程序員技能樹吧。要月薪上萬罐栈,你要掌握的技能還真不少黍衙。
HTML/CSS/JavaScript 這些就不必說了,入門級WEB開發(fā)程序員都要掌握的荠诬。
其次說說PHP編程能力琅翻,精通PHP語法,掌握常用的函數(shù)柑贞,熟悉PHP5下的OOP應(yīng)用方椎,熟練使用緩存,掌握一些設(shè)計模式等等钧嘶。這個是基礎(chǔ)棠众。再高級一點,你要會這些:對PHP運行機制的理解有决;對系統(tǒng)資源的調(diào)用交互理解摄欲;關(guān)健性能的優(yōu)化能力。以及有過OOP架構(gòu)設(shè)計經(jīng)驗疮薇,熟悉設(shè)計模式胸墙、UML,熟悉PHP對象運行機制按咒,內(nèi)存管理等
MySQL技能也是必不可少的迟隅。還是先從基本的來說但骨,你要知道用PHP連接數(shù)據(jù)庫;懂得寫一些簡單的SQL智袭;建一些簡單的索引奔缠;懂得用工具簡單操作一下數(shù)據(jù)庫(增刪改庫表結(jié)構(gòu)數(shù)據(jù)等等)。進階一點呢吼野,你要懂得在開發(fā)應(yīng)用上設(shè)計數(shù)據(jù)庫校哎,建立一些有效的索引,用explain分析SQL性能瞳步,壓力測試等等闷哆。再往上呢,你要深入了解數(shù)據(jù)庫索引单起、存儲引擎原理以及運行機制抱怔,能有效地構(gòu)建高性能可擴展的數(shù)據(jù)庫結(jié)構(gòu)/架構(gòu),有效地優(yōu)化數(shù)據(jù)庫性能配置并加以調(diào)試嘀倒,分析數(shù)據(jù)庫運行狀態(tài)屈留。再往上呢,再往上先不說了测蘑。
再說說操作系統(tǒng)應(yīng)用能力灌危,WEB開發(fā)不只是會寫代碼就行的。操作系統(tǒng)應(yīng)用也是必備技能碳胳。需要廣泛且扎實的基礎(chǔ)理論乍狐,而對于開發(fā)者來說,熟悉基本的命令操作固逗,對WEB相關(guān)服務(wù)的安裝浅蚪、配置、優(yōu)化能力需要具備烫罩。
說到這惜傲,已經(jīng)把很多程序員打回原形了。天啊贝攒,要到這么高的水平盗誊,原來我以為我很牛,現(xiàn)在才發(fā)現(xiàn)我太菜了隘弊。
還沒完呢哈踱,作為一個PHP程序員,沒有大型網(wǎng)站工作經(jīng)驗梨熙,怎么好意思出來混呢开镣。PHP開發(fā)下的緩存應(yīng)用(memcache、APC等)咽扇;session處理方案邪财;熟悉負載均衡陕壹;熟悉PHP數(shù)據(jù)連接池應(yīng)用;了解PHP編程性能優(yōu)化树埠。這些只有在大訪問量網(wǎng)站工作才能接觸到糠馆。這些只是小菜,你還要掌握分布式緩存及緩存性能優(yōu)化怎憋、熟悉存儲系統(tǒng)又碌、文件系統(tǒng)、數(shù)據(jù)庫绊袋,開發(fā)可擴展平臺毕匀。能結(jié)合負載均衡合理布置流量,對PHP運行性能進行監(jiān)控與分析等愤炸。
不說了期揪,再說下去連我自己都沒信心了掉奄。不過呢规个,大家要往這個方向努力。FaceBook只招全棧工程師姓建,現(xiàn)在大家知道為什么了吧诞仓,你掌握了上面說的,你就是一個全棧工程師了速兔。
總結(jié)一下墅拭,PHP程序員要月薪上萬,還是要求比較高的涣狗。 那個C++,JAVA程序員谍婉,可以專精某一技術(shù)。但是做Web開發(fā)的人镀钓,就得往全棧工程師這個方向發(fā)展穗熬。
[ 自己想說的話 ]
昨天又在網(wǎng)給自己買了兩本書《算法(第四版)》/《代碼整潔之道》,加上幾個月一月一本丁溅,夠我啃過這一年了吧唤蔗?
年前到現(xiàn)在一直都趴在研究前臺框架bootstrap
上面,然后也是昨天窟赏,項目老大問我:最近的自己在學習什么妓柜?我托口而出:bootstrap
!我靠~ 我現(xiàn)在還記得涯穷,當時他臉都黑了棍掐。我知道他肯定想不到我一后端的,屁顛屁顛玩到前端去了拷况。
我歉意的說:我對自己的職業(yè)規(guī)劃是全棧工程師塌衰,所以想什么都去研究什么都不想落下诉稍。
其實,我內(nèi)心是糾結(jié)的最疆。因為我現(xiàn)在所學習的東西無法有價值的運用至項目中去杯巨,不僅僅是自己是后端的身份,還因為項目組中有專業(yè)的前端/美工努酸。而我僅僅還只能做些拖拽bootstrap
框架中服爷,別人寫好的組件到處德瑟~糊弄那些不懂行的可以,專業(yè)人士就算了获诈,還不如扎扎實實的去研究CSS/JavaScript底層的東西仍源。
我喜歡去學習新的技術(shù),但這些還不夠舔涎。人有不是機器笼踩,學多了總會忘。所以通常都是兩條路~
廣:橫線發(fā)展亡嫌,這種比較耗費時間嚎于。要么面面具備,要么什么都不會
深:專精一本挟冠,做一門技術(shù)中資深的專家于购。根據(jù)一萬小時的定律,這個應(yīng)該是不難實現(xiàn)的知染。
其實肋僧,人活著要點目標。有了目標就什么都不用怕控淡,只要朝著好的方向一步一步向前進即可... (前提是不能提前陣亡..)