前端入行兩年--教會了我這些道理

来源:https://www.cnblogs.com/qianduantuanzhang/archive/2018/01/06/8215319.html
-Advertisement-
Play Games

1.前言 光陰似箭,日月如梭。不得不感慨時間過得很快,2017差不多結束了,一下子我從事前端開發的時間已經兩年了。這兩年可以說是一波三折,回想這兩年的經歷,讓我忍不住了寫下了這篇文章,記錄自己在這兩年經歷的種種種種。這篇文章,打算當做自己的一個經歷記錄,而對於看這篇文章的你,希望你們能從我的經歷裡面 ...


1.前言

光陰似箭,日月如梭。不得不感慨時間過得很快,2017差不多結束了,一下子我從事前端開發的時間已經兩年了。這兩年可以說是一波三折,回想這兩年的經歷,讓我忍不住了寫下了這篇文章,記錄自己在這兩年經歷的種種種種。這篇文章,打算當做自己的一個經歷記錄,而對於看這篇文章的你,希望你們能從我的經歷裡面吸取教訓,希望即將步入前端和已經從事前端的你,不要想我這樣一波三折,在前端的路走得更好。

2.大學時光

考完了第二次高考,緊跟著就是懵懵懂懂的上了大學,報的專業就是‘軟體技術(網站設計)’。這麼說,我也算是科班出身了,只是大學不是那麼出名而已!在大學的時光裡面,我並不是每天埋頭在電腦前面寫代碼,學習。生活上有社團,班級的活動我基本都參加,也經常約上同學打籃球,聚餐,外出。這些經歷,對於大學而言,是非常珍貴的經歷,我想擁有多一些這樣的經歷。至於學習上,我也努力過,也有懶散過。成就方面,除去一些平常的獎項,比較有成就感的就是班裡的成績和個人素質綜合測評我都是第一,因此一等獎學金和國家勵志獎學金我沒落下過。雖然這些和同級的人參加了什麼國家省市的比賽,獲得了多少等獎,多少名無法相提並論,但是我不求與他人相比,只求超越自己。在步入大學的第一天,我就想不虛度大學的時光,學好專業的知識,不再因自己的不努力而後悔。這個我算是做到了,只是不完美。至於不完美的原因,主要有兩個:

一是自己的堅持和自製力不夠,主要表現在兩個方面——自己本身打算做一個項目練手,後來就是因為懶散或者技術難題放棄了。還有就是和在圖書館借了書,根本沒怎麼看,等於拿回宿舍放兩三個月再還給圖書館!

無論是否是大學生,無論有老師與否,學習這個都是靠自己的努力,靠自己的堅持,堅持,再堅持

二是自己在大學的學習裡面,我雖然成績很好,但不代表技術好,因為和同學對比,我的技術差了可不止一兩條街。因為在學習上,我最多也是跟著老師和課本上面的內容學習,不瞭解外面的世界,不知道技術趨勢,也沒有和行業的人交流過。這也導致我在實習的時候很是吃虧!

大學的知識需要學習,但是外面的技術趨勢也得瞭解。反覆折騰大學的項目,功課。學到的知識比較有限。對外面的技術趨勢有有瞭解,加入社區和行業的人交流,學到的會更多,學習效率也更高。

3.初入前端

大學的兩年時間感覺一晃就過了,一下就到了大三,出來實習了。在接觸前端之前,我寫了三個月的php,後來發現自己對前端更有興趣,所以轉前端了。但是這條路並不平坦,因為我找了半個月的的工作,面試了16家公司,15家拒絕,最後一家錄用我了,就在兩年前的11月,我有了第一份前端的工作。當時聽到錄用了,想都沒想,立馬就去入職了,沒有上網或者去群聊消息打聽過這個公司,對立面的情況一概的不瞭解。帶著興奮的心理去入職了,一個星期之後,我就在想著什麼時候離職了。因為公司雖然是有400人,前端也有50人,但是基本(95%)都是實習生或者應屆生,做的東西都是切圖(html+css,js基本不需要寫)即使是技術經理,當時覺得他技術厲害,現在覺得技術很水。做的項目都是很粗糙的(幾千塊一個項目,設計+前端+後臺,大家可以想下是什麼樣的項目了),工資基本就是1600-2000,漲薪最多也就2500,每天加班也拼不上3000,在那工作四五年最多4000,福利補貼什麼也沒有,反倒是扣錢的藉口就一大堆。每天開會進行‘洗腦’活動,平均每天入職一人,離職一人,入職沒滿一年就離職還要扣15個工作日的工資等等等等。公司名稱不說了,畢竟當時入職都是你情我願的事情,只是當時自己太天真而已。

