GIS就业参考系列之技术篇——七种武器

题记

从2007——2017,职场中第一个十年即将完成。十年足以摧毁一个人的样貌;十年可以见证一个时代的发展;十年你从匆匆那年转变为而立之年;不知道从毕业一直还在从事本专业的人有多少,不知道这是一种幸运还是一种无奈,不过我就是那个十年了还在坚守在GIS阵地的那个人,十年的职场生涯很平常,很简单,但是也见证了一些高兴的、失落的、无奈的、痛苦的场景,接下来希望能够推出系列的文章,从不同的角度去解析GIS就业,不是指导而是参考,因为我也一直在路上,也在不断学习和成长。

GIS就业参考系列之方向篇——条条大道通罗马

GIS就业参考系列之职业篇——性格决定职业导向
GIS就业参考系列之技术篇——七种武器
GIS就业参考系列之晋升篇——走向成功的阶梯
GIS就业参考系列之升级篇——Make a Choice
GIS就业参考系列之修炼篇——这里的黎明静悄悄



---------------------------------------------------------------------------------------------

    《七种武器》为著名武侠小说家古龙著名作品代表作之一,共分为六个故事:长生剑、孔雀翎、碧玉刀、多情环、离别钩、霸王枪,七种武器非一般江湖武器,件件精妙绝伦。七种令人闻风丧胆、不可思议的武器,七段完全独立的故事,令人叹为观止,不能掩卷。


     对于GIS从业者,特别是GIS技术从业者,你可能需要了解其中一种武器甚至多种武器,因为未来的技术人才要求全栈工程师,也就是什么都需要了解和掌握。至少你需要横向的多方面视野和纵向的深度挖掘。

1、第一种武器:编程语言

       编程能力是GIS技术从业者的立足之本,编程语言就是编程能力的直接体现,对于GIS来说,.Net和Java应该是使用最为广泛的语言,一方面这些语言的掌握相对容易,另一方面二次开发的项目络绎不绝,相比较来说Java比.Net更有市场,这应该得利于Java的跨平台特性,所以一开始选择真的很重要。C/C++是一个高级语言,一般支持底层开发或者高性能研发使用该语言,超图软件的底层也是使用该语言,不过C/C++门槛还是比较高的,在GIS圈里面应用不是很广,一般来说性价比较低,不过如果你精通该语言,收入也不会低。毕竟物以稀为贵。


    随着WebGIS和移动GIS的发展,Javascript语言的应用越来越广泛,不管是超图平台还是ArcGIS平台,都在主推基于JS的WebAPI,移动GIS主要包括安卓和iOS,安卓主要基于Java语言,iOS已经从Objective-C演变为Swift,目前掌握这些语言的同学市场最为广阔,也是GIS技术人群的主力。


       随着新型技术的不断发展,例如更适合云计算或者大数据的Python、Scala、E-lang、Go、Perl等语言,可能你都没有怎么听说过的语言,现在也慢慢进入GIS开发者的视野。由于超图有GIScript、ArcGIS有Python API(ArcPy),所以大家对Python语言还是比较熟悉的,特别是在进行GIS数据处理方面,非常方便,Scala语言是大数据Spark的原生语言,在未来的1-2年内,该语言应该还会有更高的曝光率。


      如今的工程师,你需要精通1-2个语言,了解2-3个语言,特别是身在开发商,每一个项目可能用户需求不一样,功能要求不一样,实现方式不一样,你可以这个项目用.Net,那个项目用JS,而且项目开发给予自己学习基础编程的时间很少,很多都是边开发边学习,中国研发者都是这样给逼出来的。


      这里面好有一比,我们可以把GIS技术从业者的编程能力比作演员的演技,掌握的编程语言就相当于演员可以扮演角色的类型,例如有些演员只能演动作片,有些演员只能演喜剧,但是现在很多演员为了证明演技都在尝试不同类型的角色,例如黄渤,既可以扮演《泰囧》的喜剧,《亲爱的》的悲剧片,《101求婚》的爱情片、《寻龙诀》的动作片、《斗牛》的文艺片、《无人区》的西部片,这样的演员才会更有市场,更有票房,因为他可以接任何类型的片子。对于足球前锋也是一样,既可以左脚,又可以右脚,头球也不错,点球能力强,传球精准,还会防守,教练和球迷自然喜欢。

        如今的社会要求的是综合能力。


