聊聊困扰很多同学的一个问题:是否要转方向 ?
生活随笔
收集整理的這篇文章主要介紹了
聊聊困扰很多同学的一个问题:是否要转方向 ?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
戳藍字“CSDN云計算”關(guān)注我們哦!作者 |??大飛碼字
責編 | 阿禿
這篇來聊聊困擾很多同學的一個問題:是否要轉(zhuǎn)方向 ?
這類問題沒有標準的答案,每個人的理解也不一樣,我寫下的也只是我個人的想法,僅供大家參考。
iOS 開發(fā)
本以為 iOS 開發(fā)咨詢這類問題的會比較多,沒想到實際卻很少。后來想想,iOS方向可能已經(jīng)比較 "冷"了吧。iOS 目前的市場占有率只有百分之十三了,比起巔峰時期,確實低了很多,而且還有繼續(xù)下降的趨勢。連技術(shù)類公眾號里面,都幾乎見不到 iOS 方向的。
我記得有個畢業(yè)生咨詢過 iOS方向的問題,我給的建議是,順便學學 Android 開發(fā)或前端開發(fā)。
前幾年的時候,我們這邊有:iOS 開發(fā), Android 開發(fā), 塞班開發(fā)。當時的 iOS 可謂如日中天,很熱門,沒想到只幾年時間,市場變化如此之大。
近幾年,我們這邊的iOS開發(fā)都被要求學習 Android ?甚至接觸一些前端開發(fā)了,所以我覺得 iOS 的同學確實需要考慮這個問題。
當然,我不建議 iOS 的同學直接轉(zhuǎn)后臺開發(fā)或者機器學習, Android 和前端是更好的過渡。Android 開發(fā)
Android 開發(fā)的轉(zhuǎn)方向咨詢是最多的,最想轉(zhuǎn)的是大數(shù)據(jù)和機器學習。不過我大部分都是建議不要轉(zhuǎn)。目前客戶端開發(fā)確實有大前端化的趨勢,像 Flutter, React Native 確實也帶來了不小的影響, 但相對于原生開發(fā), 這些框架都還存在不少的性能,細節(jié)體驗上的問題。
至于未來會發(fā)展成什么樣子,也不好預(yù)估。
就這個問題,我特地請教過我們這邊的前端開發(fā)專家。對于未來他更看好 H5 的方向,但就現(xiàn)在而言還有點為時過早,原生開發(fā)還是最好的選擇,當然,他建議大家有時間和精力也可以多接觸新框架,但沒必要現(xiàn)在就談轉(zhuǎn)方向。把現(xiàn)有的事情做好,學習些更底層,更本質(zhì)的東西是更好的選擇。
我個人的建議是 目前 Android 客戶端開發(fā)的整體發(fā)展方向還不明朗,建議先不要隨便轉(zhuǎn)方向,更加不要轉(zhuǎn)大數(shù)據(jù),機器學習。
因為大數(shù)據(jù),機器學習跟 Android 開發(fā)幾乎不搭邊,遷移的損失極大,幾乎是完全從頭開始,更合適的是前端或者后臺。前端在思維模式上更接近,后臺首選 Java 后臺 ,至少在語言層面,在虛擬機層面是可以復(fù)用的。Java 后臺
Java 后臺的同學咨詢的也比較多,大部分是想轉(zhuǎn)大數(shù)據(jù)或機器學習方向。跟 Android , iOS 不一樣,他們不是擔心 Java 后臺的發(fā)展,而是因為覺得 Java 后臺的東西太多,學起來太難了,另外覺得大數(shù)據(jù)和機器學習更火,所以想轉(zhuǎn)過去的。
對于這類同學,我不建議轉(zhuǎn)。因為難,就轉(zhuǎn)方向,這肯定是不妥當?shù)摹?/strong>凡是吃香的,賺錢的崗位,必定是一堆人涌入的,人多了,競爭自然激烈,要求,門檻自然被拉高,所以有難度其實是好事。
Java 后臺應(yīng)該算是最穩(wěn)定的一個方向了,一個是后臺開發(fā)本身就比較穩(wěn)定,近年來新增且比較火熱的也就是 go, 但 go 只是一門新的語言,有后臺開發(fā)基礎(chǔ)的同學,就算學起來也很快的,算不上是大問題。
后臺服務(wù)器系統(tǒng)這十幾年來都是以類 Unix 系統(tǒng)為主,底層機制方面,只要掌握了Linux (Unix) 和 數(shù)據(jù)庫,感覺可以吃到退休了。
后臺開發(fā)最難的幾個問題:高并發(fā),高性能,一致性。這些并不會因為語言的改變而改變,只要掌握了這些問題的解決辦法,積累了這些問題的架構(gòu)經(jīng)驗,無論怎么換語言,都可以游刃有余。
所以 Java 后臺的同學,就不要隨便轉(zhuǎn)了,遇到學習的困難,應(yīng)該是迎難而上,而不是繞道而行。Python Web
這個方向也有些咨詢的同學。Python Web 算是后臺方向,但實際業(yè)界使用的不是特別多,一些小公司或者內(nèi)部系統(tǒng)可能會用,但大廠幾乎沒有用 Python 來構(gòu)建大規(guī)模分布式后臺的。
找工作應(yīng)該是可以的,但未來發(fā)展的天花板會比較低,如果是考慮長遠發(fā)展的話,我建議學學 go 或者 Java 。相對于Java , go 要學習的東西會更少些,也更容易上手,當然這個要看個人的喜好。
關(guān)于工程轉(zhuǎn)算法
做 Android 開發(fā)的同學想轉(zhuǎn)大數(shù)據(jù)或機器學習,Java后臺的同學也想轉(zhuǎn)大數(shù)據(jù)或機器學習。因為工程和算法有很大的不同,所以我還是單獨說說這塊吧。先說數(shù)據(jù)分析。
數(shù)據(jù)分析實際的工作并沒有大家想象的那么好,大部分數(shù)據(jù)分析的同學最后都是在公司內(nèi)部做報表,做數(shù)據(jù)提取,也就是跑SQL,其實是很枯燥的。
我們這邊做數(shù)據(jù)分析的同學也經(jīng)常抱怨,工作重復(fù),枯燥且沒有技術(shù)提升,所以想轉(zhuǎn)數(shù)據(jù)分析的同學要慎重。
當然有同學會說,現(xiàn)在數(shù)據(jù)分析很火熱呀,外面有那么多的培訓機構(gòu)以及各種宣傳都在說數(shù)據(jù)分析前景很好,但那些看看就好,畢竟是商業(yè)宣傳。
機器學習
機器學習的發(fā)展確實不錯,未來,我也很看好,它的問題是學習的門檻很高。有些同學覺得會使用開源的庫,拿數(shù)據(jù)來跑跑模型,就算會機器學習了,不好意思,如果只這個水平,對公司是沒有什么價值的。
機器學習是門檻很高的方向,無論是對于公司還是個人,只是會跑模型是不行的,我在以前的文章里面寫過算法方向的水平劃分:
第三級,完全看不懂英文的paper,知道常用的算法,但無法區(qū)分出各種算法的優(yōu)劣和適用場景,會用 Python,C++等語言的庫進行算法組裝。
第二級,不能完全理解paper和算法,但知道算法在某些特定場景下的效果和調(diào)優(yōu)的方式。可以在GitHub上面找到合適的開源實現(xiàn),進行使用甚至優(yōu)化。如果有豐富的項目經(jīng)驗和實操經(jīng)驗會加分。
第一級,能夠讀懂英文的paper,完全理解 paper 里面描述的算法。知道算法的優(yōu)劣和適用的場景,并且可以用自己熟悉的語言實現(xiàn)出該算法,且有改進和調(diào)優(yōu)模型的能力,這個算是一流水平了,應(yīng)該可以拿到很高工資。
大部分同學自學了一段時間,達到了入門的第三級,但要在工作中,真正的運用起來,至少要達到第二級的水平,但第三級和第二級的鴻溝是巨大的,要達到第二級,要有比較好的英語基礎(chǔ)和數(shù)學基礎(chǔ),我覺得自學的同學大部分達不到這個水平(有些牛人除外)。
所以做工程的同學想轉(zhuǎn)算法方向,我建議三思而行。
結(jié)語
以上,就是我對于轉(zhuǎn)方向的一些建議,不算是什么標準答案,但我覺得應(yīng)該適用大部分人的情況。轉(zhuǎn)方向是很大的一件事情,會帶來歷史經(jīng)驗的損失和未來時間的投入,是需要極其謹慎的事情。需要綜合現(xiàn)有方向的未來和新方向的未來,還有自身的學習情況來定。
最后,祝大家職業(yè)發(fā)展順利 !!!
???特邀各路大大免費入駐CSDN啦,除云計算相關(guān)書籍免費贈送外,還有海量福利奧~詳情戳?下方圖片,么么噠~
福利掃描添加小編微信,備注“姓名+公司職位”,入駐【CSDN博客】,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
責編 | 阿禿
這篇來聊聊困擾很多同學的一個問題:是否要轉(zhuǎn)方向 ?
這類問題沒有標準的答案,每個人的理解也不一樣,我寫下的也只是我個人的想法,僅供大家參考。
iOS 開發(fā)
本以為 iOS 開發(fā)咨詢這類問題的會比較多,沒想到實際卻很少。后來想想,iOS方向可能已經(jīng)比較 "冷"了吧。iOS 目前的市場占有率只有百分之十三了,比起巔峰時期,確實低了很多,而且還有繼續(xù)下降的趨勢。連技術(shù)類公眾號里面,都幾乎見不到 iOS 方向的。
我記得有個畢業(yè)生咨詢過 iOS方向的問題,我給的建議是,順便學學 Android 開發(fā)或前端開發(fā)。
前幾年的時候,我們這邊有:iOS 開發(fā), Android 開發(fā), 塞班開發(fā)。當時的 iOS 可謂如日中天,很熱門,沒想到只幾年時間,市場變化如此之大。
近幾年,我們這邊的iOS開發(fā)都被要求學習 Android ?甚至接觸一些前端開發(fā)了,所以我覺得 iOS 的同學確實需要考慮這個問題。
當然,我不建議 iOS 的同學直接轉(zhuǎn)后臺開發(fā)或者機器學習, Android 和前端是更好的過渡。Android 開發(fā)
Android 開發(fā)的轉(zhuǎn)方向咨詢是最多的,最想轉(zhuǎn)的是大數(shù)據(jù)和機器學習。不過我大部分都是建議不要轉(zhuǎn)。目前客戶端開發(fā)確實有大前端化的趨勢,像 Flutter, React Native 確實也帶來了不小的影響, 但相對于原生開發(fā), 這些框架都還存在不少的性能,細節(jié)體驗上的問題。
至于未來會發(fā)展成什么樣子,也不好預(yù)估。
就這個問題,我特地請教過我們這邊的前端開發(fā)專家。對于未來他更看好 H5 的方向,但就現(xiàn)在而言還有點為時過早,原生開發(fā)還是最好的選擇,當然,他建議大家有時間和精力也可以多接觸新框架,但沒必要現(xiàn)在就談轉(zhuǎn)方向。把現(xiàn)有的事情做好,學習些更底層,更本質(zhì)的東西是更好的選擇。
我個人的建議是 目前 Android 客戶端開發(fā)的整體發(fā)展方向還不明朗,建議先不要隨便轉(zhuǎn)方向,更加不要轉(zhuǎn)大數(shù)據(jù),機器學習。
因為大數(shù)據(jù),機器學習跟 Android 開發(fā)幾乎不搭邊,遷移的損失極大,幾乎是完全從頭開始,更合適的是前端或者后臺。前端在思維模式上更接近,后臺首選 Java 后臺 ,至少在語言層面,在虛擬機層面是可以復(fù)用的。Java 后臺
Java 后臺的同學咨詢的也比較多,大部分是想轉(zhuǎn)大數(shù)據(jù)或機器學習方向。跟 Android , iOS 不一樣,他們不是擔心 Java 后臺的發(fā)展,而是因為覺得 Java 后臺的東西太多,學起來太難了,另外覺得大數(shù)據(jù)和機器學習更火,所以想轉(zhuǎn)過去的。
對于這類同學,我不建議轉(zhuǎn)。因為難,就轉(zhuǎn)方向,這肯定是不妥當?shù)摹?/strong>凡是吃香的,賺錢的崗位,必定是一堆人涌入的,人多了,競爭自然激烈,要求,門檻自然被拉高,所以有難度其實是好事。
Java 后臺應(yīng)該算是最穩(wěn)定的一個方向了,一個是后臺開發(fā)本身就比較穩(wěn)定,近年來新增且比較火熱的也就是 go, 但 go 只是一門新的語言,有后臺開發(fā)基礎(chǔ)的同學,就算學起來也很快的,算不上是大問題。
后臺服務(wù)器系統(tǒng)這十幾年來都是以類 Unix 系統(tǒng)為主,底層機制方面,只要掌握了Linux (Unix) 和 數(shù)據(jù)庫,感覺可以吃到退休了。
后臺開發(fā)最難的幾個問題:高并發(fā),高性能,一致性。這些并不會因為語言的改變而改變,只要掌握了這些問題的解決辦法,積累了這些問題的架構(gòu)經(jīng)驗,無論怎么換語言,都可以游刃有余。
所以 Java 后臺的同學,就不要隨便轉(zhuǎn)了,遇到學習的困難,應(yīng)該是迎難而上,而不是繞道而行。Python Web
這個方向也有些咨詢的同學。Python Web 算是后臺方向,但實際業(yè)界使用的不是特別多,一些小公司或者內(nèi)部系統(tǒng)可能會用,但大廠幾乎沒有用 Python 來構(gòu)建大規(guī)模分布式后臺的。
找工作應(yīng)該是可以的,但未來發(fā)展的天花板會比較低,如果是考慮長遠發(fā)展的話,我建議學學 go 或者 Java 。相對于Java , go 要學習的東西會更少些,也更容易上手,當然這個要看個人的喜好。
關(guān)于工程轉(zhuǎn)算法
做 Android 開發(fā)的同學想轉(zhuǎn)大數(shù)據(jù)或機器學習,Java后臺的同學也想轉(zhuǎn)大數(shù)據(jù)或機器學習。因為工程和算法有很大的不同,所以我還是單獨說說這塊吧。先說數(shù)據(jù)分析。
數(shù)據(jù)分析實際的工作并沒有大家想象的那么好,大部分數(shù)據(jù)分析的同學最后都是在公司內(nèi)部做報表,做數(shù)據(jù)提取,也就是跑SQL,其實是很枯燥的。
我們這邊做數(shù)據(jù)分析的同學也經(jīng)常抱怨,工作重復(fù),枯燥且沒有技術(shù)提升,所以想轉(zhuǎn)數(shù)據(jù)分析的同學要慎重。
當然有同學會說,現(xiàn)在數(shù)據(jù)分析很火熱呀,外面有那么多的培訓機構(gòu)以及各種宣傳都在說數(shù)據(jù)分析前景很好,但那些看看就好,畢竟是商業(yè)宣傳。
機器學習
機器學習的發(fā)展確實不錯,未來,我也很看好,它的問題是學習的門檻很高。有些同學覺得會使用開源的庫,拿數(shù)據(jù)來跑跑模型,就算會機器學習了,不好意思,如果只這個水平,對公司是沒有什么價值的。
機器學習是門檻很高的方向,無論是對于公司還是個人,只是會跑模型是不行的,我在以前的文章里面寫過算法方向的水平劃分:
第三級,完全看不懂英文的paper,知道常用的算法,但無法區(qū)分出各種算法的優(yōu)劣和適用場景,會用 Python,C++等語言的庫進行算法組裝。
第二級,不能完全理解paper和算法,但知道算法在某些特定場景下的效果和調(diào)優(yōu)的方式。可以在GitHub上面找到合適的開源實現(xiàn),進行使用甚至優(yōu)化。如果有豐富的項目經(jīng)驗和實操經(jīng)驗會加分。
第一級,能夠讀懂英文的paper,完全理解 paper 里面描述的算法。知道算法的優(yōu)劣和適用的場景,并且可以用自己熟悉的語言實現(xiàn)出該算法,且有改進和調(diào)優(yōu)模型的能力,這個算是一流水平了,應(yīng)該可以拿到很高工資。
大部分同學自學了一段時間,達到了入門的第三級,但要在工作中,真正的運用起來,至少要達到第二級的水平,但第三級和第二級的鴻溝是巨大的,要達到第二級,要有比較好的英語基礎(chǔ)和數(shù)學基礎(chǔ),我覺得自學的同學大部分達不到這個水平(有些牛人除外)。
所以做工程的同學想轉(zhuǎn)算法方向,我建議三思而行。
結(jié)語
以上,就是我對于轉(zhuǎn)方向的一些建議,不算是什么標準答案,但我覺得應(yīng)該適用大部分人的情況。轉(zhuǎn)方向是很大的一件事情,會帶來歷史經(jīng)驗的損失和未來時間的投入,是需要極其謹慎的事情。需要綜合現(xiàn)有方向的未來和新方向的未來,還有自身的學習情況來定。
最后,祝大家職業(yè)發(fā)展順利 !!!
???特邀各路大大免費入駐CSDN啦,除云計算相關(guān)書籍免費贈送外,還有海量福利奧~詳情戳?下方圖片,么么噠~
福利掃描添加小編微信,備注“姓名+公司職位”,入駐【CSDN博客】,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
推薦閱讀:
- 計算機專業(yè)的學生也太太太太太慘了吧?
- 任正非采訪的數(shù)據(jù)分析解讀
只因?qū)懥艘欢闻老x,公司 200 多人被抓!
- 確認!語音識別大牛Daniel Povey將入職小米,曾遭霍普金斯大學解雇,怒拒Facebook
三年一跳槽、拒絕“唯學歷”,火速 Get 這份程序員求生指南!
最新報告:區(qū)塊鏈應(yīng)用程序交易量下降近40%,博彩類仍為最受歡迎項目……
總結(jié)
以上是生活随笔為你收集整理的聊聊困扰很多同学的一个问题:是否要转方向 ?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 启辰车子发动机异响什么原因?
- 下一篇: Boost:清理cleanup测试程序