主頁 > 軟體設計 > 初級前端工程師如何快速成長和尋求突破

初級前端工程師如何快速成長和尋求突破

2020-12-17 11:25:36 軟體設計

前言

寫這篇文章的初衷,是因為看到很多剛入職同學的迷茫、沒有目標感,看到了一些作業 1-2 年的同學疲于業務開發而沒有很大的成長, 也看到了一些同學 2~3 年作業時間變成了框架熟練的“打工人”,卻沒有很好的沉淀和亮點,導致無法進入大廠,實作薪資的大幅提升,于是寫下這篇文章,希望能夠給這些初中級工程師一些啟發,

挑選適合的平臺

選擇大于努力

如果你拿到下面兩個公司的 Offer ,你會如何選擇?

我相信大部分人都會選擇 A 公司,因為你會認同 A 公司更有成長空間,會積累更多的沉淀,那么我們是為什么要做出這樣的選擇呢?

從哪幾方面做選擇

1.看行業,2010 年以前的電商,這兩年的教育、社區團購等,

2.看公司,公司是否是大廠、行業內的影響力怎么樣、公司文化是否吻合,和一群靠譜的人作業,結果肯定不會太差,

3.看崗位,是否是職能部門,是否是職能部門主要就是看組織架構中是否有獨立的前端部門,很多公司前端開發很多,但是是分散在不同部門里面,而匯報老板是后端研發,

從哪里獲取到真實資訊

1.找人咨詢,現在網路那么發達,多逛逛社區,很容易就能得到行業大佬聯系方式,讓他們給你一些建議,基本上能夠給你判斷的七七八八,比如社區較活躍的 Scott 等,

2.網路搜索是下策,網上提問,百度搜索,脈脈等資訊繁雜也不一定客觀公正,而且回答你的人不一定是和你同一工種,

不要在意那兩千塊

有多個選擇的時候,很多人都會說選錢多的就沒錯,但是職業初期一定要看重成長空間,而不能為了多那兩千塊錢而選擇不適合你的平臺,大部分人薪資漲幅最多的是 3~5 年的那段時間,前面基礎打好了,有足夠的積累,后面就是你挑平臺的時候,這個時候的回報遠遠大于之前的那點錢,甚至是能夠影響你職業生涯的選擇,

融入團隊

進入新的團隊,首先要融入進去,如果你不能快速融入團隊,那么必然會被淘汰出局,最嚴重的甚至還會浪費你至少一年時間,前期每一年都很重要(下文會說到這點),怎么判斷你有沒有融入到團隊呢?不是看你是不是每天和他們嬉笑喝酒打游戲,有些天生內向不愛說話難道就不能融入團隊嗎,而是看團隊所有人的言行舉止是不是一致,文化價值觀是不是一致,那么怎么快速融入團隊呢?

和你的團隊待在一起,職場新人往往喜歡和校友或者一起進來的小伙伴同吃同行,卻疏遠自己的團隊,所謂“相處”之道,如果不時常“處”在一起,總是游離在團隊之外,就會比較難以融于到團隊中,

積極主動,成熟的團隊 Leader 或者師兄肯定會給你提供一些鍛煉機會,一般都不會是命令式安排,而是問“這個事情有誰感興趣”,這個時候要敢于承擔,敢于發言,獲得鍛煉機會的同時,也會獲得被直接指導的機會,不要怕給事情搞砸,干就完了,做了不一定有回報,不做永遠沒有識訓,

做個靠譜的人,被人認為靠譜是一個很高的評價,那么怎么做才算靠譜呢?我的理解是事事有反饋,事事有結果,凡事到我為止,不屬于我負責的事可以告訴對方誰誰負責,當場不確定的事可以給出明確反饋時間,并及時主動反饋和同步其他人,而不是等別人催著問你,所有自己負責的事需要有明確結果,程序需要及時同步,風險需要及時反饋到對應的人,并推動事情落地解決,

快速成長

在選擇到合適平臺并融入到團隊之后,我們就有了快速成長的土壤,那么我們如何才能快速成長呢?我理解的成長包括兩方面,技術能力的成長和職業能力的成長,

如何快速提升技術能力

堅持:積少成多,重在堅持,構建自己的知識體系,就我本人而言,現在也都能保持每天至少一篇技術文章閱讀,

多寫多練多思考:收藏了、看過了、點贊了不等于學到了,前面幾年要多寫多練,直到“看到需求,腦海中的代碼就已經寫完了”為止,拒絕無意義的模仿代碼,要去思考為什么這么寫?背后的設計方案思考?還有沒有更好的方案,

謙虛并敢于質疑:要有一個謙虛的態度,高高在上,如果抱有“老子最牛 X 的態度”,很快就會被團隊拍死,要善于發現別人的優點和長處,謙虛不代表不發聲,討論階段要敢于去挑戰別人,有想法要敢于表達,別人考慮的不完善要敢于質疑,事前多發聲,對事不對人,事后不瞎嗶嗶,