可能是因為我的專業技能學得並不是很好,這個經歷現在還歷歷在目,在從那一次開始,我找工作再也不敢著急了,因為越是著急,越是找不到合適的工作。現在面試的時候我也會多問幾句,公司的規章制度,福利補貼,薪資待遇,工作內容等問題,入職之前也多瞭解下公司,上網看評價(如果是初創的公司,網上沒有評價的就愛莫能助了)。

前端的第一份工作是不如意,但不代表我就自暴自棄,在工作之餘,我也有抓緊學習!這幾個月我先是看了blue(智能社的創始人)的入門視頻,後來又看了紅皮書(【javascript高級程式設計】)。我看視頻或者看書的時候,我並沒有太著急,要逼自己太緊,而是緊盯的自己要勞逸結合,不能懶散。三個月後,視頻和紅皮書看完了,前端的三大基礎,html+css+js有了一個最基本的認識,並不是很牢固的那一種,即使是切圖,也是有點粗糙。看完了視頻和紅皮書的半個月後,我實在是不想再拖了,拿了2月份的工資的當天,就提離職了。當時主管跟我說,我入職沒滿一年就離職,是要扣15個工作日的工資的,這個月至少要做夠15個工作日,我當時並沒有理會,直接第二天不來了,合同沒簽,我走你也沒辦法!

遇到實在是受不了的公司,不建議在糾纏下去,早點一刀兩斷或者就是最好的一個決定。當時在這家公司,有些人覺得被扣15個工作日的工資不划算,打算做滿一年再離職。我就直接放棄,頻繁請假或者上班不做事,自己學習。他不仁我不義,所以三月份免費給他打工的工作日並沒有多少。對於這一次離職3月份的幾天工資,我也不那麼在乎,第一沒多少,第二在乎可能會失去更多,代價更大!

雖然工作的前三年我看重的是收穫,待遇次之。如果收穫基本沒有,待遇也不行,我找不到理由留下,別人也無法說服我留下!

4.播種之路

上一份工作離職了之後,好像面試了5家公司吧,最終入職了一家初創公司,這家公司當時不到10個員工。基本都是技術開發,但是前端只有我一個。所以在這家公司,所有的前端只能靠我自己了,不懂的上網搜,或者在Q群問人。在這家公司里工作,比第一份工作好了很多,很多。但是做的事情,也可以說是比較機械,就是切圖,只是比第一份工作複雜了些,也需要寫交互特效,因此我的javascript和jquery練得比較多,用起來也順手了很多。

自己也是在一些前端群裡面也是比較活躍了,經常和一些人交流,也會上github看別人的代碼!這份工作的前半年,我主要活躍於Q群,但是和那些人聊天,閑聊比較多,代碼基本沒怎麼聊過,有時候也會交流下意見,這些都讓我獲益匪淺,改變了我很多的認知和做事方式。其中最簡單粗暴的一個場景就是:我遇到不懂的,去群上提問,有人回答說:“網上一大堆答案,還來問!”,“看文檔啊,寫得那麼詳細!”。正因為被別人說得多了,我遇到問題不再是不懂馬上問,而是不懂的先思考,再上網搜,看下有沒有類似的答案或者教程,實在是搞不定的再去群里問。在這裡也很感謝那些耐心幫我解決難題的大牛,也感謝他們的指導。有時候遇到自己能解答的,我也會儘力而為,畢竟能幫到別人,對自己也是一種實戰。在群里,除了答疑和閑聊,也有交流意見,比較有印象的是這些談話:“我一個星期看完【javascript高級程式設計】,3天看完【javascript dom編程藝術】”,“我買了犀牛書,目標一個月內看完”。

這些話看著很威風。但我當時在想,這些人把看書當成百米賽跑了,誰看得快誰就厲害?為什麼看書要加上期限?在自己規定的期限內看完,裡面的知識點能吸收多少呢?

出於這樣的心理,我想主要是由兩個,一個是為了逼自己學習,避免因為自己懶散而出現有書不看這樣的場景。第二個是學習的浮躁心理,看著要學習的這麼多,得趕緊看完,再看下一本!

