引言

二逼青年和初学者总是会花很多时间纠结在工具和语言的选择上,几乎每过一两个月就会重新思考这种问题,经验也告诉我,方向和工具的选择是非常重要的,“事半功倍”是对于理工学生来说具有很强的吸引力。

经历

上学期在科大认真学习了模式识别和人工智能的课程,暑假期间又刷完了Deeplearning.ai,可以做到自己从零分析问题、制作数据集、搭建神经网络、训练调优从而解决实际问题的水平。
偶然间用到了一个 Android java 开发的项目,发现java可以实现很多有趣的东西;
接了一个 JavaScript 项目(微信小程序),发现js也可以实现很多有趣的东西;
于是,纠结又开始了,我好像担心 Python 还不够;

调查

今天中午花了大约 2h 做了一下调查,下定决心深挖 Python ,学习基于 Python 实现的工程成熟性应用相关理论(Web后端开发)和 前景较好型技术如Machine Intelligence。
Post一份2019年度上海某互联网公司的用人招聘要求:

目前的技术栈:
- Python, Django
- Graphene (GraphQL), REST, SSR
- MySQL, DynamoDB, Redis, Docker, k8s, Celery

任职要求:(必须)
- 有技术热情
- 很强的学习能力与独立思考能力
- 负责 Python Web 后端开发和维护并兼顾前端开发
- 负责数据库模型设计和维护
- 负责功能开发和代码维护,编写完整的接口文档
- 负责代码的单元测试及对集成测试的支持
- 优化系统的部分性能瓶颈
- 与客户端开发团队紧密配合,完成项目具体需求

其他要求:
- 本科及以上计算机相关专业,2年以上互联网开发经验,熟悉后端开发
- 熟练使用 Python,有3年以上 Python 语言使用经验
- 熟练使用 Django
- 熟悉最新的 HTTP 协议、RESTful、GraphQL 等标准与设计规范
- 熟悉 Redis、NoSQL、MySQL 等存储组件的使用和基本原理
- 了解 Django 作为 Service 开发
- 熟悉常用的算法思想,设计模式,解决问题能力强
- 有一定的架构思想,对分布式计算、分布式存储的架构设计理念和动机有一定的关注和理解
- 良好的沟通、交流能力
- 能轻松的理解中英文技术文章
- 对科技行业、和技术有热诚
- 做事严谨,注重细节

加分项:
- 熟练使用异步编程
- 有高并发编程经验
- 热衷投入开源社区
- 有使用过 LeetCode
- 英语交流能力
- 机器学习相关经验

考量

从大二玩Raspberry Pi做CV开始,到本科毕设使用Python和C++实现双目系统应用,再到研一使用sklearn做机器学习,到最近实现deeplearning,我现在Python使用经验也有4年了,期间读过不少如《Fluent Python》的经典书籍,对Python做数据科学(numpy)、机器学习(sklearn、tensorflow)、多线程、优化(numba、Cython)有比较多的经验了,目前熟练Python和C++,C++可以结合Cython做许多Python不擅长的事情。诚然,java、js是非常有趣的,我有很多想做的事都可以通过他们很好的实现,但是,我会有越来越多想做的事和越来越昂贵的时间成本,我只能去学习未来5年不太会被淘汰的技术,我的优点之一就是喜欢尝试新东西,我目前的缺点就是不能把热情维持地太久。我需要长久地激励,实现有趣东西是不错地激励源,经济上帮助也是,我可以从Python出发做其它有趣的事,事实上仔细想来,Python确实可以做非常多的事,性能经过优化也可以做的非常好。相比工作党,研究生更有可能有足够的时间与精力自学!相比直博生,这是提前进入工业界积累资源把握机遇的机会!在学习足够的技术之后,我要申请相关的兼职/外包,作为一种激励。
我现在要做的,就是深挖一个领域,成为这个领域专家,然后触类旁通。

前进

  • 基于Python 的网络后端理论与实践
  • 基于Python 的人工智能
最后修改日期: 2019年2月24日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。