天天看點

為什麼我不建議你通過 Python 去找工作?

二哥,你好,我是一名大專生,學校把 Python 做為主語言教給我們,但是我也去了解過,其實 Python 門檻挺高的,是以我在自學 Java,但是我現在并不清楚到底要不要全心的去學 Java,學校裡的課程也越來越繁重,而學 Java 又會要投入很多精力,我很糾結疑惑。希望二哥可以給一點建議。二哥看到的話還望百忙之中抽一點時間。感謝!

這是讀者“前進一點”在微信上問我的一個問題,我當時給他的回複是“Python 挺火的,學 Python 就好。”但當我在 B 站上看了羊哥的一期視訊後,深感懊悔,覺得自己給出的建議是不負責任的。

意識到自己的問題之後,我就趕緊給讀者“前進一點”發了一條資訊道歉。另外,回想起之前還有一些讀者問過我類似的問題,我的答案都不夠嚴謹,是以打算特意寫一篇文章來檢討一下。

羊哥視訊裡面分享的内容還是非常嚴謹的,他認為,Python 應用的方向主要有 5 個方面:

人工智能和機器學習

資料分析

爬蟲

Web 開發

自動化測試

有理有據,是以我完全認同羊哥的觀點。

01、人工智能和機器學習

人工智能和機器學習是 Python 應用的重頭戲,但這方面的崗位對學曆的要求非常高,高到我自己都應聘不上,非常殘酷。

在招聘網站上大緻浏覽了一下,我發現,這方面的崗位不算多,但工資挺給力的,在 15K- 30K。不過,招聘資訊上直接說了,“我們的程式員小夥伴都畢業于 211/985 學校”,就這一條,我就會被拒之門外。學曆硬傷啊,是以應聘“人工智能和機器學習”這方面的崗位很難,紮心,誰叫咱不是學霸呢。

考慮到我的讀者已經蔓延到了國中生群體,我得鄭重其事地說一句,“如果你喜歡學習,那就好好學,别在該學習的年紀浪費了青春。”哎呀,我去,說這句話真有點拿自己做反面教材的感覺。

我上國小的時候,一直是第一名,因為學校的招生範圍就我們村那麼大,一共也就三四十名學生。等到上了國中,一直保持前四,因為學校的招生範圍就我們鄉那麼大,一共也就三四百名學生。等到上了高中,一直保持學校前十,但在整個縣城是沒有任何優勢的。

真的是天外有天,人外有人,大部分人都是平凡的,普通的,是以這方面的崗位競争真的很難。

02、資料分析

一般的小公司,比如說我就職過的公司,完全就沒有資料分析的必要性,因為重點是在産品上,如何做好産品吸引來使用者才是重點。如果說産品的使用者數量少,資料就完全發揮不出價值。

那也就意味着,資料分析工程師的崗位會相對較少,畢竟有大資料的公司屈指可數。但說實話,這個崗位的薪資還是非常給力的,發展前景也好。如果學習能力強的話,硬名額過關的話,可以嘗試。

工資高,通常的原因是供不應求,也就是說崗位多,但人才少。但實際情況是,資料分析的崗位少,符合要求的人才更少。在公司隻是在重複操作 SQL、Excel 等基礎工具的資料分析員很容易被自動化工具替代,又紮心了。

大專院校把 Python 作為主語言來教的話,我想肯定不是奔着這兩個方向(人工智能、機器學習和資料分析)來的。第一個原因就是學曆的問題,第二個原因就是教師不一定能教得會,更别說學生能不能學會了。

03、爬蟲

關于爬蟲,不得不提一下羊哥視訊評論區的一句話,不管是不是段子,我覺得挺值得深思的。

我有個同學搞爬蟲被帶走了,還好他不是主犯,就是登記了一下。

爬蟲是近些年非常火熱的一個話題,連我都買了一本爬蟲入門的書,準備學一學,無奈 Java 方面可寫的素材越來越多,這個計劃一直未能成行。

什麼是爬蟲呢?可能有些不是程式員的讀者不太清楚,我找百科問了問,它說,“爬蟲,又稱網頁蜘蛛,是一種按照一定規則,自動抓取網際網路資訊的程式或者腳本。”

在知識付費的大環境下,這種爬蟲就有點麻煩。拿我來說吧,我希望自己的文章隻發表在我希望發表的平台下,假如其他平台在未經我的授權下,就把我的文章爬走,放在自家平台上,我就覺得知識産權受到了破壞。

文章還好,是我願意公開的,如果涉及到一些隐私資訊被爬取,那就更糟糕了,是吧?

現在很多平台都在做反爬,并且做得越來越好,這就在一定程度上有點“魔高一尺道高一丈”的意味,是以,爬蟲方面的工程師還是蠻不容易的。

04、Web 開發

用 Python 做 Web 開發的大型網際網路公司我聽說的不多,羊哥說豆瓣以前用的是 Python,現在也不用了。

不管怎麼說,如果拿 Java 來和 Python 相比的話,顯然在 Web 開發方面的優勢巨大。不管是從技術架構上,還是性能上,以及應用的規模上,同等條件下,Java 工程師顯然更吃香啊。

很多教育訓練機構誇贊 Python 在 Web 開發方面有着巨大的優勢,開發效率高,速度快。嗯,其實我覺得應該是因為 Python 的文法簡單,容易教——這恐怕是主要原因啊,我這樣說會不會被社會毒打?

這樣吧,我給小夥伴推薦一個網址:

https://developer.mozilla.org/zh-CN/docs/learn/Server-side/Django

學習 Django 的,一個廣受歡迎且功能完整的伺服器端網站架構,Python 寫的,并且是 MDN 出品,最重要的是,免費的。

05、自動化測試

說句實在話,Python 的自動化測試還是應用非常廣泛的,考慮到架構的腳本品質,測試用例的簡單性,以及運作子產品可能存在的技術弱點,我給大家推薦五款 Python 的測試架構。

1)Robot Framework,主要用于測試驅動類型的開發與驗收中。

2)Pytest,特點是開源、易學。

3)PyUnit,針對單元測試的 Python 類自動化測試架構,收到 Junit 的啟發。

4)Behave,允許團隊執行 BDD(行為驅動開發,behavior-driven development) 測試。

5)Lettuce,專注于具有行為驅動開發特征的普通任務。

06、最後

以上觀點都是我個人主觀給出的,不一定正确哈,僅做參考。

如果說,有些讀者的學曆非常牛逼,然後學習能力也非常強,那麼選擇人工智能、機器學習、資料分析,我覺得前途是光明的,既能賺錢,待遇又好,還不可替代,不學 Python 絕對虧。

如果說,有些讀者學曆一般,做程式員僅僅是為了糊口飯吃,那麼我覺得可以把 Python 作為第二語言來學,不要當做主語言。搞點範圍許可内的爬蟲,自動化測試,我就覺得挺好的。況且 Python 這門語言本身是非常優秀的,不然怎麼搞人工智能,海量資料分析,對吧?

如果覺得文章對你有點幫助,請微信搜尋「 沉默王二 」第一時間閱讀。

本文已收錄 GitHub,傳送門~ ,裡面更有大廠面試完整考點,歡迎 Star。

我是沉默王二,一枚有顔值卻靠才華苟且的程式員。關注即可提升學習效率,别忘了三連啊,點贊、收藏、留言,我不挑,嘻嘻。