2、第二种武器:数据库

      虽然GIS技术现在要与云计算、大数据进行融合,但是数据库仍然是GIS项目中最为可靠,而且经得起生产环境验证的一个必要因素。

      传统的数据库就是Oracle和SQLServer,而且在国内,以Oracle应用最为广泛。对于Oracle来说,你必须掌握的就是基于PL/SQL编程,也就是通过SQL实现增删改查,这里面你可能需要掌握SQL语法,存储过程,SQL优化等。

接下来你也不得不去掌握Oracle的管理,包括部署、简单优化、备份迁移、基本管理,排错等。如果项目够大,你还可能会涉及更为高级的dataguard、goldgate,甚至Oracle一体机等。也许很多你并不需要精通,但你需要了解,这样在工作处理方面你才会主动应对客户的“百般刁难”。


      SQLServer与Oracle基本类似,这里面不过多说明。

      对于开源数据库包括Postgresql和mysql,对于后者只有超图支持该数据库,开源数据库虽然免费,但是鉴于中国GIS用户多为政府部门,他们宁可多花钱也不愿意干冒险的事情,所以基本上开源数据库多应用于预研项目中。


      如今,NoSQL数据库也应用的比较广泛,厂商都拿这些数据库作为切片数据的后台存储,例如超图软件是基于MongoDB,ArcGIS Data Store 的CouchDB等。


      另外可能还会涉及的就是国产数据库,这是一个不得不提的话题,在一些保密部门或者关键项目要求纯国产化架构,这里面就需要使用国产数据库,常见的国产数据库包括达梦数据库、人大金仓、南大通用、博阳数据库、浪潮K-DB、翰高数据库等,这些数据库可能开发人员只会在项目来临时突击学习,不过很多数据库与Oracle或者SQLServer都是比较相似的,至少SQL语言都是标准的,使用起来也不是非常困难,这些数据库也只有超图有责任去对接支持了。


       当然,还有你可能不知道的大数据产品数据库,包括星环数据库,引跑数据库,他们基于Hadoop封装成的类数据库产品,让用户通过传统数据库的使用模式来应用大数据存储,这些超图也是支持的。


3、第三种武器:架构

        架构是一个很大的话题,而且并不是一般技术人员可以搞定的。他需要极有经验、经过多个项目实践的人员进行规划和架构,包括针对当前用户需求和功能要求的编程选型、数据库、GIS平台,同时对于功能与功能的对接,交互,另外还需要满足性能和高可用的指标。

      当然架构的实施有大有小,大到类似超图软件的底层UGC如何架构,小到某个新产品或者某个功能如何架构,从技术工程师到架构设计师中间的路还是很远的。

      由于对这块并不是非常了解,所以也就到此,以免误导。


4、第四种武器:框架

       框架是为了让编程更加简单,现在使用任何编程语言,都有基于相关功能的框架,这些框架可以理解为基于基础语言的封装,开发者可以直接调用这些封装,提高自己的开发效率。

      典型的框架例如:.Net的framework,Java的Dojo,jQuery,Python的django等。

      不太了解的少说。


5、第五种武器:产品

        终于来到了我们最为接近的产品了,目前无论是超图还是Esri相关产品都是可以对标的。

         例如桌面端iDesktop/ArcGIS for Desktop(ArcGIS Pro);GIS服务器端iServer/ArcGIS for Server;GIS门户端iPortal/Portal for ArcGIS;云GIS管理iCloudManager/GIStack;组件开发iObjects/ArcGIS Engine(ArcObjects);Web开发iClient/ArcGIS for JS API;公有云SuperMap Online/ArcGIS Online等,当然平台设计不同可能还有自己独立的产品。

      注:目前ArcGIS Enterprise进行统称,GIStack并不是ArcGIS系列产品,而是捷泰天域。

      那么技术人员也是一样,你需要掌握多种产品的使用,

      例如虽然你进行Web API的开发,不仅仅就是基于JS开发语言,你还需要了解HTML、XML的技术,还需要了解CSS样式,更重要的你是WebGIS的开发,最起码对基础的桌面操作比较熟悉,因为WebGIS的很多功能就是将桌面GIS的某个功能进行行业Web化,你需要熟练操作桌面。同时现在WebGIS都基于服务化、REST接口,所以都需要通过GIS Server发布服务,提供资源和能力。这时候你可能需要了解GIS Server的部署包括高可用部署、基本的管理、优化、不同服务的特性、基本的排错等,然后才是基于Web API的功能调用。也就是你做任何一件事情都不是单一的点,而是由点及面,形成一个GIS环境,而真正的GIS应用也是各个产品的协同作业,每个产品发挥不同的功能,当然如果在进行扩展例如连接的数据库、基于的Linux操作系统、使用的Web框架、采取了消息服务等等,可能你都需要去了解。


