Android入門你值得擁有!怒斬獲了30家互聯網公司offer,已整理成文檔

前言

可能有人會以爲,我技術牛逼就好了,爲啥還要提升寫文檔的能力,有這功夫我還不如多看看源碼分析?這是一些初級或者剛入門的工程師的廣泛的困惑。這是由於大部分剛剛入行的朋友有一個很深的誤區,就是他們覺得作軟件工程是一個和計算機打交道的工做,其實否則。軟件工程不僅是和代碼打交道,更重要的是和人打交道,是一份社會性質很強的工做。在大部分公司裏面,尤爲是大廠,牽涉到的人,組,都是很是很是多的。在小廠,人與人之間交流意見和設計能夠口口相傳,心照不宣,可是一旦人開始多了,就只能靠文檔了。除非你能夠厲害到一我的把全部代碼擼完,否則仍是最好老老實實的夯實本身寫文檔的能力。面試

若是你有寫技術博客的習慣,那麼恭喜你,相信你已經對如何抓住文檔受衆的技巧有所瞭解了。這對你在大廠生存有很大的幫助。若是沒有也不要傷心,這篇文章就是爲你精心設計的。算法

在這篇文章裏,我會大體的把一份安卓的項目設計文檔的骨架,和一些我工做中實際遇到的正反例都列出來,方便你們之後在工做中實踐。設計模式

通常來講,知足這3個條件的工程師會被提拔作管理:技術能力強、業務熟練、軟性素質達標。(固然還要看公司是否有管理崗位的空缺以及你我的的意願),下面分別展開說下重點。架構

技術方面:經常使用技術的深度和寬度缺一不可,架構能力很是關鍵。不然技術方向都把握很差,技術決策也容易出問題。若是技術能力沒達到必定水平,不建議太早轉管理(我的感受能力至少要接近阿里的P7,騰訊的T3-1,百度的T6)。框架

業務方面:不瞭解業務,技術無法落地,不只要求熟悉業務並且應該具有比較強的業務意識,(若是能從技術維度提出好想法,幫助業務拿到更好的結果,這種leader是很是受歡迎的)。源碼分析

軟性素質達標:軟性素質這個詞有些泛,我我的以爲最核心的兩點,溝通協調能力和作事靠不靠譜。軟性都是能夠鍛鍊的,可是必定要有意識去提高。著名管理學家陳春花老師說,「一我的被組織提拔,其實不是由於能力,而是由於信任」,聰明的人不少,可是靠譜的人不多,比能力更重要的是工做的投入感和靠譜的態度。學習

若是你以爲上述3個方面都達到要求了,我以爲只是差一個機會,不然好好提高本身吧。spa

2你選擇作管理的初衷是什麼?架構設計

以前有人問過我一個問題,「你以爲我適合作管理嗎?能給我些建議嗎?」,我當時沒有正面回答他,而是反過來問他,「你能先告訴我,作管理對你意味着什麼?它能給你帶來什麼呢?」。固然我不是在質疑他,而是想讓他反思他作管理的初衷。我以爲『最原始的動機』會決定你在管理路上能扛多大的壓力以及能走多遠。關於初衷,我見過最廣泛的說法有這麼幾種:設計

  • 技術不能作一生,不少前輩在能力達到必定水平後都轉管理了,本身也這麼想
  • 在技術路線上遇到了晉升瓶頸,想嘗試下管理方向,看本身是否合適
  • 公司發展太快了,老闆讓我帶團隊,本身也沒辦法
  • 管理者工資高,在別人眼中是優秀的表明
  • 指揮作事便可,能夠脫離執行層面,越往上走越輕鬆

上面這幾類都屬於『外部因素』驅動,說實話,都很難在管理路上走得很遠。由於技術管理是極其複雜和瑣碎的工做,它遠沒有你想象中的輕鬆和風光,而在這些外力下,你作出決策後的結果不少時候跟你的預期是不一致的,這個時候你的怨氣和轉型痛苦就會出現,你開始質疑你選擇的這條路是否是錯了?

再來看另一個問題,做爲技術管理者,對於公司、團隊以及你我的,你以爲它的價值分別是什麼?我我的的解讀是這樣的:

  • 對於公司:能帶領技術團隊支撐好業務,幫助業務實現公司定的戰略目標。
  • 對於團隊:規劃好方向,別讓組員瞎忙,同時能幫助他們成長。
  • 對於我的:提高自身的技術和管理能力。

