在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一位軟件工程師的谷歌面試艱辛歷程

工程師人生 ? 來源:網絡整理 ? 作者:工程師吳畏 ? 2018-09-05 10:22 ? 次閱讀

為了準備 Google 軟件工程師的面試,我花了數以千計個小時讀書、寫代碼、觀看計算機科學相關的講座。

這個計劃是怎么產生的呢?

我中學時期就開始編程,但是大學卻選了經濟學。這是因為我擔心畢業時會有太多程序員找工作。現在想想我錯大發了。

后來為了稱為一個程序員我加入了軍隊,但是招聘人員卻把我送到了軍事情報處,于是我花了一年學習漢語,又在韓國服役了兩年。

在退役前我試著重新拿起鍵盤,卻發現物是人非,區別太大了。我從初中到高中一直使用的是 BASIC。但是回歸后使用的是 C++,這兩者間差別太大了,一時間我無法適應。

但是我很喜歡做網站,那會兒使用的還是 WordPress。我不懂怎么從零開始搭建一個網站。

在退役后,我決定在韓國再留一年,教英語。同時不忘初心,晚上、周末都用來學習 Web 開發,用的是 Perl, HTML, CSS (這在那會兒是個新生物), JavaScript 和 SQL。

在經過一年高強度的學習后,我得到一份在西雅圖編程的工作,從此以后我就待在西雅圖了。

從此以后我做了 15 年 Web 開發者。我創辦了三家公司,其中兩家至今還在盈利。這些年我在大公司、小公司都待過,見證、助力過創業公司的啟動和成長,也招募、管理過團隊,也當過產品經理,設計師,市場人員和 CEO。

在這個過程中我收獲了很多,也算是比較成功。但是還差得很多。

職業方向的改變

還記得我錯選經濟學,沒拿到計算機學位那部分嗎?最終有所改變。

工作幾年后,我覺得我已經大成了,去哪家公司都妥妥的,畢竟我是一位“全棧工程師”。

然而在 2013 年找工作時,我意識到自己原來差的這么多。

過去那些年我花了太多時間追尋金錢,甚至空余時間也在運營公司,這讓我的技術止步不前。我的技術棧有些跟不上時代了。

過去那些年我的技術一直是夠用就行了。雖然技術面比較廣,卻沒有任何一個方向稱得上專家。

別會錯意了,我想找到工作還是沒問題的,只不過不是我想要去的技術或者領域。我還是可以被一些技術棧不是很新的公司聘用的,給的待遇也不差,但是我對那樣的前景無法感到興奮。

我的這種“差得很多”的自我認識在去年一次找工作時達到了極點。我對一家風投投資的本地創業公司工作很感興趣。但是由于我沒有計算機學位,不具備這個學位掌握的技術和知識,導致我最終沒有機會。

那時我一直在我公司中全職工作。

在 2016 年初,我覺得是時候做出改變了,從 Web 開發者到軟件工程師。為了在幾個月內掌握計算機學位學習的知識,我需要刻苦學習和練習,雖然長路漫漫,但我相信,一旦成功,我就會進入一段新的職業生涯。

有人可能覺得 Web 開發者和軟件工程師沒什么區別。它們都需要編程和技術,但是軟件工程需要更多知識,比如數據結構和算法,編譯型語言,對內存的關注,理解不同的代碼和架構對運行機器的影響。

大公司招聘軟件工程師時,期望候選人掌握這些知識。

我向在 Google 工作的一位朋友咨詢了關于在 Google 工作的問題,也讀過《How Google Works》,對 Google 有了一定的了解。

偶然一次機會,還得到一份 Google 面試候選人的指導筆記,這成為我學習計劃的基礎。

Google 是一個非常棒的公司,在意識到這一點之前,它就已經是我的目標。

為什么我的目標是 Google

目標設到月球,即使失敗,也能落到眾星之間。

Google 的門檻非常高,他們只想招聘最棒的人才,所以我把目標設定的高一點,即使最后沒去成 Google,去別的公司應該也沒什么問題。

而且,隨著對 Google 的了解越深,我對它的渴望就越發強烈。