還有一個就是比較深刻一個聊天內容時:有人說想學javascript,但是不知道看什麼書,我就推薦紅皮書,但是那個人直接回答:“那本我都看完了!”。

那時候我在想,一本書看完了就不能重覆再看,還是說一本書只能看一遍,或者是看完了一本書,書上的知識都學會了,不需要看了?

這份工作的後半年,因為我老是用html+css+javascript+jquery開發項目,以及自己的一些練習。對於群裡人說的es6,gulp,webpack,vue,angular,react等這一些完全不懂,甚至根本沒聽過。那個時候我先是看了阮一峰的【es6標準入門】,學習es6的語法,之後也是對gulp,webpack,angular,vue有了一個最基本的瞭解,但是還是很懵逼。因為並不是大家所說的前端模塊化,工程化。而且這份工作,開發的項目一直用的是html+css+javascript+jquery。沒跟上技術的趨勢,也使用不了新技術。對自己技術水平,再提升一個等級比較困難,而且待遇方面也沒增加,就是在今年年初漲了500。所以,出於對自己成長的考慮,我2月份提出了離職!在3月份正式離職。

離職的時候,還是挺不捨的,因為和這家公司的同事相處不錯,也是激發了我的興趣。這一份工作,增加了我對前端的興趣,接觸新的技術,也感覺是種下了前端的種子!這也解釋了為什麼我把第二份工作的經歷稱為我的‘播種之路’。

這又說到找工作的事情,大家找工作的時候,建議問下麵試官,應聘的職位的工作內容主要是的。我所見過的一些情況就是:一些群友去面試前端,雖然是前端開發,但是工作內容是做小程式或者切圖。然後就覺得這樣的工作很無趣,做了幾天就離職。所以大家應聘的時候,多問幾句!除了薪資待遇,公司環境。工作內容也很重要!

5.萌芽之路

現在這份工作與之前工作不一樣,這份工作是在Q群聯繫的,之前是在網站投簡歷的。辦完了離職手續過了幾天,就進入現在這家公司入職了。剛進來的兩天,並沒有工作任務,只是老大教我怎麼使用node.js搭建開發環境,讓我知道什麼是前端模塊化,前端工程化的便利性。給我演示怎麼使用gulp,webpack,vue,sass等配合開發項目,以及開發的一些規範。之後就給了兩個頁面的練手,給老大過目之後,給了一些要求和建議。因為在離職前,我有瞭解過node.js,gulp,webpack,vue等,所以熟悉公司的技術棧的過程比較順利。這份工作也讓我有了擁抱流行趨勢,主流技術的感覺。

當然了,流行趨勢和主流的技術我並不是一股腦的學,而是項目用到什麼就學什麼,覺得什麼有興趣,有學習的價值學什麼。如果什麼都一股腦的學,而項目上沒用上,沒實戰過,很快就會忘的。所以我現在就是什麼需要學,對什麼有興趣,有什麼是很有學習價值的就去學什麼。

這份工作的經歷,之所以稱為‘萌芽之路’:

一是因為我雖然有了擁抱流行趨勢,主流技術的感覺。但是一切我都是新學,還是新手,還是很多需要學習。

二是因為入職不久,就被老大催著註冊一個github,也經同事的分享,知道了很多的學習資源,對自己改變了很多,每天都看一些社區的文章,公眾號的文章,從中學習和瞭解知識和行業趨勢。自己也喜歡在社區上寫博客。這也是剛開始。

這個經歷,對我的改變,太多太多。改變最大的主要兩個方面:
1.對於前端開發,現在並不是像以前那樣一味的使用html+css+js+jquery,我有和公司的同事持續的努力,關註前端的趨勢,探索前端的技術。我也很感謝公司的兩個前端對我的耐心指導。
2.還有一個方面就是在工作之餘的時間,以前我主要是活躍於Q群,現在就算有空餘的時間,我也基本沒看過Q群,而是自己學習,如果有什麼需要分享的,就在社區寫文章或者交流!

在工作這一方面,特別是接觸前端三年以下的人,有人帶和沒人帶是有區別的!有人指導下,可以少走很多彎路。有時候不知道學什麼東西了,也可以給出一些建議。前提是,自己也要努力學習。

