回覆列表
  • 1 # 消防橙

    軟體工程這個專業就是針對以後從事軟體開發而開設的課程,裡面很多課程都是從理論層次建設一個體系,唯一欠缺的是實際程式設計能力,軟體工程的學生面臨一個很現實的問題,如何在掌握理論的基礎上,提高自己的程式設計能力,程式設計能力主要包括兩個方面,基本的程式碼編寫能力,程式設計思想的提升,這兩種能力都很難直接在學校裡面弄得很熟練,畢竟這些都屬於實際的專案實戰才能產生本質的提升。

    學習軟體不要抱著什麼快速提升的這種意識,這種基本不靠譜,哪有什麼快速的通道,現在市面上的書本動不動30天精通什麼程式語言,為了博眼球多賣點書而已,而且真正經典的程式設計書籍哪有什麼多少天達到什麼標準之類東西,抱著快速的心態這種對待程式設計只能會摔得很慘,程式設計是一個需要長時間積累的過程,功到自然成效果,不可能一步到位,沒有一個積累過程想快也不可能。

    在校大學生,特別是軟體工程專業的如何提升程式設計能力?

    1.先把學校開設的專業的基礎弄紮實,沒有基礎想著提升程式設計能力,幾乎就是一句空談,程式碼程式設計能力的學習需要鎖定一門程式語言,選擇自己一個最感興趣的程式語言進行全力出擊學習。把這門語言的具體細節紮紮實實的搞一遍,搞程式碼編寫的基礎。基礎的學習過程往往都是枯燥無味,而且以在校學生的理解程度,要想完全的掌握的確還是需要實踐磨練才可以,起碼可以做到概念清晰,所以先問下自己能不能守得住寂寞,安安靜靜讀懂一本基礎程式設計書,很多在校大學生,學習的C語言基本上就懂點概念,基本的結構體很多人都不懂,更不要說涉及到更加複雜一點的指標,按照這種學習水準遠稱不上達標。

    2.要讓在校大學生磨練程式設計思想,這個有點困難,思想的錘鍊主要依賴專案實戰,因為平時試驗的專案主要還是點到為止,真正的專案需要解決實際的問題,解決不了客戶就會不樂意,所以無論想什麼辦法首先要解決問題,真正的專案實戰,一定要達成某種效果,所以會不停的挖掘潛力,壓力產生動力,把之前可做可不做的事情要達成必須要做到的效果,即戰力自然會提升,一些程式設計思想模式自然就能漲的快,如果在學校期間對一些問題較真去搞也能一樣達成效果,所以想要近距離磨練程式設計思想還要藉助開源社群。

    3.提升如何找到合適的實戰專案,是每個在校大學生都面臨的問題。最直接辦法就是找個實習的地方從打雜的開始練手開始,但並不是所有的公司都會給畢業生機會。還有一種是在網上找到如何做東西的影片,跟著去做去學,一步步的去搞,這種需要很重要的一步來變通,跟著弄完之後需要獨立找個專案進行操作,不然只是跟一遍基本上沒戲。

    程式設計一件需要長期積累的技術活,不可能一日之內,也沒什麼快速方法,真要說是方法就是打好基礎,然後多做真正的專案,做完會後做好總結,然後重複反覆的操作。時間長了能力自然就上來了

  • 2 # 甜甜老大

    第一階段

    09年開始工作的時候主要是做java web開發,那時候還是SSH2架構,做了一年,10年內部調崗就開始做BI了,那時候資料統計大部分都是用的關係型資料庫,我們當時用的oracle。剛開始的時候遇到了好多問題,因為對資料庫瞭解不是特別多,各種基礎函式、高階函式都不知道,儲存過程也寫不好,工作經驗也少,也不懂怎麼最佳化。

    其中印象最深的一個問題,資料同步,從mysql同步業務資料到oracle,十幾個G的資料同步幾個小時,當時部門內都解決不了,這個問題就一直存在。

    工作中一直要用oracle,平時也不斷的學習,那時候還不像現在九點多下班是正常,基本六點下班就回家了,就是加班也是一陣陣的。所以就有很充足的時間學習,隨著積累的多了,後來我就解決了這個問題,幾分鐘資料就同步完了,那是非常的有成就感,非常興奮。

    之後的兩年一直堅持學oracle,最佳化,資料庫的體系架構,資料庫的管理。看官網的文件(英文閱讀水平也有了提升),網上免費的影片,看書,還有群交流。那時候就夢想成為一個DBA大牛。這期間還關聯著系統的學了下linux。

    第二階段

    13年的時候換了家公司,做金融保險行業,不像上家公司,資料團隊比較小,就幾個人。新公司這邊,所在的部門就是專門的資料團隊,有一百多人,分成不同的團隊,每個團隊負責不同的專案,有數倉、crm、使用者畫像、理賠、經營分析等等,大家共同協作。

    在這家公司工作三年成長是最快的,資料倉庫建模、資料建設體系、資料治理、資料質量把控、團隊建設、專案管理(帶了一年多團隊)、帶新人、溝通能力、產品思維等都得到了非常大的提升,因為接觸的專案多,眼界開闊了。

    總結這三年,是從一個開發成為一個真正的資料領域的專業人士。

    第三階段

    16年後,就是hadoop技術體系了。其實13年也接觸過,但是沒有應用到專案上,所以也就沒有系統學過。

    近幾年企業使用資料的意識越來越強,採集的資料種類也越來越多,資料量也就上去了,傳統的關係型資料庫在處理大資料這塊就顯得有些吃力了,在金融保險早就改用Td或gp。

    hadoop技術體系內,主要學習了批處理計算框架mapreduce、spark SQL ,流計算框架spark streaming、flink,資源管理器yarn,hive,hbase等。這些也是工作中日常用到的,還有java,python,有時間了還會看看AI演算法方面的,雖然現在工作中不怎麼用吧。

    平時沒事還會看看資料結構和演算法方面的東西,每次看都會有新的收穫。

    總結下:個人認為技術最終是要服務於生產的,學好學精是為了提供更好的服務,產生更多的價值,終極目標就是想盡一切辦法出色的完成工作。

    提升技術,除了書本上的東西,最主要的還是靠專案來提升,尤其是大的專案。

    另外我覺得很重要的一點,就是深度的思考,思想上不要懶惰。

  • 3 # Cyber風雲

    目前軟體工程方面薪資比較高的是演算法工程師和資料探勘工程師,你主學python,可以向這兩個方面發展一下。另外如果你對管理有興趣,可以往專案管理師發展。並不是說要一直寫程式碼才行。

  • 中秋節和大豐收的關聯?
  • 寶寶被欺侮不還手,該教他打回去嗎?