這是對於技術管理崗位的基本認知,你的初衷必須創建在這個認知基礎之上。而後試問你本身:是否定可這個崗位的價值?若是你以爲全是犧牲本身來成就公司和團隊,那你不可能作得開心,也不可能作好。

第2個問題,你是否對管理者的工做充滿熱情?而且享受這個過程呢?好比項目協調,好比制定流程並推進落地執行,好比招聘。若是你說我只喜歡作技術相關的工做(好比架構設計、技術評審等),那麼你仍是走技術路線吧。

承認技術管理崗位的價值所在,而且能激發你的投入意願。這些就是底層最好的動力,你的成長和回報都是付出後水到渠成的東西。因此這個初衷很重要,三觀必定要正。

3轉型期你會遇到哪些困惑或者挑戰?

轉型期會經歷心態、工做方式的轉變,不少事情會刷新你的認知。下面幾點,我認爲是絕大部分人在轉型過程當中會遇到的困惑或者挑戰:

  • 時間不夠用:成爲團隊leader後有不少平常事務要處理,要參加各類會議,有時候還須要分出一部分精力在一線coding上,時間徹底被碎片化,根本不夠用。
  • 嫌組員效率低:一個你認爲簡單的需求或者技術問題,交給團隊成員後,他們的處理時間遠超出你的預期,當外界施壓時,你忍不住抱怨和責怪,並開始本身動手處理,長此以往,習慣本身衝在一線,以爲這樣效率最高。
  • 恨人際關係複雜:對內對外、對上對下,天天須要和不一樣職位、不一樣level的人打交道,有靠譜的,有不靠譜的,某些你認爲很簡單的事情推進起來卻很難,感受情商不夠用。
  • 成就感不強:偶爾會收到上級、平級、甚至下級的負面反饋,你開始質疑本身的管理能力,不像作工程師那樣常常被承認,落差感強。
  • 不敢放棄一線:擔憂本身不合適作管理,若是脫離一線執行,感受技術能力會停滯不前。不放棄一線,精力又跟不上,這個度把握很差。

上述疑惑是我我的轉型過程當中體會最深的幾點,我在後文中會分別給出本身的見解和建議。

4轉型期應該具有哪些心智?

從技術轉型作管理,更多的不是能力的變化,而是思惟方式和行爲的改變。不少剛轉型的leader管理作很差,絕大部分不是由於能力不行,而是出如今了認知上。如下幾點,我認爲是轉型期leader必定要具有的心智:

  • 學會從團隊的角度考慮問題
  • 注重執行細節
  • 學會用人所長,具有包容心
  • 重視情商,作好自我情緒控制
  • 作好時間管理

學會從團隊角度考慮問題

之前做爲工程師,更可能是從事情自己或者從我的角度出發,成爲leader後,轉變成團隊思惟是最最重要的,由於你的KPI取決於你整個團隊的完成狀況,你要權衡的是團隊總體的利益和效能。

尾聲

對於不少初中級Android工程師而言,想要提高技能,每每是本身摸索成長,不成體系的學習效果低效漫長且無助。 整理的這些架構技術但願對Android開發的朋友們有所參考以及少走彎路,本文的重點是你有沒有收穫與成長,其他的都不重要,但願讀者們能謹記這一點。

最後想要拿高薪實現技術提高薪水獲得質的飛躍。最快捷的方式,就是有人能夠帶着你一塊兒分析,這樣學習起來最爲高效,因此爲了你們可以順利進階中高級、架構師,我特意爲你們準備了一套高手學習的源碼和框架視頻等精品Android架構師教程,保證你學了之後保證薪資上升一個臺階。 當你有了學習線路,學習哪些內容,也知道之後的路怎麼走了,理論看多了總要實踐的。 以上進階BATJ大廠學習資料能夠免費分享給你們,須要完整版的朋友,點這裏能夠看到所有內容

進階學習視頻

附上:咱們以前由於秋招收集的二十套一二線互聯網公司Android面試真題 (含BAT、小米、華爲、美團、滴滴)和我本身整理Android複習筆記(包含Android基礎知識點、Android擴展知識點、Android源碼解析、設計模式彙總、Gradle知識點、常見算法題彙總。)

相關文章
相關標籤/搜索