思否有約|@Jenk:放寬心態,學會“技術”摸魚

SegmentFault思否發表於2023-05-04
程式設計師嘛,可能就是需要有一股這種專業的精神,來把它搞好。

今天我們採訪的嘉賓 @Jenk,從大學就開始接觸網際網路行業。畢業後,他從一個前端開發逐漸轉向全棧。他喜歡嘗試新技術和好玩的東西,一切皆源於他的興趣愛好。儘管他曾經只是一個普通的前端開發,但他的“危機感”比較強烈,如今偏離規劃走向 Team Leader,變得越來越忙碌。儘管這使他感到非常累,但他也能夠適應。無論未來如何,他都會熱情地投入他所熱愛的事業。

在思否社群的五年中,他在社群分享了很多前後端的知識和經驗,為別人解答了很多問題,併成為了社群 2021 年、2022 年的 Top Writer。我們非常榮幸邀請到 Jenk,以下是我們對他的訪談。

Q:向大家簡單的自我介紹一下吧~

大家好,我是王志超,部落格名叫 Jenk,其實就是 Jenkins 的縮寫。95 年出生,老家山西,畢業於西安交通大學,目前已經在西安定居,已婚,有一娃三歲。

Q:目前工作中主要使用哪些技術?

現在做全棧,所以前後端都會用到一些,前端主流的就是 JavaScript、CSS 還有 HTML,框架主要就是 Vue 和 React,後端的話就是 Spring Boot,跟常規的一些東西。日常工作中其實沒有固定用的技術,一般是專案裡需要什麼新的東西,就去學什麼。目前主要使用的還是前端三大框架,Vue、React 還有 Angular。目前主要就是 JavaScript 還有 Java 這兩種技術。

Q:團隊的構成是怎樣的,日常如何分配工作?

我們團隊現在基本上是 1 個高階開發,剩下 3 到 4 箇中級開發,還有就是校招生。做專案的話,功能可能有難有易嘛,一般就是按業務模組的難易程度去分配活。業務上主要是我去拆分,由難到易,再分下去。我一般先去識別這個模組難不難,如果不難的話,又分給誰做,然後再跟大家確認一下,沒問題就可以開始做了。每次都是這個流程。如果我對後端不瞭解的話,這個時候我會從後端裡找一個我覺得比較靠譜的人,把這個事情委託給他。

Q:你是如何進入程式設計師這個行業的?

大學讀的計算機相關專業,算是從大學就已經接觸了計算機這個行業,畢業後也就做了這行的工作。當時主要有兩種選擇,一種是後端,一種是前端,因為感覺前端的展現方式比較新穎,畫面感比較強烈,後端相對要枯燥一些,所以就先選了前端這個行業。

Q:你是如何成為一名全棧的?

首先我對後端也比較有興趣,因為我覺得想要和後端人員進行無縫交流的話,你得懂他的東西。比如說,前端讓後端加一個東西,他會跟你說這個好難啊加不了,但是你認為這個很簡單,怎麼加不了呢?如果你懂的話,我就可以跟他說你應該這樣加,他就會想這個人是懂的,不能糊弄了。如果你不懂,他就會說,這不好加,怎麼怎麼樣,先把你誆住了,你說那行吧,那就前端來搞一下吧。之前就是這樣的,現在不是了,現在就會先分析一下,這個到底是誰的問題。現在作為管理了嘛,遇到了前後端有問題的時候,前端認為該後端做,後端認為該前端做,我看了這個問題,說這東西在後端做不合理,怎麼怎麼地,在前端做不合理,怎麼怎麼樣,就把那種分歧給解開了。

所以說我為了甩鍋,為了能甩好鍋,所以就去學了後端。我用後端做過一個完整的專案,這樣算入行了,然後再慢慢地積累。

Q:你最難忘的一段工作經歷是什麼?