Google 有很好的“招培育留”氛圍。簡單地說,Google 選用聰明、有創造力的人,然后把他們照顧得很好。Google 獎勵能創造價值的人,鼓勵大膽創新,給員工自由,讓他們為用戶做出好的決定。

Google 的招聘流程經過多年調整,招聘以聰明、激情為準。腦力測驗早就不用了,候選者的編程能力,技術知識,是否“夠谷歌”(這個詞蘊含的內容太多了…)。

Google 的管理也很不一般。他們的管理非常寬松,相信工程師可以做正確的決定。對雇員的信任使得 Google 的管理角色不同于平常公司。此外,管理層不能單方面決定雇傭、開除或者提拔一個員工,大多數重要的決策都需要由委員會投票決定,這樣可以降低風險。

Google 的人力資源部一直在進步,他們根據數據和員工反饋來提升評估系統,這個系統包括招聘、提升、獎勵等內容。

我的天,Google 的優點太多了。我曾去過一次 Google 的辦公室,我本來的期望就很高,結果發現那兒的情景比我想象的還要好!

關于谷歌面試學院

還記得那份告訴我該學習什么的面試指導筆記么?雖然上面的內容我很多都不懂,但至少它讓我有了目標。

我把筆記上的題目變成提綱,然后通過觀看麻省理工學院和加州大學伯克利分校在 YouTube 上的講座來一一學習。每個鏈接上可能有多個學習內容,很多視頻基本都會引出下一個視頻,就這樣我不停地學習,學習提綱逐漸豐富。

由于之前我的寫的商業、工作代碼都是保密的,我的 Github 基本是空空的,看起來像根本沒有在敲代碼一樣,于是我把這份學習提綱上傳了上去。我需要創建一個作品,開始我叫它“Project 9894”,是因為 Google 創建于 1998 年 9 月 4 號。后來我把它改名為“谷歌面試學院”。

在學習的過程中,我把自己發現的話題都一一添加上去。

過去我總覺得“知識夠用就行了”。這么多年職業生涯中我根本不清楚 CPU 怎么處理一段程序,內存如何工作,或者其他的知識,我很佩服自己這么多年是怎么過來的。

我的 Github 小項目漸漸開始得到一些關注,我甚至寫了篇文章慶祝項目得到 20 個 star。

有天早晨我發現我的項目有 120 個 star 了!某個業內知名人士前一晚上在推特上分享了我的項目,讓我的項目收到很多關注,甚至進入了 Github 當日流行榜。好幾天我都是 Github 流行榜的第一名哈哈。

許多善良的人主動鼓勵、感激我,這讓我發現原來有數以千計的人跟我一樣,不僅想去 Google 工作,也想成為一名軟件工程師,我列出的學習內容正是他們需要學習的方向。

到目前為止它有超過 21000 個 star 了,難以置信。

如果我無法 Google 工作怎么辦

只要不是天塌下來,都沒關系。

為了成為 Google 的軟件工程師,我投入了大量的時間和精力,即使我不幸失敗了,我學到的知識和能力也足以讓我去任何其他公司任職。

不論結局如何,起碼我會成為一名入門級別的軟件工程師。我不認為我有 15 年的軟件工程師經驗,因為我過去的確不具備這個能力,我和剛畢業的計算機學生一樣還只是新手。

這對于我來說是一段新的旅程,才剛剛開始,即使我會犯很多錯,也毫不畏懼,因為我有學習新內容的熱情,我要學習所有需要的知識,成為團隊中優秀的一部分。

叮囑:別像我一樣學過多東西

我花了八個月時間準備面試,但事實上我可以縮短很多時間。跟做其他復雜的事情一樣,一開始都需要試錯、走彎路,總有一些事我想回去重做。

我學習了很多我不需要的內容,有些是因為我覺得面試需要,有些是我覺得工作里會用到。我不想成為團隊中的負擔。但事實證明我操心太多了,很多內容都沒必要學習。

我花了三周閱讀一本 1000 頁左右的講 C++ 的書,那么多內容我沒記得多少,但是起碼對 C++ 了解多了一點。本來我以為會用到 C,C++,或者 Java,結果我面試中準備用的是 Python。記住這個教訓:別猜,去問!去查!

