畢業後想拿大廠offer?你得完整擁有這些計算機知識體系!

2020-12-05 CSDN

作者 | 編程指北

頭圖 | CSDN 下載自視覺中國

前言

為什麼突然想寫這個話題呢?

最近有不少新關注的讀者,在後臺問:大學學 Java 和 C++ 哪個好找工作,學前端好還是後端好,該學 Vue 還是 React。。。

仿佛看到了自己當年的模樣,所以覺得有必要單獨寫一篇文章,單純以一個計算機應屆畢業生的身份聊聊,我認為大學四年,計算機科班學生應該學些什麼,哪些才是重點。

同樣大學四年,為什麼有些同學畢業就能成為大廠 Offer 收割機,各種 SP、SSP 拿到手軟,有的同學明明在學校寫了好多網站,項目經歷滿滿,經歷春秋招,卻找到一份工作都很難。

不能說後者沒認真學習,或許是用力的方向不對。

話不多說,直接進正題吧。

正文

人類的知識邊界一直在不斷的擴張,俗話說學無止境,這放在計算機領域也同樣適用,計算機本身是一個人造科學,不屬於自然科學。

每年,甚至每個月都不斷有新的編程框架推出,學到頭禿你也學不完,也沒有必要去挨個學。

並且你會發現,很多一二線大廠內部用的東西基本都是自己搞一套的,比如服務發現、RPC、KV、DB、消息隊列、日誌、監控等等。

所以一般這些大廠招聘的時候基本不會因沒學過某種框架而掛你,反正很多東西都是要進來重新學的。

他們會更加關注你的基礎知識、解決問題的經驗以及聰明度這種更加通用的能力上。

反而是一些小公司,可能會要求你必須會 Spring、Vue、Redis... 這些框架或者組件。

騰訊JD

阿里JD

某家外包JD

上面分別是騰訊、阿里、某外包公司的招聘 JD(job description),顯然,騰訊阿里看中的是紮實的編程基本功和快速學習能力,這意味著有培養潛力。

而外包公司就要求你會 xx 資料庫、Spring 之類。不去評價哪個好,但是如果你想去 BAT,那是不是至少對照著它們的 JD 來提高自己的能力,不失為一種捷徑。

在這裡,我粗淺的把計算機編程領域的知識分為三個部分:

基礎知識特定領域知識框架和開發技能基礎知識是指不管從事任何方向的軟體工程師都應該掌握的,比如數據結構、算法、作業系統。

特定領域知識就是你從事某個細分方向時需要掌握的知識,比如做遊戲引擎的需要掌握圖形學;做前端的需要掌握瀏覽器渲染原理、前端三大件;算法工程師需要更多的數學知識。

