零基礎一年拿下BAT三家offer

来源:https://www.cnblogs.com/qiaogeli/archive/2019/09/15/11524114.html
-Advertisement-
Play Games

背景 1、本人本科一本雙非墊底的那種,碩士211。本碩電子通信,完全0基礎,轉行一年。 2、研一上第一學期上課+外派到老師合作公司寫MATLAB。去年4月開始學習Java。 起步 1、實話說,剛決定轉行的時候完全零基礎一開始真的啥也不會,甚至不知道怎麼去學習。的確,電腦資源很多,自學足夠的但是完全 ...


背景

  • 1、本人本科一本雙非墊底的那種,碩士211。本碩電子通信,完全0基礎,轉行一年。
  • 2、研一上第一學期上課+外派到老師合作公司寫MATLAB。去年4月開始學習Java。

起步

1、實話說,剛決定轉行的時候完全零基礎一開始真的啥也不會,甚至不知道怎麼去學習。的確,電腦資源很多,自學足夠的但是完全不知道怎麼去用去學習啊!

  • 啥是leetcode?
  • 啥是github?
  • 啥是IDEA?
  • 啥是牛客網?

各種疑問,怎麼操作啊?點哪個啊?身邊沒有人教啊。

有時候真的只是懂的人點兩下的事情,自己搞要一下午。媽個雞,第一個月真是完全浪費時間,差點原地放棄。

過程

  • 1、戰略上堅定信心: 既然那麼多人都可以做程式員,甚至高中生都可以,別人可以我肯定也可以。
  • 2、戰術上制定計劃: 培訓班看視頻我也看視頻咯,對,就是各種視頻。(現在想想自己甚至就是培訓班出來的)

視頻的好處是快速入門,猶如身邊有老師手把手教,一步一步操作給你看。很重要一點,培訓班老師上課非常認真,真的是面向高中生水平講課。完全不用擔心有卡頓,看不懂。記得某門課老師還在講啥是二進位和排列組合。。

Java入門(4-7月):

我在 阿裡雲大學 上找了 李興華老師 的Java就業班,看了部分,走完了Java SE,Java EE,MYSQL,SSM,Git的使用,跟著敲一遍,耗時大概3個月時間。學會了Java基本語法,懂得了什麼是編輯器和Git,第一次知道了還有github這玩意,不容易啊。。

感覺入門視頻選哪個老師的都可以,有推薦黑馬和尚矽谷,我覺得看視頻的主要好處是快準狠,把握重點。比自己啃完Java編程思想快多了。

狠補基礎階段(7-12月):

這一階段,我覺得對於牛客人均本科的大家沒啥大問題,主要是時間問題。就當作本科期末考試來就行,有緊迫感,十天一門課過一遍非常足夠了,然後看公開課視頻,再做一下練習題(我做的是王道)。七 ***三個月我過完了 電腦網路,操作系統,資料庫原理,數據結構。(過完,有個大概印象,相當於期末考60分水平吧)。

其中,我覺得幫助很大的是七八月的時候,關註了github:https://github.com/gzc426/Java-Interview,然後就沒啥方法,直接硬核地從頭開始看。後面證明半年其實也就能看完github的所有內容了。 可以算是新手入門的最佳指南了。

下麵就是我這一階段的學習步驟和對應的資料:

  • 大綱:
  • 電腦網路:
    • 教材:謝希仁老師 的 電腦網路, 圖解HTTP協議
    • 視頻:韓立剛老師 的 電腦網路原理視頻,
    • 習題:王道
  • 操作系統:
    • 教材: 湯小丹老師 的 電腦操作系統
    • 視頻: 陳向群老師 的 操作系統原理
    • 習題: 王道
  • 資料庫原理:
    • 教材: 薩師煊老師 的 資料庫原理與應用
    • 視頻: 薩師煊老師 的 資料庫原理與應用
    • 習題: 王道
  • 數據結構:
    • 教材: 大話數據結構、劍指offer
    • 視頻: liuyubobobo 老師,三門演算法課視頻(吹爆)。
    • 習題: 牛客網 + leetcode。九月份才註冊leetcode的我。。
  • MySQL:
    • 教材: 高性能MySQL(吹爆)
    • 視頻: 打造扛得住的MySQL架構
  • Java高併發:
    • 教材: Java編程思想
    • 視頻: Java併發編程入門與高併發面試
  • Java虛擬機
    • 教材: 深入理解Java虛擬機(吹爆)
    • 突擊效果不明顯,但是好書推薦(沒看完)
  • 書籍: 碼農翻身,數學之美,編程珠璣,深入分析Java Web, 深入理解電腦系統