大家業不要以為有人帶就自己就不需要思考了,完全讓別人教!因為教的可能不會一字一字的教,可能就是指導一下,別人也要上班,也要做事的,沒那麼多時間詳細教!別人如果教的太詳細,對自己而言,未必是好事,因為教的詳細,說的就多,記住的就少,思考也少,容易亂,印象就不深刻。所以建議大家,在向別人請教的時候,要做筆記或者在電腦實際操作,加深自己的印象,不然很容易忘記!好記性不如硬筆頭!

6.關於社區

在社區混了有一段時間了,順便說下自己的感受。6月加入segmentfault,是我第二個註冊賬號的社區,是第一個因為想寫博客而加入的社區。剛開始寫文章的時候,人氣不高,後來才漸入佳境!寫文章很辛苦,是一個腦力活和體力活(針對我自己,一般來說我寫一篇文章是4小時左右,有幾篇文章寫了超過10小時),但是值得。因為好處和收穫也不少,主要有下麵幾個:
1.加深對技術點的學習和理解,方便對日後的使用。也是思考和總結的一個路徑。
2.結交更多志同道合的朋友,大家交流意見,互相幫助。
3.提高自己的思維能力和寫作水平。
4.當日誌使用,看著自己寫過的博客,回想著這個過程,也是一個美好的回憶。
5.鞭策自己持續的學習和思考。寫博客就是這樣神奇,寫了第一篇,就是想持續的寫下去,要想持續的寫下去,自己就必須要持續的學習和思考,否則沒內容可寫!

其它的好處和收穫就不多說了!

雖然我寫文章主要是總結記錄,分享,交流意見和認識朋友。但是每一次進入社區的時候,看到自己的文章被收藏,點贊,心裡都是挺開心的,因為這就說明瞭我的文章得到了別人的認可,是別人對自己的一種肯定,一種鼓勵方式!

既然這篇文章在segmentfault發佈,說下對segmentfault的感受(這裡偏題了,希望大家不要介意):

內容方面,問答和文章模塊做得比其他幾個社區要好!講堂我比較少接觸,在這裡不多說。

意見反饋方面,也是很聽取用戶的意見!

福利方面,每個季度會為top-writer送上周邊!很榮幸我也當過top-writer,拿過周邊!收到這些周邊的時候,我也是很興奮。可能是因為我是一個比較重情的人,即使是實用性不大的貼紙,胸章,卡片,我也沒亂扔,因為覺得這些周邊,是對社區對我的一個很大的鼓勵和肯定,也是很有紀念意義的一個小禮品!

遺憾的地方就在於segmentfault的文章顯示機制,似乎只有被推薦的文章,才可能有高的瀏覽量,沒有被推薦的很難有高的瀏覽量!而且是由segmentfault決定文章是否被推薦!這個是從我以往的經驗大概猜的,不一定准確!(試過同一篇文章,完全一樣的內容,同樣的發佈時間,兩個社區,在發佈了5天後,瀏覽量/收藏量這個比值不相上下,但是另一個社區的瀏覽量是segmentfault的30倍,現在也超過15倍!其他被推薦過的文章,瀏覽量也不如另一個社區,但是相差的遠遠沒達到兩倍,即使另一個社區是主打文章的社區!)

7.工作之外

大家對程式員的印象可能都是‘宅’,‘內向’,‘悶’,‘游戲狂’等,而且大家看文章,看到這裡,大家對我的印象可能也是寫代碼和學習。其實不然,我有自己的興趣愛好,而且興趣愛好還比較廣泛,只是每一個愛好都沒有太深入,水平就是半桶水而已(此處尷尬10000+)。

工作之餘,專業技能之外,有自己的興趣愛好,做自己喜歡做的事情,可能是最簡單的幸福。興趣愛好和早睡早起,吃好喝好這些習慣一樣,都是善待自己的一種方式,也能讓自己的生活充滿樂趣!

我自已興趣愛好有:攝影,健身,詩詞,籃球,羽毛球,旅游,跑步,做飯,線下交流等!這些興趣愛好,可能有些因為特別原因我還沒行動過,但是未來一定會有行動的。

8.幾句雞湯

1.可能很多人像我之前一樣,會和別人比較:“同樣是一年經驗,別人的技術都那麼厲害,待遇那麼高了!”,“那些人技術水平不如我,但是卻找到比我好的工作,有人帶,技術也好!”等。對於這些也抱怨過,悶悶不樂過,但是想著我這個樣子,除了自己變得頹廢之外,改變不了任何情況。也有可能別人的努力我看不到,或者別人的其他方面比我優秀,即使真的只是運氣不如別人,那又怎樣了!我能做的,只有堅持和努力!現在我的想法是:不求與別人比對,只求超越自己!