把事做精:要養成優秀的習慣,每個任務不要因為做完就沾沾自喜,做完是基本要求,是你拿工資該做的事,做好做精是你成長的體現,當優秀成為一種習慣,成長就會很快,

敢于實踐:有些技術文章看完了不等于會了,有好的最佳實踐和技術方案要敢于用到專案中,被業務驗證過的方案才是好的好方案,同時也能讓你快速掌握這些相關技術,當然在實施之前好的做法是先分享并組內討論下,

適當高調:這個是最簡單也是最難的,太多的程式員有個好的 idea 不敢說,或者只和個別人說,做了一個好工具好插件只給自己用或者只給身邊的幾個人安利,適當的場合要敢于表達自己看到的問題并給出建議,好的工具需要積極地宣傳推廣到大團隊、或者整個研發團隊,適當的高調可以讓更多人看到你,后面有相關機會別人也會第一時間找到你,對于一個工具來說,當使用的人更多的時候,就會有更多的問題暴露出來,會更加提高你解決復雜問題的能力,當積極主動優秀成為你的標簽之后,會給你帶來更多的成就感、自信心、動力、挑戰和機會,

如何快速提升職業能力

什么是職業能力?職業能力是人們從事其職業的綜合能力,對于研發開發來說,通常指除技術能力之外的綜合能力,我認為,職場中比較重要的職業能力包括:溝通能力、業務能力、協作能力、反饋能力、規劃能力、總結能力,

這些能力如何提升沒有標準答案,天賦不同、性格不同,提升的方式也不同,我這里總結一些個人經驗供大家參考,

溝通能力

語言一致性:面對不同工種比如測驗、后端、產品和業務方首先要語言一致,你的語言表達要使對方能聽懂,如果你一直說專業詞匯,別人是聽不懂的,要將專業詞匯轉化成別人能聽懂的語言,你和老板說 Vue/React 的資料驅動他們大概率聽不懂,但是如果你和老板說 Vue/React 是業界主流開發選型,能夠比傳統開發提升 XX% 的效率,節省多少人力,效果就會不一樣,

理解一致性:如果你在說 A,對方聽成了 B,你以為對方也在說 A,那么永遠只有“溝”而不會“通”,甚至不歡而散,我碰到過多次這種溝通半天不能達成一致、最后來找我協調的事情,最后發現兩個人不在一個頻道上,最終造成了無效溝通,遇到這種情況,我一般都是先聽完,然后給我的理解,同時給對方復述一次,問對方我理解的是不是對的,而不是急于表達我的觀點,

多動手少說話:語言在傳達程序中會很容易被錯誤理解,比如我描述一個人的長相,一千個人會畫出一千個樣子,如果我拿出一張照片,就能夠準確的進行資訊傳遞,溝通程序中多畫圖、多演示、多用白板,能夠提高溝通效率,還有就是說的程序中,要說重點,先說結論、再解釋,因為也許有些人不 care 解釋,只需要你給結論即可,當有太多的解釋而沒有引出結論時,可能會被認為很啰嗦、說不到重點,

業務能力

給自己當“傻子”:一個好的產品是應該學習成本比較低的,給自己當“傻子”,去使用自己負責的業務產品,就會發現太多可優化的點,

多換位思考:不要用技術的角度去看業務,要思考產品的用戶是誰,核心是解決用戶什么問題,有沒有解決,反饋如何,

用公司視角:你負責的業務上下游依賴業務是哪些?在部門中處于什么角色?在公司層面處于什么地位?站在不同視角看待業務就會獲得不同的看法,

關注行業競品:行業趨勢是什么樣的,競品的優勢在哪里,我們的優勢在哪,對行業要保持一定的敏感性,

協作能力

找到共同目標:通過良好的溝通能力,尋找到共同目標,放大共同價值會很容易達成合作,

多換位思考:多站在別人的角度考慮問題,多問問對方你的難點是什么、需要我如何協助,了解訴求之后,再針對性地提出解決辦法,不是上來就說“我要做什么”,而是多說“我可以給你帶來什么”,

反饋能力

提高意識:事事有反饋是非常非常非常重要的意識,想象一下這些場景: 1.你負責的開發任務,如果需要負責人每天都問你一次到什么進展了,有沒有做完,不問你也不說;2.群里有人反饋你負責的頁面出了問題,而你已讀未回——其實你可能已經在排查了,或者有更要有的事去處理,但是你沒有回,別人就會覺得你不負責任,甚至認為整個團隊沒有 Owner 意識,

這兩種狀態都是很不好的,如果我們能夠主動匯報事情的進度、如果忙碌的時候能夠回一個 “在看”、“開會中,5 分鐘后看”,效果就會不一樣,

規劃能力

定目標:沒有目標就沒有堅持的動力,做之前要先定好目標,目標可以有長期目標,中期目標和短期目標,可以按照自己的規劃設定,

定周期:所有的目標都要有明確的時間節點,沒有時間節點,很難進展下去,

