运维、算法、搜索、大数据:各自的角色与职责

发表时间: 2018-12-09 20:00

很多想进入IT行业但对整个行业又不太了解的人,经常分不清IT界的职业名称,不清楚发展前景和门槛,想入门又不知从何着手。

今天,侃叔帮大家找来一份“IT行业入门指南”,保证你看完后对IT界的职业分类就能有初步的认识,助你快速入行。

继续昨天未完的内容~~~

七、运维

工作内容

运维的工作大概分成几个部分:

A、基础环境的搭建和常用软件的安装和配置(兼网管的还有各种程控机),常用软件指的是SVN,Git,邮箱这种。

B、日常的发布和维护,测试环境和线上环境的发布和记录。

C、数据的备份和服务的监控&安全配置。

D、运维工具的编写,这一点在大的云服务器商里格外常见。

E、Hadoop相关的大数据体系架构的运维。

需要技能

环境【Linux,Mysql,Oracle,MongoDB,Hadoop,nginx,apache,F5,lvs,vpn,iptable,svn,git,memcache,redis】

工具【linux 常用工具,Mysql常用工具,Jenkins,zabbix,nagios】

自动化运维【openstack,docker,ansible】

语言【shell,python】

作为一个运维工程师,严谨的性格是绝对少不了的,必须要心细,要严谨,如果做不到,就别考虑了。

还有如果你想做一些高级运维的话,就必须对Linux系统的底层了解得深入一些,Python和Shell脚本都是必不可少、最常见的运维必备语言。

发展前景

运维和前端其实有点像,都是属于柳暗花明又一村类型的。

本来运维的工作要被后端工程师蚕食了,然而随着云的发展, 运维工程师简直是有了新生。

成长路径

网管-初级运维工程师-中级运维工程师-高级运维工程师

入门门槛

门槛其实并没有太高,经常玩玩Linux会好一些,但是要学的东西确实挺多的。处理线上故障,也是一个经验积累的过程。

所以说呢,基本算是0门槛,谁都可以考虑做,只是要看你喜欢,或者不喜欢,进度快和慢的问题而已。

哪些行业适合做运维

IT界:后端工程师,网管

其它界:All


八、QA

工作内容

QA首先需要了解需求,跟着就是等开发人员开发,然后就是测试,把Bug录入到Jira、禅道,或者Bugzilla等各种专用的Bug管理工具。

跟着就是追踪bug(如果公司有Bug处理流程的话),等着发布上线,一般情况下发布上线的时候QA还要等着程序员改代码,验证……

需要技能

流程【Bug修复流程,版本发布流程】

工具【禅道,BugZilla,Jira,Excel表格来统计Bug数,自动化测试】

性格【严谨,耐心】

发展前景

QA的发展前景……真的不算好,跟网管一样,如果并不能转产品的话,20K基本上就封顶了。

成长路径

测试工程师-测试组Leader-PM

如果能转到PM,真的就很赞了,推荐应该在半年到一年左右就开始转。

入门门槛

QA并没有什么门槛,一般来说,是妹子比较多,汉子比较少。

所以稍微懂一点Bug修复流程就好啦,勇敢地去做QA吧……

哪些行业适合做运维

IT界:All

其它界:All

不过说实话,没有看到过一个从其它职业转到QA的……


九、算法工程师

什么是算法?

简单来说,算法就是瞎扯淡想的,从各种自然现象映射到计算机上去的。什么爬山算法、模拟退火……种种种种,反正就是解决问题啦。

常见的算法有分类算法、聚类算法、实体识别、关系抽取、协同推荐等。


而算法工程师呢?并不是去研究算法。真的。算法工程师只是拿别人的算法:有的是自己实现,有的是直接拿开源软件来用,跑语料,找特征,调参数,优化修改而已。

工作内容

算法工程师的工作内容,大部分时间都是在调优。就是调各种参数和语料,寻找特征,验证结果,排除噪音。

也会和Hadoop、mahout神马的打一些交道,有的时候还要自己去标注语料——当然大部分人都不爱做这个事儿。

需要技能

基础【机器学习,数据挖掘】

工具【Mahout,JavaML等其他的算法工具集】

这是一个技术含量很高很高的职业……特别是对不懂这个行业的人来说。

虽然有时候大部分做的东西也就那么回事儿,但是对于最基本的SVM算法、隐马模型、最大熵等还是有比较高的要求的。毕竟,懂还是不懂,差别挺大的。

发展前景

算法工程师的薪资不会比架构师的薪水低,这个职业的人数比较少,最少也是需要硕士以上。

入门门槛

嗯,门槛最高的一个。最低也是要硕士,基本上都是博士在做。

大部分都是有一个博士震楼,然后一帮硕士帮着写具体的代码。

哪些行业适合做算法工程师

IT界:计算机算法相关的硕士或博士

其它界:无


十、搜索工程师

这儿说的搜索工程师指一般的网站常用的搜索工程师,并不是百度,Google这种大型的搜索。

搜索工程师的主要工作流程就是抓取,解析,去重,处理,索引,查询,每个环节都有比较强的算法要求。

算是属于偏高级别的了,一般来说也是要求硕士以上。

工作内容

搜索现在其实分成两种。

一种是传统的搜索,包括:抓取、解析、去重、处理、索引、查询。

另一种是做为架构的搜索,并不包括之前的抓取解析去重,只有索引和查询。

需要技能

环境【Linux】

框架【Luence,Slor,ElasticSearch,Cassandra,MongoDB】

算法【倒排索引,权重计算公式,去重算法,Facet搜索的原理,高亮算法,实时索引】

发展前景

现在来看的话,搜索工程师的作用越来越大,某种程度上和后台工程师是重合了。

成长路径

搜索工程师-搜索组leader

入门门槛

有过两到三年Java工程师经验的人,或者是硕士毕业的,或者是数学比较好的,或者做过NLP的,这就是搜索工程师的门槛。

哪些行业适合做搜索工程师

IT界:后端工程师中有两年经验,或者是硕士,或者是NLP。

其它界:无


十一、大数据工程师

工作内容

工作内容在前期会比较多一些,主要是基础搭建。架构稳定了之后,大数据部门的工作并不太多,常常会和算法工程师混到一起来。

其它的应该就是大数据周边产品的开发工作了。再去解决一些Bug什么的。

需要技能

环境【Linux】

框架【Hadoo,spark,storm,pig,hive,mahout,zookeeper 】

算法【mapreduce,hdfs,zookeeper】

这些框架的原理和实现都要了解得比较清楚,才算是一个合格的大数据工程师。只会使用这些东西的人,终究还是菜鸟而已。

发展前景

一般人要学的话,确实是有一些门槛,所以,也确实是属于偏高薪的职业。

成长路径

说不上来,目前比较混乱。

入门门槛

入门的门槛算是比较高的吧。跟搜索比较类似,主要就是五六个框架的原理问题。全熟悉下来,可能两三个月或者是半年左右的样子。

哪些行业适合做大数据

IT界:后端工程师中有两年经验,或者是硕士,或者是NLP

其它界:无


十二、Android工程师

Android工程师在两三年前是最疯狂的时候,一个五年的Java工程师,薪水比不上一个三年的Android。

现在呢,Android工程师整体来讲属于高潮过后的喘息,慢慢平稳,不算高也不算少。

工作内容

Android工程师的日常就是听产品经理讲需求,跟后端定接口,听QA反馈哪款机器不兼容,闹着申请各种测试机,以及悲摧地用Android做IOS的控件。

还有还有,各种闪退的修复,以及各种性能的调优,这些都是Android工程师的日志。

如果是要做到跟视频音频相关的东西,Android和IOS之间还需要做一些转码。

Android其实是对地图,支付,IM,第三方登录,短信,统计,音视频,文件,照片等等要求比较多的,业务上其实一般并不会有太多的内容,也很少会要求一些动画效果,再加一些手势密码。

需要技能

环境【Android Studio,Maven,Gradle】

基础【数据结构,Java,计算机网络

组件【IM,地图,支付,拍照,视频,音频,统计,分享,手势密码】

做的好的会对控件做一些自适应的改动,会把网络请求也封装一下,处理好本地缓存,处理好内存的占用。

另外,接口的制订是比较重要的,而且,果断的使用Rest吧,表再使用一些过时又无聊的接口风格了。

发展前景

单纯纯Android的话,发展前景不算大,五年的Android并不见得比三年的Android强太多。

成长路径

Android工程师->Android Leader-》前端Leader-》

很少有Android工程师能够做到技术总监的。所以还是早做准备,Android,IOS和JS通吃吧。

入门门槛

门槛比较低了。

简单来讲的话,最好是懂Java语法,然后是懂Http请求的含义,然后懂点儿MVC的概念,就可以了。

哪些行业适合做Android

IT界:都可以。哪怕你是产品,运维或者是QA。

其它界:都可以,只要你有点儿基础。


十三、IOS工程师

IOS之前是用ObjectC开发,现在又推出来了Swift。至少从目前来看,Swift并未成为主流和开发IOS语言,所以现在要学IOS的话,还是会以OC为主。

从难度上来讲,IOS比Android要简单一些,Android要兼容N多机型,系统底层的API也没有封装的很好,IOS的编译器偶尔会出点问题,但是总体来讲是比较简单的。

只是IOS对UI的要求会比较高一些。做出的效果也会炫很多。

工作内容