2.我不期待突如其來的運氣,只期待我的努力能有所收穫。努力未必成功,但是不努力一定失敗。即使沒有成功,至少我在回想以前的時候,我至少努力過,奮鬥過,這就足以無怨無悔。我也相信,以後小有成就的我,一定會感謝現在努力的自己!

3.換了幾次工作,可能在別人眼裡,我換工作很頻繁,但是在我自己眼裡,我覺得是正確的選擇。也是這幾次換工作,讓我體會到,有時候選擇比努力更重要。與其在一個沒有什麼收穫的方向努力,不如選擇一個更多收穫的方向努力。

9.未來展望

關於未來,在學習方面,不斷學習是必須的,但是目標我不立得太明確。因為以往的經驗告訴我,前端這一個領域,技術更新的非常的快,計劃總是趕不上變化。擔無論如何變化,未來我繼續展望,繼續努力,望自己能在行業立足,更上一層樓。也期待能和大家有更多的交流,更多的學習,更大的進步!

【我有一個前端學習交流QQ群:328058344 如果你在學習前端的過程中遇到什麼問題,歡迎來我的QQ群提問,群里每天還會更新一些學習資源。禁止閑聊,非喜勿進。】


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 獲取二維碼 通過後臺介面可以獲取小程式任意頁面的二維碼,掃描該二維碼可以直接進入小程式對應的頁面。目前微信支持兩種二維碼,小程式碼(左),小程式二維碼(右),如下所示: 獲取小程式碼 我們推薦生成並使用小程式碼,它具有更好的辨識度。目前有兩個介面可以生成小程式碼,開發者可以根據自己的需要選擇合適的接 ...
  • 感覺自己給自己釋疑,也是一個極為有趣的過程。這次,我還新增了“猜想”一欄,來嘗試回答一些暫時沒有足夠資料支撐的問題。 Swift 版本是:4.0.3。不同版本的 Swift,可能無法復現問題。 個人記錄,僅供參考,不保證嚴格意義上的正確性。 ...
  • 初次接觸 Swift,建議先看下 A Swift Tour 否則思維轉換會很費力,容易卡死或鑽牛角尖。 同樣是每一章只總結3個自己認為最重要的點。這樣挺好!強迫你去思考去取捨。以後再看,也方便快速重建記憶。 註意: 個人筆記,僅供參考,不保證嚴格意義上的正確性。 ...
  • objc 自己較為熟悉,想熟悉下風頭正勁的 swift。就先從官方的入門手冊開始擼。 每一小節,我都摘錄或總結3個對自己三觀衝擊最大的【知識點】,以方便以後溫習。總結不保證絕對正確,僅供交流之用。O(∩_∩)O哈哈~ ...
  • 一直用C#編程,在日常字元串拼接中string.Format()一直是個很好用很常用的方法,不用自己+++,既影響開發效率也影響可讀性 然而在js中並沒有這樣的函數可供使用,so整理了一個js的字元串format函數供項目的日常使用 雖然並不是很完善也不能提升拼接效率,但是足夠滿足開發過程中的工作效 ...
  • 近期項目因為怕數據污染所以用到了js的對象複製 js里的對象都是繼承自object,是引用類型,所以無法通過=號複製 所以整理了一些常用的複製方法,如下 一、通過JSON序列化和反序列化創建新的對象 測試一下: 測試結果: 然而,這個方法並不能進行深度複製,對於function屬性並不能複製到。那麼 ...
  • 如果再這樣下去,每天寫代碼的時間會越來越短的。。。 還是不夠專註啊,不能帶手機去自習的原則不能改,否則就會死的很慘。。。。 今天就只是完成了homework4而已,而且還留了些問題沒有想出答案來。 這裡採坑了,之前看老師講課的視頻的時候,沒註意sort裡面是個匿名函數,不是一般的坑,而且裡面可以不放 ...
  • Vue.js是目前很火的一個前端框架,採用MVVM模式設計,它是以數據驅動和組件化的思想構建的。相比於Angular.js,Vue.js提供了更加簡潔、更易於理解的API,使得我們能夠快速地上手並使用,特別適合單頁應用的開發。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...