转发关于GISer的职业发展问题的思考

563 阅读21分钟

我一直在思考我到底是个Java还是个前端还是个GISer,学校毕业以后就从事软件开发工作,做java开发,奈何公司是地信企业,所涉及到的项目都是和GIS有关的,多多少少都有涉及一些GIS的知识,慢慢的由java转向了数据处理,gis数据渲染,前后端一锅捞的杂乱岗,目前是带团队做一个项目,有时候感觉自己很无力,有很迷惑不知道的方向是什么?以后是要走JAVA,还是转GIS前端,杂乱无章,但是又不想蹉跎岁月,也想发光发亮一下,就搜集了一些行业信息和资讯,给自己盘点一下,无意间看到这么一篇文章,感觉很有意思,作者的思考很有深度,能给不少人解惑,

来源自公众号Spatial Data,喜欢的可以关注,原文如下:

关于GIS专业职业发展的问题,学生党问,要不要考研?选择测绘专业好?还是遥感专业好?还是地理信息专业好?已经参加工作多年的朋友会说,工作内容繁杂,什么都会点什么都不精,毫无职业竞争力,看不到前途的迷茫。闲暇时回答还是感觉凌乱破碎,抽空还是打算系统性阐述下这些职业问题。

GIS是什么及其核心价值?

        在回答问题前,我们有必要先扯扯GIS是什么的问题,当我们选择GIS专业后可能立马就有这样的问题,当然这里表述有些许问题,因为绝大部分情况下可能不是你选择了它而是它选择了你。料想每一个Giser大学第一个寒假时亲戚朋友们都会来问你这个专业干嘛的,大部分情况下你自己一脸懵逼却又不故作严肃的说“你用过手机电子地图吧?就是干那个差不多的(吧)?”,其实自己也不知道自己在说什么。的确,很少有人能说的清楚这个专业是干吗的,我印象最深的一句话就是课堂上老师说的“世界上90%信息都和地理位置有关,那么就和GIS有关”,虽然这句话不假,但是对一个个刚入学第一天的同学而言,这个广告词非常不接地气,好像每个GISer“可上九天揽月,可下五洋捉鳖”,但大家自己知道自己怎么啥也不会咧?

        我没有查询维基百科凭感觉写关于gis的学术定义是:GIS是个测绘学,地理学,计算机学多学科融合的交叉学科。从定义就能感觉出这是个天坑专业,什么叫交叉?交叉就是打杂,打杂就是业余,任何专业讲究的是“专业”啊,你见过有几个博士是在搞交叉领域?这个领域就研究不了,深入不下的啊不是。

        很多学校原先都没有GIS学科,后来都是一窝蜂拉起来的专业,比如,有的学校测绘学科强,就基于测绘建立GIS,有的地理学科强,就基于地理学科建立,有的计算机学科强,就基于计算机学科建立。咱先抛开学术的不扯了,如果您不是铁了心要研究学术的话,应用层面还真是计算机的最靠谱,为什么咧?因为GIS一开始诞生的时候,是个数据库,就是管理地理位置的数据库(空间数据库),后来有数据库自然而然扩展了,能要些应用服务了(GIS Server),有了服务了自然而然的要做应用展示吗不是(地理可视化),于是,如今我们看到的GIS就是从空间数据库到后台到前台的一整套的IT玩意儿,而在这一整套体系里,核心竟然是空间数据库,惊不惊喜意不意外?

        其实当了解GIS的起源和核心之后,如果说测绘,地理学,计算机学哪个和GIS最接近?那必然是计算机相关了。

GIS专业要不要考研?

****GIS既然和计算机相关,其实是应用侧的,就是理论的东西太少,本身是大杂烩,都是借助外来或者第三方理论在发展,所以从学术角度讲,你读研,读博除了学历之外,能学到的东西其实不多,研究方向也不多。

        从就业角度说,现如今研究生学历贬值很严重,待遇和本科生基本没差别,从性价比角度上说,再浪费三年又有什么意义咧?

        从上述结论说,无论从学术,还是就业,读研都是毫无意义的投入,但是不是说我反对考研咧?也不是,假如你本科就具备很强的开发能力,顺利进入了头部企业大厂,一边996一边丰富薪资,压根你就不需要考研其实。假如你本科很水,什么都不会,希望考研考个好学校,然后好就业,这就有点自己欺骗自己了,既然无论大厂小厂都不认学历只认能力,4年你都没有找到人生的方向,又混3年就突然顿悟了?我表示怀疑。如果没有能力,那个学历其实毫无用途,如果有能力,这个学历就是锦上添花。

        好像我还是反对读研,但其实我还是推荐女生读研的,无论你有能力还是水,都尽量读,一方面国企或公务员卡学历,女生毕业校招进国企,考公务员挺好的,另一方面计算不幸没入国企也没考上公务员,有个好学历,就业虽然没多大帮助了,但找个好老公概率就大多了,所以为啥不读研咧,百利无一害,所以女生偏向体制内工作的,都尽量读研。男生其实还是看个人了,也许本科能力不错,读研然后认识更好的圈子可以的,如果本科就不行,找不到工作才考研的,这种算了吧,没认清自己和世界,逃避型的人格,3年后这个世界还是会令你失望的,何必?