項目(10月):

學到九月份多還是虛的很,啥也不會啊,沒做過東西。。於是去慕課網找了一個秒殺的免費項目:https://www.imooc.com/u/2145618/courses?sort=publish (其實這個項目根本沒有秒殺。。也沒有高併發),就跟著大概過了一遍,敲了一敲代碼。就當作自己的項目好了。當時跟著敲完也不知道幹啥,也不知道啥是DTO,怎麼就想到這麼處理的,一臉懵逼。稀里糊塗就做完了。。。

實際上,後來去面試的時候,這個項目基本就沒問過我,面試官一看就知道很水。

第一次實習

12月的時候內心OS:當時真的是非常虛,感覺學的都是屠龍之術,也沒怎麼寫過代碼。真的菜到自己發慌。。

11月底,12月初的時候就開始嘗試找日常實習了。感謝北郵人論壇,裡面有非常多的實習機會。過程不表了,面經大同小異。最終入職了百度實習。一直實習到四月多。

剛進去實習的時候,Linux不會,Spring Boot不會,RPC不會,Redis不會,消息隊列不會,微服務架構都沒聽過,Docker部署啥意思。。。

反正就是壓力很大,還好一開始讓看了一個月代碼和熟悉環境。每天瘋狂查看資料,買書看書看視頻。回家過年的時候還把Zookeeper和Dubbo刷了一下。。

煽情段:只想說說找實習很看和麵試官的緣分,遇到好人真的很難得。我有過一面就被面試官鄙視離場的心酸(新浪微博問了兩個問題就讓走了),也有過碰到師兄耐心指導(頭條一面是師兄,很和善,但是三面主管掛了),也有過幾個offer。很感激百度面試的兩位面試官,有些問題都是他們自問自答就讓我過了(後面進去實習的時候是說仿佛看到了他們當年自己很菜的樣子。。。後面也是亦師亦友,非常感激!)

實習過程中的補充內容:

  • Redis:
    • 教材: Redis實戰
    • 視頻: 一站式學習Redis 從入門到高可用分散式實踐
  • Zookeeper:
    • 教材: 從Paxos到zookeeper分散式一致性原理與實踐
    • 視頻: 尚矽谷大數據之Zookeeper
  • Dubbo:
    • 教材: 無
    • 視頻: 尚矽谷dubbo
  • Spring Boot:
    • 教材: Spring Boot實戰
    • 視頻: 尚矽谷Spring Boot
  • 消息隊列:
    • 最近在看kafka,還沒看完不好推薦。

      春招

      實習了三個月左右,年後回到學校就三月多了,各大廠也開始了暑期實習,我也跟隨大流一起投簡歷。

  • 薄弱點:前面可以看到因為基礎太差,花費了大量時間看書和看視頻,導致演算法比較薄弱,只會一些非常基礎的(200題不到,而且刷兩題,忘一題)。所以春招開始的時候也是很緊張的,鞏固基礎和兼顧實習的工作,還有實驗室要發小論文非常焦慮。
  • 後悔點:實在是沒有辦法,演算法真的不是一下子就能學會的,而且也有一些懶惰,期間經常玩樂,如果能把每天休息玩耍的時間用來刷演算法題。。
  • 結果:最終春招只投了騰訊和阿裡,也運氣比較好的拿到了offer,沒有考太難的演算法題。

一些補充

學習錯覺:

  • 上述感覺每一塊內容我就列了一兩行,實際上要吃透非常困難,比如高性能MySQL和Java虛擬機相關的內容我就看了好幾遍。而且需要好多博客內容加以輔助理解。
  • 我列的不可能覆蓋所有的面試點,還需要保持好奇心多學習。比如大數據題思路,智力題,架構設計題等等,這些要說的內容太多了。保持好奇&互相學習!