到后來才發現,我只需要讀三四本書就夠了,我讀的太多了。

我歸納了一本重復查看的算法總結,里面記錄了很多我不希望在面試中遇到的問題。這其實是無用功,你不必這么做。

我花了很多時間看視頻,然而本應該少看一些的,應該隨著時間慢慢增加內容。

我應該盡早停止看書,換成看視頻,早點開始編程驗證、解決問題。早點開始動手實踐我所學的。

隔一段時間重顧知識是記憶的關鍵方法。不要一次性學完一項知識就不管了,這樣你無法真正的掌握。隔一段時間回顧一下,每次重復,你都會加深自己的理解,次數多了,你就會理解每個細節,成為真正的專家。

為了幫助回顧知識,我做了個手機上用的知識點抽記卡,里面有 1792 份知識,現在想想內容有些過于多了。一有時間我就回顧上面的知識點,比如圣誕節購物、排隊等公交時。當抽記卡上的問題我能正確地回答時,就標記為“理解了”,否則從抽記卡上看明白答案,等待下次回答問題正確了再標記。

我內心的恐懼讓我學習了太多不需要的知識,比如“要是他們考我紅黑樹相關的知識怎么辦”。

但是我不想面向面試學習,我想要為了在 Google 工作、解決重量級問題而學習。這就意味學習算法還是有用的,它們可以提升計算機的時間和空間效率。

或許我永遠用不到 Ford-Fulkerson 算法(一類計算網絡流的最大流的貪心算法),但學習后我起碼知道如果有類似的問題出現,該怎么解決。

總結

現在我了解了計算機的歷史,編程中最偉大的部分–數據結構與算法,還有計算機系統底層是如何工作的。

在開始準備谷歌面試之前,我總希望可以跳過所有準備階段,直接應聘,然后去學習工作中用到的語言和工具就好了。

但是在這個過程中,我意識到這些知識是多么重要,雖然它們可能在日常開發中應用不到,但是我相信我的付出會給自己帶來內在的提升。

我馬上就提交申請了,為了這件事我幾乎準備了一年(一月份開始,但直到四月,我才能夠保證全職學習)。

我覺得我已經準備的差不多了,是時候提交申請,對我這段時間的學習進行一次檢驗了。

這將是我人生的一次飛躍。我看到前方有一個光明的未來。

謝謝你花時間讀我的故事。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 谷歌
    +關注

    關注

    27

    文章

    6209

    瀏覽量

    106196
  • 軟件工程師
    +關注

    關注

    8

    文章

    218

    瀏覽量

    21179
