原文来自:https://blog.csdn.net/csdnnews/article/details/88653400

与敏捷开发、大数据甚至人工智能风口捆绑在一起的Python,似乎从来不缺热度。

Python在中国曾经历过三次风潮。第一次是 2007 年的搜索引擎浪潮,Google 进入中国市场,这家明星公司里对Python高普及率也吸引了人们的关注;第二次是2009 年到 2012 年的中国互联网创业潮,许多新兴公司急于快速搭建网络架构,开发环境友好的 Python成为许多工程师首选。第三次则是从2015 年初至今,深度学习概念带火的技术潮流。

在这三次风潮中,中国程序员展现出了对捕捉技术风向的饥渴和超强的学习能力。Python与近年走俏的GoLang以及众多前端框架等技术一样,尽管都以海外为诞生和发祥地,但总能被国内的技术工作者在短时期内掌握,并利用庞大的互联网市场人口进行检测。

Python岗位,以后端开发和架构为主,以算法和数据挖掘为辅,并有少量前端、全栈开发岗,以及运维支持。当然,Python还可延伸应用于下图所示的众多细分领域,我们在此仅就平台上的常见招聘岗位做重点梳理。

8年JAVA开发 转型 Python之路 -- 文摘

(Python在不同应用场景中的知识结构。图片来自网络)

通过大量的企业面邀JD,我们将各个企业对优秀Python人才的期望,分类总结出了以下共性。

1、 Python后端开发

  • 编程语言:具备2年以上开发经验,至少熟悉一种开发语言:Python、Java、PHP、C/C++

  • 服务框架:熟悉常见的Python框架,熟练掌握Django、Tornado、Flask等其中的一种 

  • 数据库:熟悉常见的数据库,至少熟练掌握Mysql,Mongodb,Redis其中一种;熟悉大规模数据存储及分析系统优先

  • 熟悉Unix/Linux操作系统,有良好的编码规范

  • 对web后端技术架构有全面理解,熟悉 TensorFlow 等机器学习框架,是加分项

2、 算法、大数据、爬虫类

  • 编码能力强,内功扎实;熟悉linux开发环境,熟悉Python,至少精通 C/C++ 或 Java 中的一种编程语言。

  • 熟悉爬虫机制,有分布式爬虫开发经验者优先 ,熟悉Scrapy / Redis / MongoDB / MySQL 者优先 

  • 了解多种网络通信协议,熟悉 Thrift RPC 或 gRPC 加分

  • 熟悉机器学习的常用算法,有足够强的业务理解力,数据思维好

  • 数学专业的硕士或博士,有一定数学功底,加分

  • 有图像识别、深度学习、机器学习、自然语言处理等相关经验,大大加分

3、 Python前端开发/全栈开发

  • 熟悉Python、Java、PHP、C#、Shell等语言中的至少2门,熟悉Linux操作系统

  • 与大部分前端的招聘需求类似:HTML5 / CSS3 / JavaScript 基础扎实,精通 ES6 / jQuerydejs 等,熟悉前端框架(Vue/ Angular /React)和原理

  • 熟练掌握 webpack /gulp /rollup 等构建工具,有丰富的前端工程化实践经验

  • 掌握Tornado/ OpenERP / Django / Flask者加分

  • 熟悉 MySQL、PostgreSQL 等数据库,能编写调试 SQL 语句、存储过程,索引、性能优化者,是重要加分项

其实各应用场景需要的知识结构有不少重叠之处,需要每位 Python 工程师根据自己的职业规划,有意识地构建知识体系和技能树。

 

写在最后

得益于AI和机器学习的大风口和 Python 在算法和大数据方面的优势,加上入门门槛相对较低,使其一度成为编程小白们眼里的香饽饽。然而需要认清的一个现实是,Python 的热潮持续了几年,至今仍然在最主流的语言之外徘徊。

整体而言,Python 人才市场的未来看起来较为乐观:

一方面,Python 在人工智能、数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域的应用越来越普遍。同时,深度学习领域仍有很大的发展空间,Python 社区的活跃度和普及率也是其它新型AI语言难以超越的。因此,只要AI的大趋势在,Python 人才在互联网行业就总有一席之地。

另一方面,大家对 Python 薪资不要有不切实际的幻想。随着人才供给增加,互联网企业的定薪也在恢复正常化,Python 开发薪资仍然与主流开发岗位有差距,并没有出现人们想象中的「一飞冲天」。此外,Python 语言饱受诟病的诸多缺陷,也给了Julia、Swift for TensorFlow等新语言可乘之机。

无论 Python 的未来是进是退,有一句话很在理:顺境时拼命往上爬,逆境时提升自己。对于程序员来说,努力积累自身的技术实力,远比陷入对未知趋势的担心和无畏猜测来得更实际

在此,我们建议想成为优秀 Python 开发者的你,要避免沦为「唯 Python 论」者和技术单一型人才。在后端技术架构、数据库结构设计等方面积累扎实基础,坚持多逛技术社区、做笔记和持续学习,多拓展技术圈人脉,与更多同行互相交流,开拓技术视野,都是值得践行的进阶方法。

相关文章: