作者:寒蟬(知乎)
順便吆喝一聲,技術大廠,內推撈人,前/後端or測試←感興趣
要求學歷:全日制統招本科(非學院派即可):
--加班偶爾較多,但週末加班兩倍工資。
--15-35K,工資在一線城市屬於一般,但二線城市很可以。
前端幹了有四年多了,在我有限的認知內(認知就這麼點,不要槓我,槓就是你對)和能力範圍內所觸及到的崗位種類中,前端這個崗位在我看來是最難堅守的。
大多數初級中級的前端開發喜歡把自己限定在前端領域,不願意去了解後端運維等其他方面的技術。
我能理解這種安於現狀的狀態,但是,技術領域大環境是不斷變化的。你要是大廠的螺絲刀那也説得過去,畢竟大廠的模式都是一個蘿蔔一個坑,小而專嘛。把自己的坑研就透了,也是領域人才了。
但是大部分前端都只能在中小公司,那麼這個螺絲釘就沒有太大的價值了。尤其是想在職位和薪資上有所突破,僅靠前端這個小坑,再專精也是很難突破的。
若是處在這種環境之下,你就需要拓寬自己的知識面,朝着全棧發展,為什麼呢?
從個人職業發展來講,隨着年紀增大,你最終需要從一個底層碼農進化成一個提供解決方案的技術管理,你需要針對客户的需求提供一個解決方案,而如果你只在前端摸索就很難站在一個全局的角度去思考,如果你的知識面不夠廣,你是無法提供一個好的解決方案的,你見得少就聽不懂別人在講什麼。
其次從個人角度來講,可以做做自己的個人項目,什麼都懂才能把一個網站完整地做出來上線,別人有外包項目找到你,你也可以有這個能力接下來,所以單單懂前端是不夠的。
但是!!!想要把路走寬之前,一定要有一個拿得出手的技術。
像我們前端的人,你就必須要把前端做得足夠好,從前端的高處向後端延伸發展,這樣你才能稱自己是全棧,否則你就是啥都懂,但又等於啥都不懂。
在當下,任何一家企業都需要前端開發,而且必不可少!
當然,對於前端開發的要求也越來越高了。從2016年開始Node在國內火了,也意味着Node為JS提供了在服務端運行的環境,使得JS也能開發服務端的程序,前後端使用同一種語言,統一模型的夢想得以實現。這也是為什麼這麼多年優秀的前端開發薪資更高的原因。
今天,前端開發"上天入地,無所不能"(吹噓一下):PC端開發 、移動web開發、APP開發、小程序開發、服務端開發等。一個資深的優秀的前端開發工程師也叫做全棧開發工程師,這個時代也被叫做大前端時代。
所以,我們就看到了今天的局面,前後端開發都在互相卷,橫向卷,縱向卷,垂直卷,深度卷。捲來捲去都是衝着全棧工程師的發展方向。
全棧工程師通常會經歷技術蜕變,以適應不斷髮展的技術和市場需求。這種蜕變是不斷學習和提高自己的過程。以下是一個典型的前端向後端學習發展全棧工程師可能會經歷的技術蜕變階段:
1.初學者( Beginner):
- 學習基本的編程語言和編程概念,如HTML、CSS、JavaScript
-掌握基本的前端開發技能,能夠創建簡單的靜態網頁。
2.前端開發者(Front-end Developer):
-提高前端技能,包括JavaScript框架(如React,Anqular,Vue.is)的使用。
-開始構建交互性強、響應式的前端應用程序學習基本的HTTP和網絡通信知識。
3.後端開發者(Back-end Developer):
- 學習服務器端編程語言和框架,如Node.js、Python ( Django、Flask ) 、Ruby(Ruby onRails)等。
-理解數據庫設計和管理。
-開始構建服務器端應用程序,實現數據存儲和處理。
已經在做前端的工程師們對於後端這些技術框架應該也不會陌生,但如果真讓大家説出點什麼,恐怕又説不明白。
我們都知道常見的後端開發主要還是用Java,但如果從前端向後延伸發展,走node道路會更通順些,畢竟不是徹底的轉行,想要做到前後兼顧,甚至説隨時回頭,好好學node更有利於前端開發者的快速學習和發展。當然,也要結合自己公司或者目標公司的開發技術棧來決定。
最近啃文檔有點不耐煩,開始琢磨輔助性學習開發,琢磨了一下發現,讓我搞成了趣味性學習。
不想摸魚太明顯,我直接用了VScode自帶的chatMoss,哪怕是領導過來了,還是有大半個代碼頁面部分展現給他,至於chatMoss內容框裏有什麼東西,領導是不會深究的。
4.全棧開發者 (Full-stack Developer ) :
- 結合前端和後端技能,能夠獨立構建完整的Web應用程序。
-學習操作系統和服務器管理,以便部署應用程序。掌握版本控制系統,如Git。
-開始使用雲計算平台(如AWS、Azure、GoogleCloud)來託管應用程序。
5.DevOps工程師:
-學習自動化部署和持續集成/持續交付(CI/CD)流程,以提高開發團隊的效率。掌握容器化技術,如Docker和容器編排工具,如Kuberneteso。
-理解基礎設施即代碼 (lnfrastructure as CodelaC)的概念,以自動化基礎設施管理。
6.雲架構師:
- 深入研究雲計算架構,瞭解不同雲服務的特性和最佳實踐。
-設計高可用性、可伸縮性的分佈式系統。
- 掌握安全性和監控策略,確保應用程序的穩定性和安全性。
7.技術領導者:
-培養團隊協作和溝通技巧,領導開發團隊。
-制定技術路線圖參與項目規劃和架構設計,持續學習新的技術和趨勢,以保持競爭力。
很多剛入門的人不知從何下手,感覺需學習的知識太多了,到底哪些技術好 ?
想我當初畢業時選擇就業方向,為了開端順利選擇了前端,不過當時前端正熱,我的選擇也讓我安穩的度過了最難的就業階段,若是如今的畢業生選擇方向,我建議去走後端,前端處境很尷尬。
其實不管從哪個方向入手最重要的都是一定要有正確的路線圖,開始階段都要針對自己的方向進行深耕,深度挖掘,直至滲透到底層。只有在一方站穩腳跟,才能保證後續的進步穩紮穩打,不然就是半瓶水晃盪,兩頭都懵。