一、 机器视觉岗位分布
本章节介绍整个机器视觉行业都有哪些岗位。岗位的分布,是和上中下游位置密切相关的。位置的不同,也导致了工作岗位性质的不同。
尽量详细拆解各个岗位,所需要的技术栈,攻略,以及发展方向。
节 1.01 应用工程师/调试工程师
(a) 工作内容
应用工程师和调试工程师其实是有差别的,只不过大部分公司受限于规模,并不会做的这样细分。
应用工程师,一般是负责使用公司的平台软件,或者使用第三方的平台软件,通过拖拉拽完成针对实际应用现场的方案搭建,并保证一定的准确率。其实按说出差频率是较少的。
调试工程师,则是负责出差至客户现场,完成方案在客户现场的落地,并协同现场其它公司其它部门的人员,一起将现场产线调试至验收。甚至可能会负责后期的维护。
但两者很多时候并没有这么明显的区分,很多应用工程师都需要完成方案的搭建后,直接出差至现场,再完成调试的工作。然后再去另一个现场。
(b) 应用/调试工程师技术栈:
应用工程师需要熟练掌握平台软件的使用,需要会基于VisionMaster或者VisionPro这类软件,完成项目序列的搭建。
需要熟练掌握各种通信(如串口、Modbus通信、Tcp通信等)的使用。
一般第三方软件如VM之类,在网上是可以找到很多完整的教学视频的,跟随视频学习,再买一个二手加密狗自己练习使用,就可以去面试找工作了。然后在工作中积累经验即可。
(c) 发展方向
应用工程师是需要常年不间断出差的,因此这个岗位没有人可以干一辈子,年轻时可以走南闯北,但一旦结婚生子,就想要安定下来了。有如下几个发展方向:
- 转码做机器视觉软件开发:学习编程,尽快转软件开发,去做平台软开、客户端软开或者上位机软开,既可以提高待遇,又可以减少出差。推荐大家可以学习我出的软开项目,会事半功倍。
- 升官做领导:提高人情世故的能力,然后争取做一个小领导,这时你就可以大多时间在公司负责管理,或者工程序列的编写,而出差这些,就可以交给手下去干了。
- 转岗做项目经理:项目经理需要对现场和软件都非常熟悉的人来担任,而应用工程师就满足这个条件。
节 1.02 业务工程师
业务工程师就是我们常说的销售工程师了,和汽车销售与房产销售本质是一样的,这个就和机器视觉行业没有太大关系了。有几个要点:
- 需要了解自己的产品,就和汽车销售需要了解汽车一样,机器视觉行业销售你就需要详细了解机器视觉行业的产品。
- 销售需要掌握人情世故,这是显然易见的,所以并不是每个人都适合做销售。
- 技术人员的资本是自己的技术,而销售的资本就是自己的人脉和客户关系。
节 1.03 售前售后工程师
(a) 工作内容
售前售后工程师,主要负责对接客户问题的。售前负责对接客户需求,售后负责对接客户现场问题。这种岗位主要存在于一些规模较大的公司,例如我刚毕业时面试凌云光,给我的一个岗位就是售前工程师,HR的说法就是,既需要懂技术,又需要和客户打交道,然后作为一个桥梁,打通客户和研发之间的交流渠道。
(b) 技术栈
其实不需要什么技术栈,作为公司的售前/售后工程师,只需要详细学习了解公司对应产品即可。需要积累丰富的实战经验,了解产品落地的实际情况。
节 1.04 机械设计工程师
(a) 工作内容
机器视觉行业有大量的机械结构设计,例如我们前面章节在介绍产品时,相机的外壳、专机的机构、现场的组合支架台、光源设计等等,都需要机械设计工程师。
但是机械设计工程师是一个非常独立的岗位,并不和机器视觉行业挂钩,可能你既负责相机外壳的设计,还会有其它行业其它产品的结构需要你设计,公司让你设计什么就做什么。
节 1.05 软件开发工程师
(a) 工作内容
机器视觉行业有大量的软件开发工程师,我们常说来制造页写代码,机器视觉软开就是其中一种。
机器视觉软件开发主要负责开发维护上位机、客户端、平台软件、深度学习软件、MES系统等等各种软件产品。
(b) 技术栈
- 软开需要掌握基本的语法知识,例如C#或者C++其中之一。
- 需要掌握了解图像处理基础知识,最起码二值化之类的应该清楚。
- 需要掌握通信功能的开发和使用。需要了解设计模式、多线程等等各种扩展技术。
- 需要掌握QT或者WPF任一软件框架。
很多同学经常说他掌握了八股文、数据结构、C++语法。但想做软件开发,只靠这个是很难顺利做软件开发的。因为软开不仅仅会C++语法就可以了,只会C++语法仅是一个最最基础的条件之一。
就拿我的重明或者烛照两个项目,你会上面这个,那你可以问一下自己,你能做出重明和烛照这两个软件吗?如果你觉得自己做不出来,那就是你不会软件开发,需要提升的,是软件架构设计、工程实战经验。
如何提升呢,就是学项目,自己做项目,可以把重明和烛照两个项目学习透彻。
节 1.06 算法工程师
机器视觉行业的算法工程师分传统算法和深度学习算法。
对于算法工程师我并不特别了解,期待算法大哥完善补充。
(a) 岗位攻略
对于算法工程师的日常工作,我并不了解。但对于岗位攻略可以分享一下。
- 算法岗一般需要研究生,尤其是现在愈发内卷,这个门槛就更高了。算法岗现在不是有研究生学历就可以,而是你研究生的学校以及课题,要和岗位是强相关的,做一些yolo缺陷识别什么的并无法达到要求。
- 如果你是应届生,想做传统算法岗位,如果你可以做到手撕模板匹配、手撕亚像素精度直线检测、手撕斑点分析等等这些机器视觉传统算子实现,那你是基本没有问题。
- 如果你是应届生,想做深度学习算法,那你可以手撕机器视觉常见的小样本注册训练模型和工具,那基本也没有问题。
节 1.07 测试工程师
(a) 工作内容
测试工程师大家耳熟能详了,工作内容就是测试公司的机器视觉软硬件,并可能会需要做竟品调研。
测试工程师的工作强度还是很大的,因为测试环节是在开发环节之后,往往时间会非常紧张,测试节奏很快,所以加班也会很多,甚至比开发要多一些,这在互联网行业也是如此。
(b) 岗位攻略
测试工程师本科研究生都可以做,但其门槛并不高。
想顺利做机器视觉测试工程师,可以做如下准备:
- 了解机器视觉整个行业,基本将本文档看完就可以了。
- 了解你将面试的公司,需要测试的产品是什么。
- 了解一款机器视觉行业最常见的产品,例如了解海康VisionMaster的使用,那你面试测试工程师,就更有竞争力了。
- 了解一些测试理论,这个可以买本书看,如《Google测试之道》,需要明白集成测试、系统测试、冒烟测试、自动化测试、测试用例等等这些名词的含义。
搞清楚上面这些知识,那你面试测试工程师就基本没问题了。
节 1.08 产品经理/项目经理
(a) 工作内容
产品经理呢,其实一般都是由公司最顶尖的领导担任。例如算法部门的老大,做了很多年技术,会转去做产品经理,权力很大,管着所有的项目经理、开发、测试人员。所以这个我们刚入行的就不要想了。
像小米的一些产品经理,都是抛头露面的大佬级别的存在,是具备很强的影响力的。
项目经理是一个很不错的岗位,出差少,负责项目管理,属于走上了管理赛道。
项目经理需要对产品很熟悉,同时需要会项目管理技能。一般都不会有应届生直接当项目管理,而是由有工作经验的开发、测试、应用等人员转岗担任。
(b) 岗位攻略
做项目经理需要考虑好自己是否想转项目管理,这是和技术岗完全不同的职业发展路线。如果你决定了,那可以做如下准备:
- 做好本质的技术工作:只有将本质技术工作做好,表现良好,才能获得公司内转岗做项目管理的机会。
- 自学项目管理相关内容,等待机会。
- 和项目内其它人员搞好关系,例如你当前项目组的主管、项目经理、产品经理等等。
很多小公司发展初期是没有项目管理岗位的,那你就可以守株待兔了。因为公司发展到一定程度(百人左右),那就一定需要项目管理岗位,你可以提前做好准备,一旦公司打算设立项目管理岗位,一定会内部竞聘,你就可以抢占先机,成为第一批元老级人物了。
暂无评论内容