收藏 人收藏

    評論

    相關推薦

    面試題】人工智能工程師高頻面試題匯總:機器學習深化篇(題目+答案)

    隨著人工智能技術的突飛猛進,AI工程師成為了眾多求職者夢寐以求的職業。想要拿下這份工作,面試的時候得展示出你不僅技術過硬,還得能解決問題。所以,提前準備面試常問的問題,比如機器學習
    的頭像 發表于 12-16 13:42 ?2119次閱讀
    【<b class='flag-5'>面試</b>題】人工智能<b class='flag-5'>工程師</b>高頻<b class='flag-5'>面試</b>題匯總:機器學習深化篇(題目+答案)

    面試題】人工智能工程師高頻面試題匯總:Transformer篇(題目+答案)

    隨著人工智能技術的突飛猛進,AI工程師成為了眾多求職者夢寐以求的職業。想要拿下這份工作,面試的時候得展示出你不僅技術過硬,還得能解決問題。所以,提前準備面試常問的問題,比如機器學習
    的頭像 發表于 12-13 15:06 ?655次閱讀
    【<b class='flag-5'>面試</b>題】人工智能<b class='flag-5'>工程師</b>高頻<b class='flag-5'>面試</b>題匯總:Transformer篇(題目+答案)

    人工智能工程師高頻面試題匯總——機器學習篇

    隨著人工智能技術的突飛猛進,AI工程師成為了眾多求職者夢寐以求的職業。想要拿下這份工作,面試的時候得展示出你不僅技術過硬,還得能解決問題。所以,提前準備面試常問的問題,比如機器學習
    的頭像 發表于 12-04 17:00 ?1028次閱讀
    人工智能<b class='flag-5'>工程師</b>高頻<b class='flag-5'>面試</b>題匯總——機器學習篇

    特斯拉招募軟件工程師強化無人駕駛與機器人遠程操作

    近日,據外媒最新報道,特斯拉正緊鑼密鼓地招募軟件工程師團隊,旨在加強其無人駕駛出租車及Optimus機器人的遠程操作能力。這舉措標志著特斯拉在推動自動駕駛與人工智能領域邁出了重要步。 特斯拉此次
    的頭像 發表于 11-27 10:26 ?635次閱讀

    嵌入式軟件工程師如何提升自己?

    ,可以為自己的職業生涯打下堅實的基礎,并實現個人的職業目標。愿每一位嵌入式軟件工程師都能在這個充滿挑戰和機遇的領域中取得成功!
    發表于 06-12 11:20

    索尼誠邀軟件工程師參與PS免費手游平臺設計

    據悉,近日,澳大利亞知名媒體TweakTown發現,索尼互動娛樂正在為其旗下的PlayStation Studios Mobile招募名資深的軟件工程師,負責設計PlayStation的免費手機游戲平臺。
    的頭像 發表于 05-23 17:08 ?800次閱讀

    嵌入式軟件工程師和硬件工程師的區別?

    嵌入式軟件工程師和硬件工程師的區別? 嵌入式軟件工程師 嵌入式軟件工程師軟件開發領域中的種專
    發表于 05-16 11:00

    大廠電子工程師常見面試題#電子工程師 #硬件工程師 #電路知識 #面試

    電子工程師電路
    安泰小課堂
    發布于 :2024年04月30日 17:33:15

    為何國外工程師偏愛使用for(;;)來實現MCU死循環?

    一位工程師發現,國外工程師在給demo在做死循環時用的是for(;;),而不是常用的while(1)。這僅僅是個人習慣的問題,還是有更深層次的含義?
    發表于 04-01 11:26 ?740次閱讀
    為何國外<b class='flag-5'>工程師</b>偏愛使用for(;;)來實現MCU死循環?

    Cognition發布首款AI軟件工程師Devin

    據報道,Cognition公司今日公布了其首款人工智能軟件工程師——Devin,掀起了打造軟件模式變革的序幕。該產品在SWE-bench代碼測驗中展現出卓越表現,甚至超過了部分頂級人類工程師的水準。
    的頭像 發表于 03-13 10:57 ?680次閱讀
    主站蜘蛛池模板: 亚欧美视频 | 久久久久88色偷偷 | 亚洲高清日韩精品第一区 | 国产乱人视频在线看 | 女性一级全黄生活片免费看 | 亚洲免费人成在线视频观看 | 天天摸天天干天天操 | h网站在线免费观看 | 日本精品卡一卡2卡3卡四卡三卡 | 丁香六月婷婷综合 | 很黄很黄的网站免费的 | 欧美精品久久久久久久小说 | h网站免费在线观看 | 激情五月亚洲 | 欧美午夜精品一区二区三区 | 成人深夜视频 | 日韩免费高清一级毛片在线 | 中文字幕一区二区三区有限公司 | 七月婷婷精品视频在线观看 | 色婷婷激婷婷深爱五月老司机 | 天天躁夜夜躁狠狠躁2021a | 日日噜噜爽爽狠狠视频 | 国产欧美一区二区日本加勒比 | 女同性大尺度床戏视频 | 久久精品国产乱子伦多人 | 亚洲欧洲色天使日韩精品 | 天天射久久 | 刺激一区| 国产高清在线 | 午夜手机福利 | 欧美一级视频高清片 | 丁香婷婷综合网 | 欧洲一级鲁丝片免费 | 欧美一级特黄aaa大片 | 操久在线 | 午夜合集| 在线亚洲色图 | 性中国videosex国产孕妇 | 性欧美videofree另类超大 | 美女久久久 | 国产精品成人一区二区 |