一個程序員的成長之路,會經(jīng)歷多個階段绰寞,從初級工程師到逊、中級工程師到高級工程師再到這個領(lǐng)域的專家,但是能成為技術(shù)專家的終歸是少數(shù)克握,因此我們通常給自己規(guī)劃的是前幾個階段蕾管。剛畢業(yè)的時候就在想,如何能成為高級工程師菩暗?高級工程師到底是什么樣子的?有的人會說旭蠕,工作3-5年后停团,自然就成為了高級工程師旷坦,這種以工作年限來定義的并不準(zhǔn)確,有的人或許工作好幾年卻在原地踏步佑稠,還停留在初秒梅、中級別,有的可能工作2-3年就成為了獨擋一面舌胶,攻堅克難的高級工程師捆蜀。那么,同樣是3幔嫂、5年辆它,為什么差距能這么大呢??
思考方式(分析問題)
我記得在我畢業(yè)后的第一家公司的時候履恩,在開發(fā)中遇到了一個問題锰茉,我就跑去問老大,然后老大給我說:如果這個問題給你來解決切心,你會怎么做飒筑?當(dāng)時一臉懵逼?心里是這樣的
不給答案就算了绽昏,反而給他問住了协屡,老大問你你得回答啊,于是就分析了一下全谤,說出了自己的想法著瓶,老大說:這不是知道嗎?還跑來問我干嘛啼县。從那以后材原,我都不敢輕易去問了,遇到問題了自己先分析季眷,然后尋找解決方法余蟹,有的時候就算實在解決不了,也要先整理一下思路然后再去問子刮。
為什么講這個故事呢威酒?因為很多同學(xué)都是這樣,在技術(shù)群里經(jīng)常有些同學(xué)會問一些沒有營養(yǎng)的問題挺峡,可能他們自己都還沒思考或者實踐過葵孤,就把問題仍出來,等待答案橱赠。在發(fā)現(xiàn)問題的時候就為自己設(shè)置了門檻尤仍,覺得自己解決不了,想找人幫忙解決狭姨。久而久之就形成了習(xí)慣宰啦,才會發(fā)現(xiàn)自己沒有獨立分析解決問題的能力苏遥,遇到難題就扔給別人,工作了多久都是原地踏步赡模,技術(shù)沒有長進田炭,這非常不利于我們的職業(yè)發(fā)展。
我們與高級工程師的差距可能就在我們的思維方式漓柑,分析問題的能力教硫。遇到問題時,先想想自己的解決方案辆布,然后再問別人瞬矩,這樣才會有比較,發(fā)現(xiàn)自己的不足谚殊,從而提升自己丧鸯。
知識延伸 (總結(jié))
實現(xiàn)一個需求可能有多種方案,每一種方案可能都有利有弊嫩絮,在開發(fā)趕需求階段丛肢,我們可能不會考慮哪種方案最好,或許根本就沒有考慮有幾種方案剿干,只要實現(xiàn)了需求就行蜂怎,管他效率還是封裝解耦呢。但是隨著需求的增加置尔,項目的項目變大杠步,原來的方案可能就滿足不了了,這個時候榜轿,我們就需要為以前的方案還債了幽歼。花費更多的時間和精力谬盐。
高級工程師會考慮得更加全面甸私,不止于眼前,考慮性能和可擴展性飞傀,這樣才能應(yīng)對將來不變的需求和更高的性能要求皇型。會進行技術(shù)預(yù)研和考量,選擇合適的方案砸烦。善于總結(jié)和分享弃鸦。自己進步的同時也幫助他人進步。
下面給大家分享一份成為高級工程師學(xué)習(xí)路線幢痘,如果想學(xué)習(xí)Java工程化唬格、高性能及分布式、深入淺出。性能調(diào)優(yōu)西轩、Spring员舵,MyBatis脑沿,Netty源碼分析的朋友可以加我的Java進階群:478052716 藕畔,群里有阿里大牛直播講解技術(shù),以及Java大型互聯(lián)網(wǎng)技術(shù)的視頻免費分享給大家庄拇。