V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rimworld
V2EX  ›  求职

[想求职][webgis]自学的 webgis,想请各位前辈给点建议

  •  
  •   rimworld · 139 天前 · 1538 次点击
    这是一个创建于 139 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自学的 webgis[学习时间为 2019.06 毕业后至今(跨度),(纯有效学习时间可能都不够 1 个月)],想请各位前辈给点建议.( webgis 主要就是前端+GIS )

    学历:普通一本本科 GIS 专业

    作品:catgis.cn/atlas (写的很烂)

    项目文档:https://github.com/mutuyi/catgis

    求职目标:想在北京找份 10k 左右(尽量偏右)的 webgis(gis)工作,最近投了 2 份简历都石沉大海。

    疑惑:

    1.感觉自己越学越菜。HTML+CSS ,看的 head first 入门。JS 看的 DOM 编程艺术、高程 4 (高 4 只看了一半)。Python ,只会安装使用简单库、看看文档调调参数,不太会用、了解特性语法(装饰器和__init__,可能能仿着写写)。但是昨天看了下 github 上的前端面试题,感觉都答不出来。越学,前边学的反倒忘记了。现在不查文档,只能写几行比较熟悉的代码。
    
    2.我这么菜能找到工作吗? 感觉只能说是基本了解 HTML+CSS+JS 。作品用到了 Vue(2.x)全家桶+ElementUI+mapboxGLJS+Echarts+Axios 。开启了 Gzip ,cache ,ssl 。作品发布到了 xx 云 vps 上,也是第一次接触 Linux 环境,然后尝试搭了几个服务( v2,nginx,探针),还算是熟悉几个常用命令吧。
    
    3.我自己本身专业 GIS ,我觉得自己学的还可以。专业软件 ArcMap ,QGIS,ENVI 用的都算熟练,知识点因为 2 年都没怎么用,现在有点遗忘,但是捡起来应该很快。
    
    4.毕业前短暂在一个小厂实习过几个月主要是处理、简单分析地理数据,后来选择回家帮忙,所有没有什么值得讲的工作经历。
    
    5.是不是作品太水了?我现在也越看越不顺眼,但是一时间也不知道怎么优化了。
    
    6.本来是用 FastAPI 写了地图数据接口,但是发现把数据直接部署在前端,开启 Gzip 后,加载速度还可以接受。就没有用了。
    

    我自己打算是趁着这几天+元旦假期,多投简历,死命背前端+GIS 面试知识点,但是还是很怀疑能不能找到工作?现在应该是停止找工作再去学学技术还是可以背知识点找工作?还希望各位前辈给点建议。

    sozengtao
        1
    sozengtao  
       139 天前
    你的前端是基于 Mapbox 来做的么 ?
    sozengtao
        2
    sozengtao  
       139 天前
    嗯, 看到了是 Mapbox ,后端的数据格式是什么呢 ,用的 Mapbox 什么 Layer 来渲染数据呢 。Deckgl 有接触么
    rimworld
        3
    rimworld  
    OP
       139 天前
    @sozengtao 那两个在线地图确实是基于 MapboxGL JS 开发的。不过只用到了一个地图容器,地图样式,地图跳转,其它 API 很少用到。还用了一个高德 API 的地理编码功能。
    rimworld
        4
    rimworld  
    OP
       139 天前
    @sozengtao 现在部署的这个没有用到后端,我是前端 import json ,写死在前端了。目前数据就是 Geojson 的格式。Layer ? 一张是热力图+聚类,一张是填色图。Deckgl 没有了解过。
    g0thic
        5
    g0thic  
       139 天前
    为什么一定要 gis 的职位呢?前端可视化也比这个好找一点吧 再学一点前端可视化相关的东西?
    rimworld
        6
    rimworld  
    OP
       139 天前
    @g0thic 看 BOSS 招聘,纯前端的要求感觉都很高,跨 gis 的稍微要求低点,然而也是石沉大海。
    sozengtao
        7
    sozengtao  
       139 天前
    前端进阶在状态管理 也就是 UI 和 数据分离 。以及注意处理 「重渲染」,一些对象的销毁。

    具体在 GIS 上就可以说:一些 「 webgl 」实例管理不得当,重渲染或者重新反复生成对象,就会很卡
    rimworld
        8
    rimworld  
    OP
       139 天前 via iPhone
    @sozengtao 好的前辈,谢谢你的建议。我有用到 vuex 对组件需要的一些数据进行管理(不清楚是不是这个方向,还是说 vuex 需要进一步配置?)。可能总的 json 文件有点大,几 mb ,在地图上选择日期后才去循环(可能循环函数写的不好)找出当日数据。这样可能搞得加载有点慢。我也有用 mysql 存储(加了日期索引)+fastapi 的方式返回 json 数据,感觉速度上差不多。(然后就选择,全部在前端加载了)
    phobal
        9
    phobal  
       139 天前 via iPhone
    你作品用的 GIS 工具其实没啥技术含量,找个非 GIS 专业的看下文档也能很快上手,你要走 GIS 这条路的话最好发挥出 GIS 专业一点儿的技能,比如:墨卡托投影算法、最短路径算法、不规则多边形面积计算等等。地图底图最好用自己发布的,功能至少得包含描点、画线、路径规划啥的吧,再来个酷炫点的地图可视化吧,有能力再来个 3D 地图啥的,妥妥的加分项
    rimworld
        10
    rimworld  
    OP
       139 天前 via iPhone
    @phobal 好的前辈。我专业课有学过墨卡托投影,狄杰斯特拉算法。不过感觉实际在公司的工作中这些很基础的都有很成熟的 api 可以调用的吧。因为做的地图是疫情展示,没考虑路径规划那些。底图发布我了解过是用 geoserver 吧?感觉也是看看文档配置一下,和用 mapbox 似乎没啥区别啊(可能定制自由度更高一些?)再次感谢前辈,我面相搜索引擎在学学。再找找数据,再写个能表现一些 GIS 专业知识的地图。
    daliusu
        11
    daliusu  
       139 天前
    你做的这些根本展现不出来什么你的 gis 优势,因为招个前端就能做了
    https://s2.loli.net/2021/12/30/V85jla2uBPh6AcO.gif
    给你发个图你看看吧,我们正在做的,都是纯前端
    你真不如直接找个前端做可视化的工作得了
    haorrs
        12
    haorrs  
       139 天前
    固定在北京吗,杭州有兴趣没有
    alvins
        13
    alvins  
       139 天前
    webgis 对前端要求不低,只是重点在 gis ,gis 是一门很大的学科,所以一般是 gis 专业学编码,如果不是 gis 专业建议好好学前端吧。
    rimworld
        14
    rimworld  
    OP
       139 天前
    @daliusu 好的,谢谢前辈的建议。图片有点糊,看着像在配置大屏。我 19 年实习的单位就是搞大屏、智慧大脑的。我做的地图布局是有点受到这个影响。
    rimworld
        15
    rimworld  
    OP
       139 天前
    @haorrs 是的前辈,我目前仅考虑北京的工作机会。
    rimworld
        16
    rimworld  
    OP
       139 天前
    @alvins 前辈,我确实是 GIS 专业毕业的。好的,我多提高提高前端和 gis 的知识。
    maxthon
        17
    maxthon  
       139 天前
    不用自我限制太多,感觉前端都可以投一下
    3dwelcome
        18
    3dwelcome  
       139 天前
    我是觉得楼主做的挺好,VUE 源代码清晰,热力图也好看。楼上那些高要求,只要工作年限上去,水平自然就上去了。

    我最近也对 webgis 有点兴趣,以前有两个痛点,一是用 js 处理二进制的大数据不太给力,二是 webgis 开发思,维始终停留在服务器提供数据,客户端拉取数据上。网络请求次数太多,用户体验就会下降。

    现在用了 webasm 技术后,这两个问题都解决了。

    测试过普通 PC 浏览器,客户端纯内存加载可以到很高的上限,而普通地图数据,也就一两百兆左右。以前需要服务器协助的事情,现在客户端都能本地处理。
    alvins
        19
    alvins  
       139 天前
    @rimworld 那建议搞一次全流程,将拿到的数据( shape 、gdb 、geojson ,arcmap 都能操作)入空间数据库,再通过 geoserver 连接空间数据库发布 wfs 服务,然后在 wfs 服务上实现要素的增删改查,再把常用的操作、鹰眼、地图切换等功能加上,重点放在地图的交互上。
    rimworld
        20
    rimworld  
    OP
       139 天前
    @maxthon 好的前辈,哭了,找工作真不容易啊,BOSS 上终于有一家公司愿意给我一个面试机会。
    rimworld
        21
    rimworld  
    OP
       139 天前
    @3dwelcome 谢谢前辈的鼓励。我是感觉自己有点闭门造车了,还是要多听听各位前辈的意见,这样提升的比较快。后边前辈说的什么 wasm 技术就有点不太了解了。我记下了关键词,我去好好了解一下。是的,我的 VPS 在 HK ,很担心多次请求,会有延迟。目前数据都放在前端的感觉还可以。
    rimworld
        22
    rimworld  
    OP
       139 天前
    @alvins 好的,感谢前辈的建议,我一点点来!
    3dwelcome
        23
    3dwelcome  
       139 天前
    wasm 就是用另外一种语言,来代替 JS 处理图形中各种坐标数据。

    js 里想要精确处理二进制的 int/float/double ,写各种图形相交查询等算法,不是不能实现,而是一件吃力不讨好的事情。

    浏览器语言融合技术,应该就是以后 WebGIS 开发里,偏重客户端的核心技术了。
    alvins
        24
    alvins  
       139 天前
    @rimworld 加油,希望工作能迈出第一步,未来可期
    min
        25
    min  
       139 天前
    gis 市场比较狭窄,专业做 gis 的厂商也不多。
    建议做个懂 gis 的前端,相对与其他纯前端来说就是很大的优势了。
    cocolate
        26
    cocolate  
       139 天前
    webgl canvas svg 至少得熟悉一个 做 gis 离不开图形渲染的
    大型的 gis 项目对性能要求不低,不熟悉底层容易抓瞎

    gis 常用的算法建议要熟悉,工作中也不是时刻有包调的
    我以前碰到一些需求视觉效果要求很高,用 threejs 做
    然后只能撸投影算法,把 recast 寻路编译成 wasm 加到项目里
    liyang5945
        27
    liyang5945  
       139 天前
    问下大家 GIS 到底怎么发音的? 分开读还是[ɡis],还是[dʒis]
    haorrs
        28
    haorrs  
       135 天前
    @liyang5945 分开读
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4149 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:01 · PVG 10:01 · LAX 19:01 · JFK 22:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.