-
1 # 素食的貓
-
2 # 碼哥位元
演算法方向內容其實很廣,包含一般的機器學習、深度學習、推薦系統、影象識別、自然語言等等,以及一些特殊需求而需要用到機器學習演算法的情況。所以其實演算法之下也細分了很多方向,樓主要確定自己想了解的方向深入。有些方向涉及的數學知識不是很深很多,因此也會相對容易上手。而且國內很多企業(非知名大廠),一般都直接直接使用開源軟體,而不會自己重新造輪子,所以這也是樓主需要考慮的一方面。
後端這個概念其實也是相對不同行業業務而指代有所不同的。常見的就是web後端,那基本就是PHP、Python、Nodejs、Java一系了。但還可以涵蓋服務端的內容,例如阿里雲的odps(一個大資料資料庫,一般用於數倉),它的後端是用C++實現的。還有很多影片點播、直播、P2P傳輸也都是C/C++實現的。並且,後端並非只有跟業務線一條路,還有諸如基礎平臺研發這樣的路線,這類路線一般是開發公司內部系統(如BI)以及公司內外各個系統所公用的功能(例如批次發簡訊、郵件之類的)。因此,後端其實也分很多方向,剛畢業的同學可能暫時不確定自己喜歡哪個,可以先根據職位描述找一個個人感興趣的深入瞭解或者入職體驗一下。
最後說兩句,其實學習並不存在晚不晚一說。對於就業,考慮競爭壓力和工作量也在情理之中,但是還是儘可能貼近個人喜好吧,如果做了自己很難提起興趣的工作,其實是會有些難熬的。
-
3 # IT人劉俊明
作為一名科技工作者,同時也在指導大資料方向的研究生,所以我來回答一下這個問題。
首先,從當前網際網路行業的人才需求情況來看,以研究生為代表的研發型人才目前具有比較廣闊的就業空間,不論是崗位級別還是薪資待遇都相對比較高。對於通訊專業的研究生來說,如果要從事軟體研發的相關崗位,通常還需要一個轉換的過程,如果自己的主攻方向與軟體研發領域的差別比較大,則會影響自身的崗位競爭力。
從近兩年研究生的人才需求量來看,演算法崗位的招聘數量有所下降,而且崗位薪資待遇也並沒有前些年那麼突出,一方面原因是人工智慧領域的產品存在一定的落地難問題,另一方面人工智慧方向的前期人才儲備基本上達到了一個飽和點,所以當前要想找演算法崗位還是具有一定難度的。相比於演算法崗位來說,大資料領域的開發崗位目前釋放出了較多的人才需求,這些開發崗位的薪資待遇與演算法崗位也基本上是一致的,而且選擇的空間也相對比較大。
從工作量上來看,目前很多團隊的演算法崗位也需要完成演算法實現等工作任務,工作量並不比後端開發少,而且目前演算法在應用領域的迭代速度也比較快,這些都在一定程度上增加了演算法工程師的工作壓力。當前隨著大廠紛紛開放自身的人工智慧平臺,未來演算法崗位在短期內將很難出現爆發式的人才需求,所以如果僅僅關注於演算法崗位,在就業時將面臨較大的競爭壓力。實際上,近兩年有不少計算機專業的研究生,在就業時也會放棄演算法崗位,轉而從事開發崗位。
-
4 # 盤龍三少龔子白
個人建議你選演算法工程師的方向。因為你自己都說自己喜歡演算法了。人生很長,喜歡才能堅持下去,如果因為興趣中途換道,真的是成本非常高。現在就對比下這2個方向的發展前景。
1演算法工程師
國內從事演算法研究的工程師不少,但是高階演算法工程師卻很少,是一個非常緊缺的專業工程師。演算法工程師根據研究領域來分主要有音訊/影片演算法處理、影象技術方面的二維資訊演算法處理和通訊物理層、雷達訊號處理、生物醫學訊號處理等領域的一維資訊演算法處理。
在計算機音影片和圖形影象技術等二維資訊演算法處理方面比較先進的影片處理演算法:機器視覺成為此類演算法研究的核心;另外還有2D轉3D演算法(2D-to-3D conversion),去隔行演算法(de-interlacing),運動估計運動補償演算法(Motion estimation/Motion Compensation),去噪演算法(Noise Reduction),縮放演算法(scaling),銳化處理演算法(Sharpness),超解析度演算法(Super Resolution),手勢識別(gesture recognition),人臉識別(face recognition)。
在通訊物理層等一維資訊領域目用的演算法:無線領域的RRM、RTT,傳送領域的調製解調、通道均衡、訊號檢測、網路最佳化、訊號分解等。
另外資料探勘、網際網路搜尋演算法也成為當今的熱門方向。
演算法工程師逐漸往人工智慧方向發展。
2後臺開發
後臺開發主要是開發層面,目前最火的後臺開發需要就數java了,目前市面上的java開發初級的一般是10k以下,中級的一般是10k到20k,高階的看個人能力,但是想要到演算法那麼高師不太可能的。一般後臺開發後期要麼轉管理要麼轉架構要麼涼涼。。。。。。
本人是通訊專業的(碩士),年底畢業,未來準備加入網際網路領域,有Python和爬蟲的基礎,最近自己在學習c++。我本來想學習演算法的(深度學習方向),但是和已經工作的人和研究生同學討論說,我現在學,可能有點晚,畢業的時候不一定能找到好的工作,由於本科有c基礎,他們都推薦我做後端開發,但是我覺著演算法挺有趣的,後端有些無聊,而且據說工作後,後端的工作量會比演算法(演算法工程師,不是研究員)的大。是選擇相對容易且競爭壓力較小的後端開發,還是學起來較難競爭壓力較大的演算法呢?
回覆列表
演算法要有深度,演算法導論、資料結構、圖形處理、影象處理等等,看具體公司要求什麼、側重什麼,要是本科、研究生幹過大學生數學建模比賽並獲過獎,那就最好了。
後端程式就更加靠近具體業務,資料庫管理系統上諸如儲存過程、觸發器、檢視等程式設計多一些,很零碎,很繁瑣,當然也看具體單位。