测绘、遥感、GIS哪个专业好?

****    提出这样的问题,一定不是为了搞学术当科学家解决人类未来问题的,定位就是自己个人就业怎么挣大钱的,不能说你的志向有多不高尚,但是其实这是最实际的,毕竟科学家是没几个人能当的,就算当我感觉也不是这种基础和工科类专业能搞出啥大名堂的。

        测绘的话,真是苦逼,最近更苦,工资不过万,几年不着家,这好像真没啥意思。

        遥感,社会招聘很少招遥感,就几个研究性质的研究院可能,就业面狭窄,商业公司少,我国数据又不开放,估计大部分会转行吧可能。

        GIS,这个还真不错,有的毕业就能进大厂享受996的福利,拿着几十万年薪和股票不香吗?再不济去软件公司干几年项目,钻研钻研技术,几年后奔架构师和技术专家路线,月薪近2万二线不是问题,这你让测绘和遥感咋比?直接劝退那两个专业。

为什么学校培养不出合格的GISer?

      当我们抛开一切学术和所谓的发展历程来看,GIS竟然一开始是个数据库,是不是问题简单化了?所谓交叉学科,就是测绘的人提供数据,地理学的人提供理论,计算机学的人负责技术和业务应用落地。但是我们的学校从来没有按照这个方向去规划教学,即使有规划,也是不可能教好的。

       测绘学科建立的GIS教学时大谈特谈测绘如何如何,给学生洗脑,不少学生都以为自己是“测绘人”了,整天练习摆仪器计算机算算加减,就这玩意儿大专生都能干能有啥前途,能教出啥玩意,一毕业,男生外业去干测绘,女生内业去数字化数据,毁人不倦。偶尔有些GIS开发的课程,教材和实习内容与当前社会脱节太大,很多教材都用被社会淘汰的技术和语言,虽然语言不是很重要,但是脱节太大尤其非it专业的,再融入社会和没学也差不了多少。

       地理学科建立的GIS稍微好点,即使教不了多牛逼的技术,起码教了你不少装逼的理论啊,比如南师范这种地理学科建立的GIS,混混理论挺好的,熟练ArcGIS操作更是棒棒的,把这些理论在ArcGIS里拖拽搞个模型发发论文挺不错的。这种教学就适合你搞学术,你读研读博,这种教学思想没问题,你说你本科就业去,对不起,这点东西和没学也差不了多少。

       计算机学建立的GIS就很符合目前市场对人才的实际需求了,从技术上来说,GIS里常用的数据组织空间索引各种算法,都是计算机学科的泊来品,没自己的东西,甚至可以理解成是计算机知识在地理与测绘领域的一个定制应用,所以按照计算机方式教学挺对路子的。再看目前社会招聘,比如互联网大厂搞什么自研空间数据库引擎了啊,那边搞无人驾驶的地理算法了啊,大量高德地图百度地图和互联网结合搞LBS应用的啊,用途真的就和GIS专业吹的一样,哪里都能用,您的学校稍微好点,一本或者211或者985的化,然后您在学校深入一个领域学个能过大厂面试的技术水平,类似阿里P6的待遇还是很轻松的,再不济找个国企一般技术可以也能够得着,反正你都不可能混的太差。

       但是不管学校怎么建立学科怎么教学,都只是给你入门的,小白普及下,真正努力还是靠自己。别说所谓跨专业知识,单单从计算机方向来说,都跨前后台数据库了,哪个学校培养的出来这样的全栈工程师?我们知道JS程序员是写JS的,Java程序员写Java的,你GIS工程师写啥的?实际工作一会儿要求你做空间查询优化,一会儿写点数据处理脚本,一会儿前端还有个底图展示要你做。。。所以这个大杂烩的专业,什么乱七八糟都塞进来的东西,学校是教不了的,修行还是靠您自己了。。。

GIS专业就业方向和学习方向

**** 我们既然知道学校就是给你发个证书的地方,其他靠自己,那么就要在学校里好好规划,那么真就赢在起跑线了,笔者读书时不懂,毕业后经历社会毒打后总结了一些经验,现在慢慢阐述。

       目前而言,GIS专业毕业后有几个就业大类:

  • 转行:不干这个行业了,转就转了,下面的您也不用看啦。
  • 读研读博:如果你真是搞理论研究的天才谁也阻挡不了你发光,倘若你就是想混个文凭就业,不好意思,这是不归路。这么说,非国企的话,本科还是研究生对企业基本没啥影响,你能干就薪水高凭本事吃饭,技术差研究生也没用。国企的话,可能也就比本科生基本工资多几百?有啥意思?不过您有家里或导师牛逼给你开介绍信啥的上来就到国企当领导的我也见过这样的博士,所以不能一概而论,还是要看你自己的水平或个人的社会关系。
  • GIS开发:穷人孩子的首选,缺钱的话,就入这个坑吧。有本科毕业开发的,有硕士毕业开发的,应用开发而言,硕士反而不如本科早就业的毕竟这是比拼实际工作经验的地方,但要是你搞算法开发的,那还是学历越高越有优势了。

       对本科和研究生而言,毕业走GIS开发可能更适合绝大部分GIS专业的学生,毕竟无论时头部企业还是国企还是广大中小企业,GIS开发的需求还是很大的,薪资的话,也是非常可观的。

        在校学生的话,如果老师教你什么cad,cass的玩意啊,搞什么数字化啊,就通过考试就拉倒了,千万别以为和高中一样,以为学校教的自己认真学好就肯定有用。实话实说,学校教的别的专业不知道,学校教的GIS完全就是垃圾,学术上没有发展,就业也没用,所以别学这些没用的东西。ArcMap可以学学,这东西不是因为有用其实实际工作中用的也少,而是很多概念是相通的,熟悉软件有助于将来的专业术语理解。剩下的时间,少打游戏,过来人都知道将来会后悔的,把时间都用于学习编程,难度最低的是学个js,找些开源的如openlayers做gis开发练习,等语言熟练了,把书上的什么最短路径算法自己用代码写写。然后比如计算机有什么二级三级考试吧?这东西没用,但是你可以参加当作个人的练习,三级别考什么容易考的办公软件啥的,直接选三级数据库,把数据库术语搞懂,起码会增删改查不?然后学习学习空间数据库什么的。该实习的时候,一定出去实习个半年一年的,毕业后保证有份待遇很不错的工作

已从事GIS工作但人生迷茫怎么办?

****即使已经在做GIS开发的朋友也会大部分迷茫,感觉这个行业没啥前途,感觉自己做的东西太low,感觉自己的薪资怎么也上不去,感觉人生方向都带偏了,整个人都不好了怎么办?其实所有的问题并非主要是外部大环境问题,也不能怪个人太菜水平不够,因为其实这种情况反而是这个社会的普遍规律,即:任何行业成功的都是少数人,失意的都是多数人。理解了社会的运行规律是不是心里宽慰不少?有人说不行,你这么说我更难受了,我就想要成为成功的少数人,如果少年有这番志向,那我们可以继续稍微细致的讨论一下。

        问题1:是不是GIS行业不行?

****是的,不行,目前已知的什么超图之类的,都是满足于做政府项目,快速捞钱,他们对GIS产业的影响在哪里?提出了什么更新的理论,引领了什么更广泛的应用潮流?没有,他们固守在自己的什么国土一调二调的一亩三分地,对其他行业影响有限。应该说,主流专业的头部GIS企业没有情怀,没有责任,没有创新,只顾着挣钱,所以这个行业发展不了,GIS开发人员的薪资当然上不去了。

        但另一方面,我们看到Uber投入大量技术力量在搞地理空间分析平台,阿里也在搞时空大数据平台,各种无人驾驶领域对高精尖地图和数据的需求,各种互联网大厂在抢Map应用。。。整个行业欣欣向荣啊。。。如果你加入任何一个这样的团队,钱都少不了。

        总结:不是GIS行业不行,是标榜自己是GIS的头部企业堕落,引领这个行业的绝不是所谓专业GIS公司,而是各种其他行业的公司,这个产业在未来会更好。所以个人而言,就不要去什么测绘部门,国土项目的公司了,这种强GIS的公司没一个待遇好的,你要去所谓弱GIS业务领域,如主打是无人驾驶啊,主打是国家电网啊,主打是互联网lbs啊,你的GIS虽不是主业,但是比较重要的技术一环,这里的待遇就好多了。长远看,地理信息领域是非常有前途的,但目前2g的这群地理信息公司是毫无前途的。。。

        问题2:工作打杂看不到职业前景怎么办?

****有这样的疑问,一定是非大厂的从业者,这种情况和GIS内容有关也和大厂小厂员工分工不同。大厂讲究的是“专”,招聘的时候不是招GIS工程师,而是招细分的算法工程师,内核研发工程师,可视化工程师,员工只要固守自己的小领域做到专业极致即可。小厂讲究的是“能干活”,至于这个活是数据处理还是分析还是展示反正都是你的,并且质量要求不高,效果要求不高,能完成验收捞钱就可以了。很明显,小厂是很坑的,导致大量GIS从业者什么java,js,sql都会一点点,稍微深入一点就懵逼,完成小单位的工作绰绰有余,你要问他还能干啥可能自己也不知道,没有任何一点个人的特色。

        一般这样的开发者自己也感觉到问题了,因为工资最能说话,不论前台还是后台工资都比他高,这时候就会产生新的想法,gis太坑了,什么都要干,什么都干不好,工资还不行,我不如就只学一样,我转前端可以不可以,我转后台可以不可以?这种转行的很多很多,GIS开发行业很难留住人。

        前文也说过,一个合格的GISer其实并不是程序员养成路线,而是架构师养成路线,对于一个非互联网大厂的薪资高的GISer,几乎都是本公司的架构师和技术经理级别,所以一开始这个台阶太高了,大部人就迈不过去了。程序员会分前端后台,架构师是负责解决方案的,两者所需要的时间根本不同,程序员可能两年左右就能独立做项目了,而架构师没5-10年开发经验是拿不出手的,过长的成长时间大部分人看不到前景,也自觉耗不起,而且没有目标的耗也是空耗。

        所以,如果自觉性不足,也对技术兴趣不高的,就是混个工资写写增删改查的,请继续,保持好心态和工作态度,不要比较工资过好自己的小日子,也不要和老板顶撞,免得开除找不到下家。如果对技术有兴趣希望做出更好的成绩,有更好的职位,由于成长期很长,请从严要求自己,提升个人核心竞争力,将来会有很多更广阔的选择空间。      

       问题3:如何提升个人的核心竞争力?

       核心竞争力分两块,自身实打实的技术能力,还要有社区的影响力,这有助于进大厂。实打实的技术能力不是一蹴而就的,制定适合自己的成长目标,比如第一步能熟练使用各种GIS API,一般我也不推荐你看什么源码了,基本没必要,一般api都会有custome图层啥的,多练习练习,慢慢就懂得地图数据是怎么渲染的,这时候你就有创造力了。随着个人成长,慢慢要理解后端传给前端是什么数据,这样逐渐理解前后端交互的原理等等,我见过很多前端可视化工程师说,我只管实现效果,数据大不大,后台怎么传关我什么事?这种龟缩心态是没有前途的,走不出去自己的天地,一个产品是完整的数据流,一个环节出问题,你可视化做的再好,给人印象也是很卡的东西,顿时跌入末流。

       最后一定要关心数据库,绝大部分公司都是业务公司,核心就是业务数据库,掌握数据库的设计对技术和业务有非常大的帮助,无论你想走架构师还是转岗做产品经理,对数据库的了解是不可或缺的能力。

       平常要多看博客多练习,保持技术的与时俱进,对练习的结果也要通过博客总结归纳,时间长了自动会有社区影响力,很多大厂的招聘都是从博客上开始的,通过博客了解博主,并发出面试邀请,所以经营好自己的博客也是技术爱好者必须要做的事情。

        这里其实是没有捷径的,但有个诀窍就是精益求精,如果你看到自己专业和负责的地方,网上有哪个效果哪个性能方案比自己的好,一定要吃透,始终保持这份心态,就等于大方向就很正,绝对不会产生被带偏的沮丧感觉。

\

我推荐的GIS路线

      值钱的技术:决定你薪资高主要在这里其实,对于前台后台数据库的BS三层,重点关注“一头一尾”,基于PostGIS的空间数据库和基于WebGL的可视化技术是我的推荐,关注数据库相关的数据库设计,索引空间索引知识,优化等,关注可视化技术的底层技术如原生WebGL,将来的WebGPU和图形学知识。

      不值钱的技术:什么熟悉精通ol,leaflet,mapbox,three  api等等,这些api你熟悉别人不熟悉吗,难道别人比你笨?学了这些东西指望高薪就是妄想的,只有应用的技术,没有基于底层创造的能力是不可能有高薪的,也进不了大厂。但是不值钱不代表你不用学,是必须要学的,只是能让你有份工作,而不能让你有份好工作而已。

        压根就别深入的技术:人生太短,保持关注力,放弃很多鸡肋的东西,比如前端三大框架别学,ui的东西别学和gis没关系,大部分都是炮灰岗位,比如笔者,压根就不会花一分钟学这些,这些技术人员多了去了,我随便拉一个过来都能帮我干活。不过一定要深入es6和前端工程化模块化相关的知识。

 比如后台会用即可,别太深入各种框架不可自拔,保持重点在基于后台技术处理gis数据,比如投影变换啊,数据切片技术原理啊等等,增删改查就够了,别弄了,同理,这种技术人员多了去了,随便拉一个过来都能帮我干活。

 类似这种人多的了工作和技术,就是极其内卷的,搞不出花来,GISer请保持自己的专业能力和技术点的稀缺性,物以稀为贵,这是职业的精髓。