我剛工作那會兒,可能自己比較菜吧,做一個功能模組,有時候加班到了凌晨兩到三點,那會的提交程式碼什麼的公司裡面也有推送嘛,我在兩三點提交了一段程式碼,然後領導們看到了,就讓我早點休息。現在回過頭來看,我覺得那段時間主要是自己能力不夠,缺乏學習,其實做事情前還是太著急了,很多東西都要先去想一想,大體的架構是怎麼做的。所以那會兒我覺得主要是太菜,造成的影響就是熬夜到很晚。

那個時候有很多技術還是新的, Angular 2 剛出來,國內大家都還在用 AngularJS 和 Vue 2,基本上沒有相關的資料,然後我用 Angular 2 遇到了很多問題,去查國外的資料,很多問題也不好查。當時我就去論壇裡面去找,或者去 StackOverflow 裡找人私聊,問這個問題該怎麼解決,這個怎麼怎麼弄,就這樣去問問題。因為搜尋引擎已經搜不到什麼的東西了,只能邊學邊去做,比較費時間,就會加班到很晚。

其實我完全可以下班就走,可以不去弄這個東西,但是我覺得,程式設計師嘛,可能就是需要有一股這種專業的精神,來把它搞好。

Q:工作至今,有哪些重大的轉變?

最大的轉變就是我從一個前端轉變成了一個初級的全棧。現在其實已經不是一個純開發了,現在在帶團隊,帶了一個 20 人左右的前後端的產品測試的一個團隊,已經偏離開發崗位了,也在做開發,但是做得比較少。

一開始我的規劃是最終往技術方面發展,現在我的規劃有點變化,往 Team Leader 的方向去發展了。其實對我來說我覺得這兩個都可以。轉方向的原因主要有兩點吧,第一點是現在確實也不太需要太多的開發崗位了,現在招聘也不再去招初級的開發工程師,我們現在招聘都是高階起步,所以開發的崗位其實是越來越少的。其次就是,當時公司對人員晉升有一些培養計劃,有意向的人可以嘗試一下,然後我就選擇嘗試一下。這樣的話,如果要當團隊管理的話,需要掌握前後端的一些相關知識,得懂一點才能去指導別人,剛好我也都會一些,就想嘗試一下。目前來看,總體上還可以,各方面都能把握得住,轉型初期還是比較順利的。

Q:如何學習一項新技術?有哪些比較受益的學習方法?

之前我剛剛接觸這些技術的時候,可能我認為最快的就是去看別人的專案,就找一些開源專案去學習,看他們的程式碼。比如說我要做這個功能,我就去看程式碼,看別人怎麼做的,遇到不同的語法就去看官方文件。現在的方式是先去看官方文件,然後再去找一些相關的專案,類似主要是去看別人程式碼去學習。如果沒有程式碼的話,那就只能是去翻文件了。

其實最早我是看影片來學習的,但是我覺得太費時間了,而且影片的含金量也參差不齊,所以就拋棄了這種方式,不去看影片了,覺得自己差哪塊就看哪塊。現在就是直接去看文件,看程式碼,讀程式碼,不要一味地去看“XXX 學習影片”這種東西,有的時候廢話特別多,我覺得浪費時間。

光自己學還不夠,還要跟別人分享才能進一步鞏固。為什麼老師上課越來越熟練,就是因為他每天都在給別人講,講了以後學生又再問他問題,他就又去解答。一開始我弄了一個 QQ 群,幫大家解答問題,後來加入思否社群之後,我又在社群上去幫別人回答問題。在回答問題的過程中,我也可以學到很多東西,擴寬我的知識廣度。舉個例子,比如說我在社群發現了一個比較好奇比較喜歡的問題,我就去搜一遍,然後再驗證一下,我發現剛好也是對的,然後我再去回答這個問題。這樣提問者得到了答案,而我也學會了一點我喜歡的那部分知識,就是這樣的一個過程。

Q:對未來有沒有什麼規劃?

規劃的話,在短期內應該還是往 TL 方向去發展,做得更好一些。近期內可能還需要再去提升一下自己各方面的軟實力吧。有時候感覺自己缺少一些專案管理方面的專業知識,實戰經驗是稍微有了,但是理論可能是沒有的,不知道應該透過什麼樣的方式,去對大家進行引導。就是野路子能走通,但是可能不正規,要學一下官方的方法。