學習方式:

  • 我比較喜歡視頻快速入門-->書籍慢慢深入-->再動手實操。
  • 個人認為,學習不分方式,適合自己的就是好的,有些人比較歧視培訓班出來的,我關註的某畫倉鼠漫畫的技術大佬就是培訓班出來的,感覺非常強。
  • 為什麼考研看張宇視頻和肖秀榮視頻就不會受歧視呢?

搜索資源:

  • 有些人學的不夠快是找的資源方式不對。
  • 多向師兄師姐打聽
  • 多加技術QQ群討論
  • 常刷牛客

作者:小、麥
出自:https://blog.csdn.net/WantFlyDaCheng/article/details/100569954
覺得文章不錯的歡迎關註我的WX公眾號:程式員喬戈里
我是百度後臺開發工程師,哈工大電腦本碩,專註分享技術乾貨/編程資源/求職面試/成長感悟等,關註送5000G編程資源和自己整理的一份幫助不少人拿下java的offer的面經附答案,免費下載CSDN資源。

覺得文章不錯的歡迎關註我的WX公眾號:程式員喬戈里
我是百度後臺開發工程師,哈工大電腦本碩,專註分享技術乾貨/編程資源/求職面試/成長感悟等,關註送5000G編程資源和自己整理的一份幫助不少人拿下java的offer的面經附答案,免費下載CSDN資源。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文源碼: "GitHub·點這裡" || "GitEE·點這裡" 一、觀察者模式 1、概念描述 觀察者模式是對象的行為模式,又叫發佈 訂閱(Publish/Subscribe)模式。觀察者模式定義了一種一對多的依賴關係,讓多個觀察者對象同時監聽某一個主題對象,主題對象在狀態發生變化時,會通知所有觀 ...
  • jdbc 動力節點視頻教程 JDBC編程六步 1.註冊驅動(作用:告訴Java程式,即將要連接的是哪個品牌的資料庫) 2.獲取連接 (表示JVM進程和資料庫進程之間的通道打開了,屬於進程間的通信,重量級的,使用完一定要關閉) 3.獲取資料庫操作對象(專門執行SQL 語句的對象) 4.執行sql(主要 ...
  • 新聞 "宣告ML.NET 1.4的預覽版及更新模型構建器" ".NET展示會:一系列的活動!" "Octopus入門版:對於小團隊免費" "宣告.NET Core 3.0預覽版9" "使用IntelliCode更簡單地進行重構" ".NET Core 3.0預覽版9中ASP.NET Core與Bla ...
  • Python3實戰Spark大數據分析及調度 搜索QQ號直接加群獲取其它學習資料:715301384 部分課程截圖: 鏈接:https://pan.baidu.com/s/12VDmdhN4hr7ypdKTJvvgKg 提取碼:cv9z PS:免費分享,若點擊鏈接無法獲取到資料,若如若鏈接失效請加群 ...
  • 記憶體四區 代碼區:存放函數體第二進位代碼,由操作戲臺進行管理 數據區:存放全局變數和靜態變數以及常量 棧區:由編譯器自動分配釋放,存放函數的參數值,局部變數等 堆區:由程式員分配和釋放,若程式員不是放,程式結束時由操作系統回收 代碼區:存放函數體第二進位代碼,由操作戲臺進行管理 數據區:存放全局變數 ...
  • 初識工廠模式 我們先看工廠模式的介紹 這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 在工廠模式中,我們在創建對象時不會對客戶端暴露創建邏輯,並且是通過使用一個共同的介面來指向新創建的對象。 簡單來說,使用了C++ 多態 的特性,將存在 繼承 關係的類,通過一個 工廠類創建 對應 ...
  • 兩步驗證是指用戶登錄賬戶的時候,除了要輸入用戶名和密碼,還要求用戶輸入一個動態密碼,為帳戶添加了一層額外保護。這個動態密碼要麼是專門的硬體,要麼由用戶手機APP提供。即使入侵者竊取了用戶密碼,也會因不能使用用戶手機而無法登錄帳戶。許多游戲客戶端和網銀採用這種方式。以銀行為例,當用戶進行轉賬操作時,第... ...
  • 給定一個無序單鏈表,實現單鏈表的選擇排序(按升序排序)。 代碼註釋挺詳細,直接上代碼! ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...