畢竟計算機各種門類挺多的,需要選個細分方向專研下去,什麼都學只會什麼都不精(大佬除外啦。

基礎知識

現在大環境比較浮躁,很少有人願意花心思在基礎上,喜歡直接學 Python 搞機器學習、寫秒殺、做商城。

找工作的時候都是想看面經、總結速成。

但是作為優秀的計算機系學生的你怎麼能流於各種編程框架(造框架除外),糾結學 SpringBoot 還是 SSH 呢?

把時間花在算法、基礎學科上他不香嗎?功利一點講,回報反而會更大。

況且在計算機領域,很多基礎的理論並不十分高深,我們努努力就可以掌握其中的核心知識。

1、數學

首先說明,這裡把數學列出來不是為了顯得高端,而是自己吃過數學的虧。

如果你是自學轉行當程式設計師,我當然不會推薦數學,因為轉行的大概率是去學 Java、前端這類,對數學基本沒啥要求。

但是這篇文章主要面向的是還在大學的科班學生,這部分同學以後也許會去做算法(CV、NLP之類)、遊戲引擎、信息安全編碼等

這些方向對數學要求就會偏高,在計算機領域,線代、概率論、統計學這些數學分支相對比較重要,計算機本質上還是離散的。

比如在機器學習或數據挖掘中常常用線性代數來降低數據維度,很多問題最終都能化為求解線性方程組。

所以為了避免以後想走這些方向卻被數學卡住,在大一、大二上數學課的時候就好好的學一下。

書到用時方恨少,不要現在以為沒用處就不好好學,等你需要的時候,就知道後悔了。(默默流下了不學無術的眼淚┭┮﹏┭┮

什麼?你說以後肯定做開發方向?

那的確可以把數學優先級放後面一點,用得確實不多,不過上數學課的時候總該認真聽下吧,拿個高績點也是百利無一害嘛。說不準哪天你又想加入算法內卷大軍呢?

2、C語言

你也許會很疑惑,這裡明明說基礎知識,為什麼要把一門程式語言單獨列出來呢?

因為在我看來,沒有比 C 語言更適合用來理解計算機系統了。

我們後面將會提到的作業系統、體系結構 這些東西非常適合用 C 語言去理解或者去實踐。

並且 C 語言本身的語言特性非常少,但是想學好又是不容易,很多人都覺得 C 語言難,難在哪裡呢?回想了一下我大一時的感受:

簡陋的標準庫,幾乎沒有可用的數據結構和算法,什麼都得自己來指針很難理解和使用需要了解彙編、連結、裝載、內存等才能把 C 語言用好不巧的是,這些東西正是計算機系統知識的一部分,所以用 C 語言作為學習計算機系統知識是最有效率的方式。

真的很難想像用 Java 或是 Python 去給別人講解內存,因為這些語言抽象程度都比 C 語言高,意味著離計算機系統也就越遠。

在 TIOBE 程式語言排行榜上,C語言幾乎永遠佔據前三位,其地位自然毋庸置疑。

TIOBE-2020排行榜

而且幾乎你開發中用到的很多東西都是用C語言編寫的,Linux、Nginx、Redis、MySQL、Git......或許你會想要探究下原理,閱讀點這些開源軟體的源碼,那麼 C 語言也是你必備的瑞士軍刀。

深入學習 C 語言,能夠了解計算機底層的執行原理,是理解程序運行機制的絕佳語言,無出其右。

在這裡,不得不引用對C語言最經典的總結:

任何比C語言更低級的語言,都不足以完整地抽象一個計算機系統;任何比C高級的語言,都可以用C來實現。

這真是極高而中肯的評價!

所以對於計算機科班來說,不管你是做前端還是後端,算法還是開發,C 語言都建議你好好學習。這是無關方向的一門語言,就是基礎!

3、作業系統

我們編程的 IDE、寫出來的程序全部都需要運行在作業系統上,說作業系統是計算機軟體的基石也不為過。

程序運行起來就需要創建進程,這涉及到作業系統的進程管理;寫程序需要定義變量、存儲數據吧,這又涉及到內存,對應內存管理;有時候我們還需要讀寫文件,這又離不開和文件系統打交道;你需要學習使用鎖、條件變量、臨界區來保證程序並發執行時不會錯亂。

而讀寫文件、分配內存這些又離不開系統調用(System call)。

並且當你真正做起工程就會發現,很多問題是和作業系統緊密相關的,不理解作業系統,你連問題的原因都分析不出來。

比如前段時間我們出現的在基於協程(libco)的框架下,使用多線程的鎖去做同步互斥偶發死鎖,後來分析才發現原因:

由於協程是應用層實現的,一個線程內多個協程對於作業系統是感知不到的:

協程模型

那麼當一個協稱 A 上鎖後發起網絡 IO 請求,這個時候會被切換到另外一個協程B,而協程 B 又去請求這個鎖。

那麼這個時候作業系統會認為這個鎖已經被上了,因此會將協程 B 對應的線程掛起到等待隊列,這樣的話就導致協程 A 永遠無法運行,也就無法釋放鎖,導致死鎖。

解決的方法也很簡單,就是將鎖設置為可重入鎖,可重入意味著同一個線程多次去請求同一個鎖不會導致掛起。這樣當協程 B 再去請求鎖的時候,作業系統就會認為協程 B 所在的線程已經持有這個鎖了,直接返回,繼續執行。

總之,我們寫程序每時每刻都在和作業系統交互,沒有理由不學好。

4、編譯原理

編譯原理可能是我們平時接觸得最少的了,大家也許會覺得自己又不用去造新的程式語言,學編譯原理幹啥。

學好編譯原理有啥用?

你會站在更高的角度去審視這些程式語言,看到的不再是表面的語法,更會想到語法背後的實現。

這種感覺很透徹,就像搞懂了作業系統、體系結構你會明白一個程序從雙擊滑鼠開始,到底是如何被運行起來的,這種掌握一切細節,透徹的感覺,真的很奇妙,不信你去試試。

說人話!

那學了編譯原理你能幹啥?

當你學完有限狀態機以後,你會發現以前覺得很牛逼正則表達式似乎自己也能用 DFA、NFA 實現一下了。狀態機的思想在編程中很多地方都用得上。

比如解析 HTTP 協議,如果沒學過狀態機思想,你可能會一行行的 if/else 去做解析,這裡最麻煩的地方在於,if/else 需要提前將 HTTP 頭部欄位都接收到再來判斷,而我們知道 HTTP 基於 TCP,而 TCP 是流式傳輸,所以你很有可能是幾個字符一組組接收到的,這個時候用 if/else 寫出來就很難看了。

而用狀態機編寫起來代碼就會非常優雅。狀態的轉移是由規則驅動的,接收到一個字符就判斷一個,非常的方便。

繼續學完語法分析,你會掌握遞歸下降分析這樣非常重要的思想,你可以使用遞歸下降快速的實現四則運算計算器。

如果不用遞歸下降你可能需要先中綴表達式轉後綴,然後求值,這是我們大一數據結構課寫的,當時用棧寫的,有點麻煩。後來學完編譯原理,又用遞歸下降重寫了一遍,區區幾十行代碼遍搞定。

還有一類場景在實際開發中的用的很多,比如淘寶、京東這樣的電商,它們的營銷規則有很多,比如滿減、直減、跨店等等,這樣的規則是不可能寫死在代碼裡的。

那是怎麼做的呢?

一般會實現一個配置系統,並設計一個DSL(領域特定語言)來表達這些規則,將規則直接配置到系統中,這樣可以非常方便的修改,那麼如何在代碼裡去解析 DSL 定義的規則呢?這就需要為 DSL 寫一個語法解析器,這裡就會用到語法分析的方法。

DSL(Domain Specific Language),是一種用於某個特定領域的程序設計語言。這種特定於某個領域是相對於 C、C++、Python 這種通用語言而言的,通用語言可以在各個領域使用,我們熟悉的大多數程序設計語言都是通用語言,它們都是圖靈完備的。

像我們平常經常使用的 JSON、SQL、HTML 這些都算是一種 DSL,你甚至可以嘗試用遞歸下降去寫一個 JSON、XML 解析器,這比寫電商網站更有價值的。

繼續往下學你會了解到抽象語法樹 AST 如何生成、如何轉化為中間代碼、如何對中間代碼優化、最終又是怎麼生成機器指令的。

你會看到貪心算法在寄存器分配中的應用,也會看到圖論中的可達性分析又是如何實現死代碼消除。

IDE上面那個綠色的編譯按鈕對你不再是黑魔法。

為啥點一下就能生成可執行的程序?

你寫的英文字母又是如何變成一個個二進位指令的?

學完編譯原理,這些通通不是問題,媽媽再也不用擔心你的學習~

當然完成一個像 GCC、Clang 這樣的編譯器難度太高太高,我們學習編譯原理的目的也不是去造這樣的輪子,而是為了更好的理解和運用程式語言。

5、體系結構&組成原理

上面說的都是軟體層面,體系結構則是關於計算機是如何工作的,你會了解到典型的存儲程序計算機是怎樣運轉的。

記得南大有個老師說過 「我們不是學習使用計算機的,而是學習如何造計算機」,雖然造計算機有點誇張,但是至少我們得了解下計算機的實現原理,了解下代碼是怎麼被 CPU 執行的吧?不然其實你會很困惑,明明一堆英文字母,怎麼在 CPU 這種電路上跑起來的,我大一學 C 語言就百思不得其解,直到後來學了組成原理和數字邏輯。

我們說計算機中一切都是 0、1,0、1 又是通過高低電平來表達的,通過與、或、非等邏輯門電路來表達二進位的數值運算,再將這些簡單的電路集成在一起,就形成了 ALU 等具有運算能力的處理器。

你會看到一條指令是如何被CPU執行的,CPU 從內存或 Cache 中取出指令,放入指令寄存器,並對指令解碼。解碼就是按照指令的編碼規則,將指令拆分成一系列的微操作和操作數。然後發出各種設備控制指令,執行微操作。這樣就完成一條指令的執行。

我們說學完編譯原理,能夠明白寫的英文代碼是如何被變成二進位指令的,學完作業系統能搞懂二進位程序是如何被連結在一起,又是如何被作業系統加載、執行的。而組成原理則會告訴你二進位指令是如何控制 CPU 跑起來的,我們的作業系統本質上也是一個二進位的程序。

當你理解了計算機存儲層次結構,理解了多級 Cache,你就會通過優化數據訪問方式來編寫出速度更快的程序。

你會學到底層體系結構對 C 這些語言的棧幀和參數傳遞的支持,參數是如何被傳遞給另外一個函數的?函數的返回值又是如何拿到。

這是學習組成原理對於寫代碼的意義。

學這些到底有什麼意義?

你會完整的看到寫的代碼如何變成二進位指令,又是如何去控制各種門電路,最後變成屏幕上花花綠綠的程序的(當然這裡可能還需要學習顯示器的原理),這就是我們常說的「基礎」和「原理」。

並且計算機體系結構中的很多思想,是能夠廣泛運用於現代軟體開發的,比如 CPU 的多級 Cache 思想,就是我們現在伺服器開發中提高並發度常用的緩存技術,包括緩存的替換策略等等。

當計算機對你不再是黑盒,你了解寫下的代碼到執行的每一步,而這也將成為你以後的核心競爭力,作為科班畢業生不應該只會使用 Java、Redis、Mysql、Spring 來寫各種網站。

如果讀者裡有半路轉行或者從培訓班出來的,也希望你們能夠抽出空餘時間去補補這些基礎課,這會讓你在編程這條路上走的更遠和更穩。

6、數據結構與算法

為什麼把算法放到最後來講,是不重要嗎?相反,它太重要了,所以才讓它來壓軸。

如果要問我大學什麼最後悔?那肯定是沒有從大一就開始好好學算法,去打 ACM。

現在還在大一、大二的同學還不抓緊機會,別等到以後來後悔。當然,不打 ACM,我們也是能夠學好數據結構和算法的。

數據結構和算法你能在任何計算機領域裡看到,比如在編譯原理中寄存器的分配會用到貪心,死代碼檢測與消除會用到圖論裡不可達的知識;作業系統進程、線程調度會用到多級隊列和調度算法;組成原理中 Cache 的替換會用到 LRU、FIFO 等算法;開發必備的資料庫也離不開 B+ 樹、LSM 等數據結構和查找算法。

很多時候我們需要的算法都被封裝到程式語言的基礎庫裡了,以至於很多同學會覺得算法離我們太遠,其實不是的。

如果不學習算法,連什麼時候用 Map(紅黑樹實現)、什麼時候用 HashMap 都分不清。

所以學習算法有助於我們根據應用場景選擇最合適的數據結構。

日常開發中也一定離不開算法,比如小北最近工作中涉及的某種嵌套 TLV(Tag-Length-Value)結構編碼的解析,就需要用到遞歸、多叉樹等知識。如果不學習算法,那麼程序中只能見到大量的 if/else、while/for。。。

可以說不會算法的工程師一定不是一個優秀的工程師。

7、為什麼我不說計網、資料庫等

很多人喜歡把計算機網絡、資料庫原理這些也歸為計算機基礎來,我當然也認同,因為一個知識結構完整的計算機科班學生,應該了解這些知識。

但是我個人是覺得計算機網絡、資料庫無非就是建立在作業系統、編譯原理、組成原理之上的應用層軟體。

什麼是資料庫?沒有資料庫之前你會用文件去存儲數據,但是不方便查找、修改等,資料庫只是提高了這個過程的效率。

網絡幹什麼的?網絡就是讓不在同一臺電腦上的程序互相通信,本質上就是進程間通信的手段。

如果你只是開發單機工業軟體,甚至真的可以不學網絡,只是由於現在大多數程式設計師都是在網際網路公司工作,所以不管前後端,都離不開和HTTP等網絡協議打交道。

再次重申:不是計網、資料庫不重要,只是我認為它們屬於構建在作業系統之上的軟體,不劃在基礎之列。

領域知識

這個我不敢說太多,因為各個領域我也不太懂。只簡單提一點,拋磚引玉罷了。

如果你想去騰訊、網易做遊戲引擎開發,那麼圖形學一定是你繞不開的知識,此外你還得學習渲染管線、著色器、物理、光照等等。

如果你想去 PingCap 這樣的公司做分布式存儲,那麼分布式理論知識一定是你繞不開的關口,包括 CAP 定理、Paxos 算法、Raft 算法、ZAB 協議等等。

如果你想寫一個資料庫,那麼你需要去了解磁碟、索引實現、SQL 解析(編譯原理)、事務、如何用 MVCC 解決讀寫衝突等等一大堆的東西,還得了解一大堆程式語言層面的東西,比如鎖、信號量、並發編程技巧,不得不說造資料庫是一個髒活也是一個累活。

更進一步你想去做分布式資料庫,那可能還得去學習數據分片的知識,查詢任務如何做,是集中做,還是將邏輯下推給各個節點,如何實現分布式事務等等。

你說你只想去大廠 CRUD?沒毛病,老鐵!

那你得熟悉一門編譯型語言(C/C++、Java、Go),理解語言部分底層原理,比如 C++ 你得看看 STL、看看對象模型吧,你不懂什麼虛函數表、智能指針還想去騰訊寫 C++? Java 的你得背背 JVM,什麼垃圾回收算法吧,你不看看ConcurrentHashMap 好意思說你是做Java的?

咱CRUD的對象是資料庫吧?那不得學學怎麼才能把資料庫用好。用戶通過 HTTP 訪問我們得服務,總得了解 HTTP吧?順帶著不看下 TCP 三次握手、四次揮手你好意思說是學計算機的?

用戶把錢、信息放咱們這,總得保證用戶數據安全吧?那 XSS、SQL 注入、CSRF 這些常見的 Web 攻擊手段你總得了解吧?HTTPS、RSA、籤名、數字證書這些安全手段總得知道吧。

雙十一流量太大,老闆還讓你必須頂住,那你總得了解下緩存、異步、消息隊列、NoSQL 這些千萬 QPS 必備的大殺器吧?

看看!要想做好CRUD也不是那麼容易滴。

(上面這段只是換一種方式把做後端的同學要學的知識寫出來,不是吐槽更不是調侃,純屬娛樂。

技能

這就很多了,包括 VSCode、Jetbrains 全家桶這些 IDE,文檔編寫 Markdown、Git 等版本管理工具。SSH 遠程登錄、埠轉發,Ngrok 內網穿透等等這些提高你開發效率的工具,都算是技能,這個沒啥好說的,平時用到多學習多積累就好了。

我只提一點,儘早使用 Linux、類 Unix(Mac)作為主力開發電腦。我大二的時候,就是看了王 ying 的那篇《完全用 Linux 工作》,直接買了個 SSD 套上 U 盤外殼,做了一個啟動盤,後來用了將近一年的 Ubuntu,只有在選課、提交作業等需要用的 IE 瀏覽器的時候才會打開 Windows(這裡不得不吐槽學校老古董網站!)

當然了,我也不是狂熱的 Linux 愛好者,只是單純覺得做開發的話,離不開各種環境安裝、命令行的使用,這點上面類 Unix 系統帶有天然的優勢,誰用誰知道!

總結

寫完才發現,這篇文章連篇幅都是「基礎 : 領域知識 : 技能」 接近 7 : 2 : 1。

這也是我推薦你在大學期間分配學習時間的比例,至少學習基礎知識的時間不少於 50%,當然,這些東西你都學完了那可以去找找感興趣的方向專研一下。

千萬不要大一、大二一上來就扎進 Java Web、Python 爬蟲這種東西,這些可以學,但不是重點。

這篇文章由於篇幅限制,沒有寫到具體該如何去學,有哪些好的資料,我準備把這個單獨再寫一個 《How 篇》,持續關注我喲~

那麼如何檢驗學得如何呢?

想必你一定聽說這個計網面試題:「從 URL 輸入到頁面展現到底發生什麼?「

這個問題換個表達就是「一個數據包是如何發送到另外一臺電腦的」。

如果你能完整的說出整個過程,那麼計網你一定是學懂了!這就是為啥面試這麼喜歡問這個問題的原因。

那麼我們依葫蘆畫瓢提一個問題

「從代碼被寫下到程序運行起來到底發生了什麼?」

這個問題回答得越詳細越好,基本上能說清楚了,你就理解了編譯原理、作業系統、組成原理這三座大三。

這個問題也放在這,後續發文總結,請持續關注編程指北哦。

唉,當年要是有這麼個貼心學長告訴我這些,也不至於在 Andorid 開發、Java Web、Python 爬蟲這些玩大半年啊。。。

不過還好後來自己意識到了基礎的重要性,開始學彙編、重學C、搞 mini os、看 Linux 內核實現原理,最後成功的把頭髮掉了一把。。。

最後想送給你一句我挺喜歡的話:

萬丈高樓高樓平地起,勿在浮沙築高臺。

相關焦點

  • 這名大二男生斬獲騰訊、字節跳動等4家名企的實習offer!
    這些年每次亞洲區域賽賽季結束,杭電都會獲得至少一塊金牌。崔倍寧說:「高中時信奧拿的是國決銅牌,其實有點不甘心,暗暗下了決心,上大學一定要至少拿個ACM亞洲區域賽金牌,報杭電,就是衝著ACM來的。」填好志願後,崔倍寧第一時間通過貼吧搜索到杭電「金牌教頭」劉春英的QQ號,並加了好友。
  • 逃離大廠後,我的抑鬱症消失了
    然而一茬接一茬的奔湧後浪,又能在大廠澎湃幾年?A劉欣,28歲,A大廠海外運營「我以為自己能在A廠待20年,事實證明,我想多了。」華為是公認的狼性企業,我都能待2年多,但在A大廠,半年都熬不下去。我去年6月從北京某211大學畢業,畢業前拿到B大廠offer,被調劑去做人工智慧運營。我當時大學剛畢業,本身比較迷茫,想上班又想考研。當時的想法是,這家公司是行業頭部,面試官說我有潛力,給我的職級比其他應屆生職級都高,我打算工作一兩年,給自己攢點工作技能,再考慮下一步該怎麼走。入職之後,我發現自己對未來更迷茫了。
  • 輸在起跑線上的「二本學生們」,低學歷真的進不了「大廠」嗎!
    其次這個計算機水平,你的這個計算機國二剛過,也就是剛剛開始學編程的水平,但是像我們技術部新招來的,他已經非常精通計算機語言了,大部分985同學也是這樣子。現在我們公司讓他做一個APP,他組織三、四個人就可以做出來。還有你說你這個學金融、投資的,在學校裡面根本就沒有時間去外面接觸具體的實踐操作。
  • 《offer2》實習生簡歷造假,大學生想找心動的工作只能靠造假了嗎...
    畢業人數居高不下,但企業的崗位需求卻呈下降趨勢。不僅僅是這些同學,目前,產品經理就業特訓營的課程目前已經幫助1000+位新人實現產品知識體系的搭建,從擇業到就業,幫你實現從小白到產品經理的華麗蛻變!導師團均來自一線網際網路大廠,他們久經打磨,專業知識過硬,同時洞察行業與市場,能帶領你跟上行業趨勢,學到的知識不過時。他們會為你帶來比其他課程更多、更優質的教學服務——通過200+錄播課、N次社群聊一聊、20+直播課、7次作業答疑、4次方向指導、1-6次1V1諮詢等服務,將成熟的思維&方法論深入淺出地傳授給你。
  • IT應屆生如何輕取大廠offer?
    如果你實力有限,卻又追求高薪,那麼很容易就失業了。其實小編和大家都曾一樣,想去的公司去不了,能接受自己的公司看不上。那沒辦法,你必須擺正心態,先上車,再想著跳車。先去一個小公司其實並沒有什麼,反正應屆生除了大牛在學校也學不到什麼有用的知識,第一家公司願意培養你就很應該感激了,雖然可能你也曾被剝削壓迫,但是你也要知道只要你翅膀硬了就可以飛更高。
  • 面試技巧之貓廠、鵝廠、宇宙條……如何拿到大廠offer
    如何拿到心儀的大廠offer,是很多小夥伴苦惱的問題。更令人苦惱的是,「我」明明有實力、崗位也契合,卻因為種種原因,與offer失之交臂。筆者根據多年獵頭經驗,總結了幾個大廠面試細節,希望能給到小夥伴一些幫助。因為篇幅有限,今天我會重點講貓廠。
  • ...offer,心態有點爆炸,秋招進大廠的核心競爭力是什麼?
    正文 作者:苟一個offer來源:牛客網不知道是不是因為疫情在家呆久了,心態有點爆炸,越發覺得自己找不到工作了有一些疑問想請教哥哥姐姐們。所以我可以認為:項目和學歷是拿offer的關鍵嗎?進大廠,甚至拿sp的核心競爭力應該是這兩塊嗎? 有點迷茫了,如果目標是騰訊頭條這樣的公司,剩下幾個月應該怎樣去準備?
  • 拼多多大翻車背後:年輕人正在逃離網際網路大廠
    (圖片來源網絡)我們都知道大廠加班文化,但還是有大把的應屆生「玩命跳入火坑」,能拿到大廠offer就是成了越來越多年輕人想要通向財富自由大門的鑰匙。想拋掉996?快消大廠歡迎你!可能你現在對快消花花世界一無所知或者只知一二,都不要緊!下面小i就將帶你走進屬於快消的世界↓起底快消名企、部門,你快快來pick首先快消其實是指那些使用壽命較短,消費速度較快、消費者需要不斷重複購買的產品,涉及食品、飲料、化妝品、洗滌用品、電池、衛生紙等多個行業。
  • 不要再拿「學歷不重要」的謊言,騙正在「入海」的95後
    一、被大廠拒之門外,是「學歷歧視」?還是優勝劣汰?至今,何毅不是在面試,就是在去面試的路上。而他的求職範圍,已經不局限於外企、網際網路大廠了,甚至原本一心想留在一線城市闖蕩幾年的他,也不拒絕杭州、成都、長沙這些人氣城市的機會。
  • 人均996,現在去網際網路大廠還是一個好選擇嗎?
    曾經讓無數畢業生擠破頭也要進的網際網路大廠,真的值得去嗎? 「拿到大廠offer」,這類的帖子下面曾經聚集了大量的白嫖吸歐怪,總有成群結隊的人,在帖子下排隊接好運。 年輕人為啥這麼喜歡去大廠?
  • 全國計算機專業大學排名,前景光明,畢業就能拿高薪!
    計算機專業是當下的熱門專業,每年報考的人數特別多,很多理科生在選專業的時候都會優先考慮計算機專業,這門專業的優勢很大,符合現代社會發展的潮流,很多公司和企業都離不開計算機,如果這門專業能夠學好,那就業基本不愁,前景一片光明,畢業後都能夠拿到高薪!
  • 21屆校招應屆生Offer薪資曝光:年薪35萬+,倒掛老員工是常態?
    另外,校招巴士自述統計知乎、脈脈、offershow等多種信源後,給出了這樣的結果:算法崗普通Offer大概34萬左右,SP Offer 40萬上下(包含股票和籤字費),SSP在2015年左右,甚至還有說法稱,彼時應屆生月薪低於一萬,其他大廠也都比現在低不少。除了美團,其他各大網際網路公司,比如BAT、字節等等,能在網絡上找到的公開數據和網友爆料反映出類似的情況(數據為offershow2019年校招爆料)。阿里,30-37w之間:
  • 大學怎麼過,才能去大廠實習?
    面試主要是考察候選人的數據結構與算法、計算機網絡、作業系統、語法知識和相關的底層知識。這一塊要求我們在學校期間的理論知識要豐富,也需要一定的代碼量積累!開發性題目會有系統設計的相關知識。這大學四年的規劃往往決定了我們未來會在哪裡,做什麼,想什麼。我總結以下幾點,希望對大家有幫助!一 、找到自己真正感興趣的事情,做到極致大家在步入大學之前應該對計算機都不太了解,所以在入學後會產生一種迷茫:我學的好像不咋樣,是我不適合嗎?不幹這個去幹嘛!
  • 美行思遠|南加大、邁阿密、加州大學的遊戲設計offer如何獲得?
    張:大概10歲時,家裡有了PS3,我就跟遊戲結緣,同齡人中我接觸主機遊戲應該算早,之後就一直挺想從事這方面的工作,家裡本來很反對,後來被我磨到默許。從初中到大一,我比較想成為概念設計師這種負責遊戲中美術項目的角色,這也是我後來學習美術並在本科學習動畫的原因;大學接觸到的遊戲類別和遊戲創作題材都更多了,便對整個遊戲的製作開發過程產生了興趣,加上吉田明彥從Square Enix離職後說的「我一直希望能做一份既可以畫畫又可以開發遊戲的工作」,研究生時就從僅限於遊戲美術向遊戲設計轉變。
  • 令人心動的國企offer,如何輕鬆拿下?5種能力必不可少
    #畢業後入職國企,在國企工作是很多求職者夢寐以求的追求。近年來,畢業生總量不斷攀升,國企不斷改革升級,國企每年提供的就業崗位相對有限,要想在浩蕩的畢業大軍中脫穎而出,成功收穫國企一份offer確實不易。結合在國企10年的工作經歷,我總結髮現,國企喜歡的畢業生通常具有5個方面的能力,分別為:自我學習能力、組織協調能力、溝通交流能力、創新思維能力、壓力應對能力,這5方面優勢也是國企最看重的核心競爭力。
  • 大學讀了自己不喜歡的專業,就得接受自己的渾渾噩噩?
    這裡我想跟這些學生說,你的人生即使大學畢業也才22歲左右,還有無限可能,聽著可能有點雞湯,但是不作出改變,註定是要被淘汰的!這個時代正在懲罰不改變的人,即使你大學的專業讀的是自己不太擅長的或者自己不喜歡的,那也應該做出自己的改變,減少損失,那具體應該怎麼做呢?依舊記得大學裡面思修老師給我們上第一堂課,講得及時改變,令人非常深刻!
  • FB擴招1萬崗位,亞麻暫停校招,大廠上岸還有戲嗎?
    就拿亞麻來說,最近有同學面了亞麻5輪VO,前幾輪算法題都做出來了,和面試官聊得也還可以,自我感覺非常好。結果manager面沒有答好,最後收到了拒信。事實上,現在大廠都越來越重視BQ。連一向偏愛面算法的谷歌,在面new grad時,也會專門設置一輪BQ。工作中哪些地方需要和客戶打交道,你的客戶是啥樣的?這些常見的BQ問題你都會嗎?會的話恭喜你,不會的話也別急,沙加老師幫大家整理了一份《BQ寶典》,體驗過的同學都讚不絕口。
  • 開除大廠,30歲退休|周天故事
    」們遞過來的 offer。事實證明,所謂一萬多元的「高薪」換不回鮮活的生命,但即便如此,在大多數應屆生的眼光裡,校招就能去大廠是種幸運。「不是我不想進大廠,是我秋招被刷了。」剛畢業的葉子說出了一些內心的想法——進大廠是能夠被同齡人羨慕的。過去的大廠需要人才,而當大廠走到了時代的聚光燈下,人才需要大廠。
  • 就業服務||超多心動的offer!
    欄目介紹中國科學院大學官方微信公眾號聯合國科大就業指導中心推出的「就業服務」欄目,每期將整理髮布近期校園宣講會、雙選會以及相關就業信息,服務即將走出校門的你。同時,留言區已開通,歡迎即將畢業的你留下感興趣的問題,也期待已畢業的你寫下「寶典」和「秘籍」。
  • 為什麼我們一定要擁有完整的工業體系?俄羅斯國防部長說出真相
    蘇聯解體兩年後的俄羅斯,前黑海造船廠的廠長馬卡洛夫向對前來勸他繼續完成瓦良格號航母的俄羅斯國防部副部長說道:「『瓦良格』號永遠不可能再完工了。」國防部長很驚訝地問:「你究竟還究竟需要什麼?俄羅斯可以繼續向工廠提供。」