IOS工程师的工作内容真的挺简单的,听需求,定接口。做个适配,抛弃一下iphone4。

还有啥……

比较复杂的系统也就是各种背景高斯模糊,各种渐变,各种图片滤镜处理,支付,地图,统计这些东西,其他并没有什么。

需要技能

环境【Xcode】

基础【数据结构,Object,计算机网络】

组件【IM,地图,支付,拍照,视频,音频,统计,分享,手势密码】

发展前景

IOS是高端项目必备的,因为IOS的使用者比Android的还要多一些。很多人都在解释为什么自己不用IOS,最被认可的答案就是:穷。

五年之内,IOS的发展不会有问题。

成长路径

IOS工程师->IOS Leader-》前端Leader-》

入门门槛

IOS的门槛比Android稍稍低点儿,毕竟不用做兼容真的是一件很Happy的事儿。

哪些行业适合做IOS

IT界:都可以。哪怕你是产品,运维或者是QA。

其它界:都可以,只要你有点儿基础。


十四、运营

运营、产品、技术是创业Team的三大主心骨,这从侧面显示出来了运营同学的重要性。

而且,在收入上,运营也是产品和技术远远无法比拟的。

你想想,技术人员做了七年,积累的是神马?一堆破代码,一身颈椎病。产品人员做了七年,积累的是神马?一堆破原型,一身铁布衫。而运营人员呢?做了七年之后,产品再烂,技术再烂,身边的渠道啊,人脉啊,行业的内幕啊这才是最有价值的。

然而运营也并不好做。

工作内容

运营可以从几个大方面来分一下。

1、推广运营:这里包括各种论坛,知乎,贴吧,自媒体,大号,微博,SEO,导流等等所有的手段,简单说就是用很多种方式来扩大自己网站或者是WEB的知名度。

2、内容运营:推广的话,肯定要有内容。以前是软文,现在的方式比较多了,什么易企秀、秀米之类的H5制作。绝大多数都是以H5为主,大部分都是线上传播,形成热点,靠成口碑效应,需要内容团队不断地生产内容。

3.系统运营:系统运营并不仅仅是包括给出一个后台。开个账户,找回个密码,查一下用户的数据是否异常等。有的时候还包括你的系统的核心设置。

比如说,要不要有VIP,VIP应该有什么特权,多长时间合适,能谈到多少合作伙伴,应该分几个级别等,还需要根据用户的表现不断的反馈来调整的。

4.数据分析:这个其实是运营中最有技术含量的一种,也是让运营这个岗位比产品接地气的原因。运营人员是最接近用户的,也是最了解用户行为的,在大数据的时代,对用户行为的分析真的不是一丁半点的重要。

数据分析包括很多,用户的留存率,日活,月活,召回率,转换率,跳出率,PV,UV,男女,职业,地域,年龄,浏览时长,页面热点,浏览路径,高峰低谷。

这些数据运营人员要头脑清晰,把这些数学全部整合在一起,结合自己对业务的了解,然后制订定出后续的计划,看看是需要提高召回率,还是需要提高转换率,看看系统的主要用户属性,借此去寻找更多的用户。

所以运营的工作,有的时候是需要你去申请一个百度认证,提交各种资料;有的时候是需要你去找一些合作伙伴,商量换个广告位;有的时候是需要你去谈几个合作商家,签几个战略协议;有的时候是需要你坐下来,写一篇色情幽默的文章;更多的时候要收集用户的反馈,帮助他们解答为什么你们的网站注册不了,短信验证码收不到等一系列问题……

最重要的是每周或者是每月出个报表,来给大家汇报一下当前的用户情况,给领导层做决策使用。

做运营最重要的一点就是,不要去询问用户,而是去观察用户。

需要技能

行业知识【各种行业知识,必须要懂行业,像推广,渠道,活动,SEO这些都需要了解一些】

人脉【各种刷人脸,凑热闹,换资源】

文笔【文笔太差就找个小妹妹,风趣幽默点,否则没人看】

数据分析【看数据,写各种各样的PPT,然后做决策】

发展前景

绝对好。无论技术发展到什么程度,无论产品变换多少次风格,运营的核心理念都不会变,积累的人脉不会变。运营,可以做100年。

成长路径

运营专员-》部门经理-》运营总监-》CEO

入门门槛

这个说要门槛,有点谈不上。毕竟有深有浅,情商要高是必须的,其他的只能说有了更好。

哪些行业适合做运营

IT界:都可以。哪怕你是产品,运维或者是QA

其它界:都可以,只要你有点儿基础。


(本文来源于IT修真院—知乎专栏,由公众号“IT职教大家侃”整理,请勿擅自复制、转载。如需转载,可联系原作者授权。部分图片来源于网络,如有侵权请联系作者删除。)