Q:如果可以重新選擇,是否還會當程式設計師?

這個問題我問過很多朋友,有的已經轉行了,有的去創業了。程式設計師這行畢竟有些吃不消,如果後面轉型沒轉好,確實是個青春飯。比如到了 40 歲的時候,如果做的不是那種高階開發崗,就是些無關緊要的邊角料的工作的話,隨時可能因為業務變化被裁掉,這個危機感還挺強烈的。

如果重新選的話,我可能就不會選這行了,可能會選一些金融類的行業吧,或者那種研究院之類的,偏國有一些的工作,資歷越長,越穩定。包括我的弟弟妹妹,我都沒有讓他們入這一行了,我讓他們的選擇方向就是去考與設計相關的,比如給排水等等。網際網路太快了,你看現在出了 AI,誰能預料到?AI 它可能代替初級程式設計師,誰也想不到。但是那些傳統行業的話,前期的工資可能不太高,可是你越往後,年齡越長,職稱越高的話,薪資水平也是慢慢會上來的,所以還是看個人怎麼選了吧。

目前的想法就是先拿著錢,後面幹不動了再說,怎麼樣都能混口飯吃嘛,反正就是幹一行愛一行吧。

Q:開源帶給你最大的收穫是什麼?

我的開源專案現在有 700 多星了,是一個介面服務。最開始做開源是群裡有個人問我,有沒有這樣一個介面,可以實現地址識別什麼的,我說我幫你做一個吧,他說還不錯。然後我就上了一個基礎版本的,就是可以呼叫的。後面發現我要不停地去維護這個東西,因為用的人確實挺多的,我就弄了一個終極版,介面是免費給別人呼叫的,但是如果要用這個原始碼的話,就需要像我們知識付費了。很多人為了把這個部署到自己的公司內部,或者是想更穩定一些,就會向我們付費。

所以開源最大的收穫就是一個知識的分享和與其他人的一些意見交流吧,還有一個就是偶爾有一些零花錢。

Q:對於剛入行的開發者有什麼建議嗎?

我剛入門那會兒,讓我去弄一個新東西,首先我是恐懼的,我沒有接觸過這個東西。現在可能不太一樣,現在就是要學什麼那就學唄,現在學習的文件也比較全嘛,你就照著文件照著資料,公司要什麼就學什麼就可以了。不會那就不會唄,不會就再去學唄,公司會給你時間去學的,總不能因為你不會這個東西就把你開了吧,心態要放寬嘛。之前就是太年輕了,總擔心我不會的話公司會把我給怎麼樣呀,心理壓力會比較大。

等社會經驗稍微多一些,掌握了一些學習技巧,就能用什麼學什麼了。而且公司裡的每個人都是你的資源嘛,都可以利用起來嘛,問嘛,以前覺得不好意思問,現在覺得不會就問嘛,他肯定會跟你說的。

如果你喜歡學的話,比如說現在上班不是很忙,那麼所謂的摸魚,就有兩種方式去摸魚。一種是刷微博刷影片,還有一種叫技術摸魚,就是我去用新的技術搭一個什麼專案也好,做一個什麼頁面也好,這是一種成長的摸魚,學習的摸魚。所以我的建議就是前期儘量多去做一些這種學習性質相關的摸魚,這樣在技術上的提高才會比較快。

小編有話說:

Jenk 說感覺自己對開發也沒有什麼特別的激情,就是喜歡新技術和好玩的東西,一路走來都是興趣在驅動自己,從而更加深入地去專研學習。我想這也正是程式設計的魅力所在,永遠走在最前線,永遠能創造出新事物。希望我們能永遠保持這種熱愛,一路前行。


歡迎有興趣參與訪談的小夥伴踴躍報名,《思否有約》將把你與程式設計的故事記錄下來。歡迎大家掃描下方思否小姐姐二維碼或直接私聊我,進行報名。

相關文章