6、第六种武器:方向

        上面提及的是GIS平台软件产品,当然这些产品应用也有一些基本方向:

        数据管理、数据处理、制图、影像、三维等。

        每一个方向维度都有可能应用上述所有产品。例如目前比较火的三维,你需要了解三维的原始数据格式和三维切片格式,你需要了解倾斜摄影和BIM,你需要了解如何在桌面展示三维特效和三维分析,你需要在Web端和移动端进行有插件或者无插件的Web3D的开发,你需要实现基于门户的三维场景的资源分享,接下来,如果是三维云我们又该如何建设呢?

        例如影像,你需要了解影像格式,卫星传感器参数、影像分析、影像存储、影像处理等,虽然GIS平台并不是专业的影像处理平台,但是GIS与影像的结合,为影像提供相关的功能和服务都会在GIS平台的相关产品进行体现。

       所以,你不仅需要掌握产品,还需要专注于某一个方向去深入研究。这才是你的立足之本。


7、第七种武器:新技术

        正因为有了IT新技术的发展,才让GIS技术慢慢进入大众视野,随着云计算、大数据、容器、机器学习、人工智能等新技术的落地,各个平台厂商也推出了GIS融合产品,例如云GIS、大数据GIS等,可以说这些新技术的人才不仅是GIS缺少的,整个IT业界都在寻觅。当然更多人才被大型互联网公司或者资本创业公司的高薪长期霸占,那么如果你能够看到这一点,去积极的学习这些技术,你会在GIS市场更有个人的竞争力。

        可以说,云GIS,大数据GIS已经有广泛的产品也在各个行业的项目进行应用。2016年是人工智能的元年,2017年肯定是爆发的一年,就在跨年看罗振宇2017时间朋友的演讲,专门提到了一个黑天鹅,就是人工智能,也许你还不了解他,也许你想不到这些跟GIS有毛关系,但是不久的将来,你可能会意识到,的确,人工智能的时代已经来到。


这是一个包括机器学习的在线体验(可能需要翻墙):https://lines.chromeexperiments.com/

这个项目有两种使用方式,一是画(draw),能找到与你画的线匹配的卫星图像,二是拉(drag),能创建一条互相连接的河流、高速公路和海岸线的线条。
你可以在桌面、手机的浏览器中直接体验,不需要任何服务器,响应速度那叫一个快,有种指点江山的感觉。
Google表示,这个过程是通过机器学习、数据优化、制高点树(VPT)分析图像和存储该数据完成的。

点击打开链接


总结

还是以电影为例,现在很多演员,可能不仅仅希望自己只是局限在演戏的阶段,他们希望自己站的更高,学得更多,所以他们尝试做导演,制片、监制等,尤其是导演,不仅需要指导演员如何演戏,还需要懂灯光、懂摄影、懂剪辑、懂特效、懂音乐、懂舞美,看看冯小刚、姜文、周星驰、徐峥、徐静蕾等等,他们都不会只拘泥于单一的方向和技术,他们懂得全面发展。


正所谓技多不压身,全栈工程师才是未来。

GIS就业参考系列之方向篇——条条大道通罗马

GIS就业参考系列之职业篇——性格决定职业导向
GIS就业参考系列之技术篇——七种武器
GIS就业参考系列之晋升篇——走向成功的阶梯
GIS就业参考系列之升级篇——Make a Choice
GIS就业参考系列之修炼篇——这里的黎明静悄悄



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值