做拆解:目標拆解的粒度越細,執行的效果就會越好,我們可以一直拆解到不能拆解為止,

總結能力

多練:很多開發人員會做不會說,會說不會寫,我的經驗就是多練,練的多了就會有感覺,我本人上學那會兒,作文都寫不到 600 字,現在一口氣寫上幾千字停不下來,平時多寫業務檔案,技術文章總結,也能鍛煉你的總結能力,

逼自己:總結不是記流水賬,要化繁為簡,很多人會說不能再精簡了,我的經驗就是逼自己做下去,比如 5 分鐘總結一下上半年的作業亮點、只選擇一件事你認為是最需要給老板說的、總結字數不超過 100 字等,慢慢就會清楚如何做總結,

如何尋求突破

技術能力的持續提升、職業能力越來越強,那么我們怎么才能突破到下一階段呢?

技術反哺業務

從場景找方案:技術能力一定要能反哺業務,才能體現技術的價值,學到的新技術新知識如果不能運用到專案中,那么永遠就只是個 Demo 樣品,所以不要為技術尋找場景,而是應該從場景中找解決方案(技術方案),

聰明的“偷懶”:可以試著問自己:如何既能少干活又能滿足業務場景?這就需要你在理解業務的前提下,提出更合理的技術方案,將技術合理的運用到業務中,既能提高自己的技術設計能力,又能更好的支撐業務發展,當然,這里的“少干活”不一定是說這次少干活,而是長遠的角度去考慮如何擴展節省人力,

尋找機會并快速落地

有些人一直抱怨自己懷才不遇,做的事情沒有空間沒有機會,好的機會都被別人霸占著插不上手,其實不是機會少,而是你缺少發現機會的眼睛,

找難受點:讓人難受都是機會,多留意別人的抱怨,多留意你覺得很爛的地方,多問協作方他們哪里難受,只要是難受的點就是機會,比如:團隊腳手架工具好不好用、有沒有監控系統、有沒有需要所有人肉去升級或者排查的事情、測驗是不是需要自動化工具、產品需不需要業務報表系統、運維是不是需要部署管理系統,留意身邊的不滿,碰到不滿不要總是躲避,而是留意是不是有機會來了,

如何判斷你成長了

如何判斷自己是否成長了呢?是開發了多少組件、實作了多少頁面、發了多少版本、加了多少天的班嗎?

我的邏輯是看看你改變了什么,比如——因為你協助更順暢了,因為你線上故障少了 50%,因為你開發效率提高了 30%,因為你團隊氛圍更好了,因為你身邊人也成長了,你帶來了哪些改變,自然就在某些方面獲得了成長,

常見誤區

一年一跳:很多人頻繁跳槽,到哪都覺得自己“懷才不遇”,而經常跳槽會導致新的用人單位也覺得你穩定性差、在我這里是不是也最多待一年?一年一跳能夠沉淀積累的可能性也不大,所以要慎重選擇你的平臺,清楚自己要什么,不要為了一時多兩三千塊錢而沖動,

把業務成果當成自己成果:這個是最常見的誤區,業務 KPI 年年達成、年年是明星業務,卻誤認為是自己的成果,造成自己年年成長的錯覺,試著問下自己:你在里面起到的作用是什么?如果只是把互動實作,是不是可以認為你這兩年一直在機械性的做執行,還是要回到上面說的,問下自己改變了什么,

依賴平臺:有些人離開了平臺就搞不定事情,要做與平臺無關的人,在不同階段可以自由選擇大廠或者中小廠,可以選擇縱向發展,也可以選擇橫向操盤空間,

總結

成長就像爬山一樣,一開始大家都在同一起跑線,有說有笑并肩出發,程序中有人堅持下來到達了山頂,有人停在了半山腰看著別人陸陸續續超過自己,有人選擇了錯誤道路、永遠到不了山頂,有人選擇了適合的道路、很快就到達了山頂……成長的程序中肯定存在很多坎坷,但是每一次突破自身所帶來的的成就感會成為你堅持下去的動力,堅持加上選擇再需要一點運氣,回報自然就會水到渠成,

加油吧,打工人!

最后

說個題外話,我在一線互聯網企業作業十余年里,指導過不少同行后輩,幫助很多人得到了學習和成長,

我意識到有很多經驗和知識值得分享給大家,也可以通過我們的能力和經驗解答大家在IT學習中的很多困惑,所以在作業繁忙的情況下還是堅持各種整理和分享,

我可以將最近整理的前端面試題免費分享出來,其中包含HTML、CSS、JavaScript、服務端與網路、Vue、瀏覽器、資料結構與演算法等等,還在持續整理更新中,希望大家都能找到心儀的作業,

有需要的朋友點擊這里免費領取題目+決議PDF,

篇幅有限,僅展示部分截圖:

點擊這里免費領取題目+決議PDF,

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/236053.html

標籤:其他

上一篇:Jmeter 實戰json提取

下一篇:回首資料平臺建設心路,探索資料架構新方向

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more