后端開發(fā)怎么樣?
一、Java人才市場的飽和度
想要知道Java現(xiàn)在的就業(yè)前景怎么樣,就要了解Java人才市場的飽和度。道理很簡單,一個人才數(shù)量已經(jīng)飽和的行業(yè)自然沒有什么發(fā)展前景,競爭壓力也會很大。Java雖然是程序員們應用最廣泛的一種語言,但由于Java語言的應用范圍十分廣泛,多數(shù)企業(yè)會把Java作為企業(yè)的開發(fā)語言,所以,Java開發(fā)的崗位目前還是處在不飽和狀態(tài),想要學習Java的學員完全沒有必要擔心Java人才市場飽和度的問題。另外,Java開發(fā)程序員數(shù)量雖然眾多,但基本都處于技術(shù)水平的下游,Java技術(shù)的中上游人才還是十分稀缺的,尤其是資深的Java開發(fā)工程師,目前市場上更是鳳毛菱角,有很大的市場需求。學員們經(jīng)過自己的不斷努力,發(fā)展前景還是十分廣闊的。
Java現(xiàn)在的就業(yè)前景怎么樣?
二、Java應用市場發(fā)展前景
由于Java開發(fā)的應用程序具有很強的跨平臺性,Java本身也有許多其他語言所不能比擬的優(yōu)勢。因此,Java應用市場的發(fā)展前景還有很廣泛的生長空間。相信,隨著Java技術(shù)的不斷發(fā)展,Java在編程界的統(tǒng)治地位會更加牢固。
三、Java人才薪資待遇發(fā)展趨勢
Java人才的薪資待遇怎么樣?有什么發(fā)展趨勢?這些問題都是想要學習Java的學員比較關(guān)心的問題。程序員的起始薪資相對于其他行業(yè)都不算低,Java程序員的起始薪資也是一樣的道理。就目前的情況來講,一般沒有任何工作經(jīng)驗Java程序員,起始薪資都會在6k以上。擁有1年以上工作經(jīng)驗的Java開發(fā)人員,薪資一般都會達到8k以上。像北上廣深這樣的一線城市,擁有3年以上工作經(jīng)驗的Java開發(fā)人員,薪資一般可以達到12k以上,參與產(chǎn)品策劃,升職到產(chǎn)品經(jīng)理職位的Java開發(fā)人員,薪資基本都會達到15K以上。然而一般的Java開發(fā)人員的薪資只是其收入的一小部分,多數(shù)Java開發(fā)人員的項目獎金、季度獎金、年終獎等都是平時工資的數(shù)倍。如果Java開發(fā)人員再往管理層發(fā)展,那薪資還會有更廣泛的可能性。
四、Java人才職業(yè)發(fā)展狀況
很多人會認為做程序員、碼農(nóng)是吃青春飯的工作。人才發(fā)展狀況并不會太好。其實,任何一個最底層的崗位,都是“青春飯”,因為多數(shù)人都會往高處走,不會一成不變的只做底層的基本工作。Java程序員也是如此。在中國,Java開發(fā)人員的職業(yè)發(fā)展前景還是十分樂觀的。擅長技術(shù)的可以向Java高級工程師發(fā)展,擁有多年Java開發(fā)經(jīng)驗的技術(shù)人員是眾多企業(yè)可遇而不可求的高端人才。同時Java開發(fā)人員還可以往管理層發(fā)展,成為一個項目的項目經(jīng)理,負責統(tǒng)籌企業(yè)項目的開發(fā)進度,也是一種不錯的選擇。
Java現(xiàn)在的就業(yè)前景怎么樣?總而言之,學習Java開發(fā)已經(jīng)成為想要學習計算機編程學員們的首選方向,就業(yè)前景一片大好。
學習Java軟件工程師后可以從事哪些崗位?
學習了java軟件工程師后,可以從事的崗位眾多,Java已成為當今市面上最受歡迎的編程軟件,對于處于信息高速發(fā)達的今天,Java技術(shù)已經(jīng)無處不在,手機軟件、手機Java游戲、電腦軟件、PC網(wǎng)站、移動網(wǎng)頁等等,都在運用Java技術(shù)??梢赃@樣說,只要你使用手機、電腦等電子產(chǎn)品,你就會用到跟Java有關(guān)的東西。常見的崗位如下:
所以學習Java,畢業(yè)以后可以找開發(fā)網(wǎng)站方面的工作,各個企業(yè)或者想通過互聯(lián)網(wǎng)進行與用戶交流的單位,都需要開發(fā)自己的網(wǎng)頁。所以,網(wǎng)站網(wǎng)頁開發(fā)是Java工程師的首選工作之一。
IC設計職位介紹之“數(shù)字后端設計工程師”
IC設計職位介紹之“數(shù)字后端設計工程師”
數(shù)字后端處于數(shù)字IC設計流程的后端,屬于數(shù)字IC設計類崗位的一種。在IC設計中,數(shù)字后端所占的人數(shù)比重一直是最多的,而且隨著芯片規(guī)模不斷加大,后端工程師需要的人數(shù)將會越來越多。
一般來說,數(shù)字后端按崗位類別可以分為:邏輯綜合,布局布線physical design,靜態(tài)時序分析(STA),功耗分析Power analysis,物理驗證physical verification等崗位。人才的需求量進一步加大,這也是現(xiàn)階段數(shù)字后端工程師招聘量巨大的原因。
1、主要干什么?
邏輯綜合(Synthesis)
主要負責將RTL code轉(zhuǎn)換為實際后端使用的netlist網(wǎng)表, 一個好的網(wǎng)表對布局布線的工作起到?jīng)Q定性作用。要盡可能做到performance, power, area的優(yōu)化。尤其是現(xiàn)如今的一些要求高性能的設計,對綜合的要求非常高。
綜合質(zhì)量很大一定程度上取決于綜合軟件的性能,業(yè)界流行的兩個綜合工具是Synopsys的Design Compiler和Cadence的Genus,熟練的掌握兩個工具的使用方法是綜合工作的一個基本條件。
布局布線(PD)
布局布線是數(shù)字后端中占比最大的工作,主要負責netlist到GDSII的轉(zhuǎn)化過程,步驟包括Floorplan,Place,CTS,Optimize,Route,ECO等,確保自己負責的模塊滿足時序還有物理制造的要求。同時,需要協(xié)同其他工程師,及時提供他們需要的文件,比如def, spef,網(wǎng)表等。是數(shù)字后端中最核心的工作。
布局布線對工具的依賴程度較強,而且工具操作相對來說較為復雜。業(yè)界較為常用的是cadence的Innovus軟件和Synopsys的ICC,掌握這兩大工具的使用需要花費一定的時間。
靜態(tài)時序分析(STA)
靜態(tài)時序分析簡稱為STA,時序驗證分析是數(shù)字后端中的重要一塊內(nèi)容,芯片需要滿足各種corner下面的setup,hold時序要求以及其他的transition, capacitance, noise等要求。STA需要制定整個芯片的sdc約束文件,選擇芯片需要signoff的corner以及全芯片的timing eco流程。是一份難度要求很高的工作。
靜態(tài)時序分析通常通常需要掌握Synopsys的primetime以及cadence的tempus兩大軟件的使用方法。
物理驗證(PV)
物理驗證也是tape out前的一項重要事項。如果物理驗證有錯,那芯片生產(chǎn)就會失敗。在布局布線工具中,軟件只能檢查到金屬層上的物理違反,而真正的物理驗證需要檢查到器件底層(base layer).因此,物理驗證需要將金屬層和底層金屬合并到一起,進行全芯片的drc檢查。同時,還需要做全芯片的LVS(版圖與原理圖一致性檢查),ERC(電氣規(guī)則檢查)。確保芯片沒有任何物理設計規(guī)則違反。
物理驗證一般在mentor公司的calibre中進行,是業(yè)界標準的物理驗證工具。
功耗分析(PA)
功耗分析也是芯片signoff的重要一大塊,隨著現(xiàn)在芯片的規(guī)模越來越大,功耗在芯片的中的地位也越來越高。功耗分析的兩大任務是分析IR drop(電壓降)和EM(電遷移)。及時將結(jié)果反饋給布局布線任務組,讓他們及時修改后端設計圖,解決設計中潛在的問題。
一般功耗分析使用的工具有Ansys公司的redhawk,以及cadence公司的voltus和synopsys公司的ptpx。
2、主要打交道的人
數(shù)字后端工程師通常都是以一個項目組作為一個團隊,前面說的這些任務都會分為不同的角色。通常,一個項目中會有一名頂層工程師,一名STA工程師,一名功耗分析工程師,一名物理驗證工程師以及若干名模塊工程師,這些工程師需要相互合作,共同完成全芯片的RTL到GDSII的過程,同時確保沒有時序以及物理驗證上的違例。
數(shù)字后端工程師還需要經(jīng)常與前端工程師打交道,確保網(wǎng)表的功能正確以及sdc的正確制定,及時將后仿文件交付給前端,讓前端工程師能盡快通過仿真發(fā)現(xiàn)潛在的設計問題。
DFT工程師也是我們經(jīng)常與要交流的,因為測試邏輯設計在現(xiàn)在的芯片中的比重越來越大,后端工程師需要與DFT工程師確認好測試SDC的制定,掃描鏈scan chain的物理走向等任務。
3、需要掌握的技能和條件。
數(shù)字后端主要以軟件工具為主,主要掌握以下軟件(以cadence, synopsys,mentor公司為主)
布局布線:Innovus/Encounter, ICC2/ICC
綜合:DC, Genus
物理驗證:Calibre
靜態(tài)時序分析: PrimeTime, Tempus
功耗分析: Redhawk, Voltus,PTPX
每種平臺需要你掌握的技能不大一樣,通常學會每種平臺下學會一種工具即可。一個初級工程師想全部掌握這些技能也很難,如果這些工具你都會使用,就變成老司機了。
由于數(shù)字后端工程師需要跑一些自動化的任務,所以掌握必要的腳本語言也是必須的,比如掌握下面知識就顯得比較重要:
Verilog
TCL
Perl
Python
所有的技術(shù)類崗位,主要看的兩點就是:專業(yè)技能(skills)和項目經(jīng)驗(experience)。所以除了上面列的這些技能,你能實際做過一兩個項目,哪怕是一些小模塊的后端設計,也是很重要的,尤其是做項目過程中積攢的debug經(jīng)驗。
如果你是在校學生,學校里實踐數(shù)字后端的機會較少,所以基本上你只要簡單懂一點流程以及時序方面的內(nèi)容,可能就可以找到數(shù)字后端工程師的職位了?,F(xiàn)在在校學生通過各種渠道(比如E課網(wǎng)),很多同學都掌握了上面的這些技能,甚至積累了一兩個項目經(jīng)驗。會的人多了,招聘的要求也自然高一些了。
現(xiàn)階段,數(shù)字后端工程師主要還是以招聘研究生為主,本科生招的很少。不過好消息是對專業(yè)的要求并不是很苛刻,并非集成電路方向不可,只要你掌握了上面的這些技能,哪怕不相關(guān)專業(yè),比如材料、物理、自動化、機械等專業(yè),也是可以成功應聘。
學歷本科的同學也不要氣餒,有工作經(jīng)驗的本科生,還是可以找到數(shù)字后端工程師的職位的,而且有很多成功的例子的。畢業(yè)學校一般的同學也不要氣餒,985高校畢業(yè),肯定是有優(yōu)勢的,但畢竟每年畢業(yè)生不多,在現(xiàn)在IC行業(yè)整體缺人的大背景下,依然會招收學校排名一般的學生的;當然前提還是一樣,有專業(yè)技能(skills)和項目經(jīng)驗(experience)。