上海求职, Golang 开发岗,麻烦各位大佬指导一下简历,求内推合适岗位。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
anying
V2EX    求职

上海求职, Golang 开发岗,麻烦各位大佬指导一下简历,求内推合适岗位。

  •  
  •   anying 2020-10-20 09:43:36 +08:00 5236 次点击
    这是一个创建于 1816 天前的主题,其中的信息可能已经有所发展或是发生改变。

    联系方式 (base64)

    • 微信:a3ZzaGloCg==
    • 邮箱:aUBrc2hpaC5jb20K

    个人信息


    工作经历

    上海 xxx 信息科技有限公司 [2016 年 08 月 ~ 至今]

    作为机器人项目后端负责人,负责后台管理的设计与开发,带领 5 人团队,实现的巡检任务调度系统稳定性达到 99%。
    负责物联网卡项目运营商物联网 HTTP 与 RPC 接口的封装与整合,用 Go 语言实现了电信接口的加解密,优化后对比初版性能提升 5 倍。
    学习接受能力强,平时会主动研究新技术,热衷于优化提升性能,不盲目使用复杂的库,信条是 K.I.S.S (Keep It Simple Stupid)。

    • 智能巡检机器人

      • 使用技术: Python, Rust, Docker, WebRTC, SSE, PostgreSQL
      • 使用 Python 开发管理页面,Rust 开发任务调度系统,WebRTC 开发语音对话功能。此项目的难点在于机器人意外断电重启的异常处理、后台系统的长期运行稳定性以及摄像头实时画面的展示,并且在快速迭代的同时维护好代码的可读性及复用性。考虑到机器人后续的批量生产,初始化系统会是个很大的工作量,提出使用 Docker 镜像来部署系统。这样量产时导入准备好的镜像即可,极大的降低了量产时的复杂度。
      • 后台管理由于快速迭代,需求会经常变动,所以选用了 Python 的 Django 框架,进行快速开发。由于页面需要获取 ROS 的数据,但是 ROS 自身提供的 WebSocket 不稳定,考虑到 SSE 的单工就可以满足需求,因此使用 SSE 替代 WebSocket 简单化调用与降低占用。页面上还需要进行实时画面展示与音视频通话,但浏览器不直接支持 RTSP 协议,Flash 也即将淘汰,权衡之后选择 WebRTC 协议,通过 FFMPEG 将 RTSP 流转换成 WebRTC 流,从而支持主流大部分浏览器。
      • 任务调度部分需要很高的稳定性和完善的异常处理机制,但是后期需求改动并不大。考虑之后选用了 Rust 来进行开发,并且直接使用 SQL,并未使用 ORM 库。以开发时间来换取极高的稳定性和健壮性。在验证了这一点后,后续把后台管理和 ROS 之间的调用接口也迁移至 Rust,使后台管理专注于页面及数据库处理方面,不需要再连接 ROS,避免了后台管理部分连接断开造成的异常。
    • 物联网卡管理平台

      • 使用技术: Go, gRPC, Redis, PostgreSQL
      • 使用 Go 语言对国内三大运营商物联网 HTTP 接口进行统一的封装,同时搭建了 CI 系统,使测试部署过程自动化,减少人工干预。此项目的难点是接口的整理简化与处理,以及中国电信接口的任务回调处理。考虑到接口的实时可用性,在重启时也不能中断程序,因此在开发时就考虑了平滑重启。
      • 运营商接口过于杂乱,特别是中国移动,每个省份都是提供单独的接口。考虑到开发体验和用户体验,及高实时性和稳定性,兼顾快速开发,选用 Go 进行开发,未使用 ORM,直接使用 SQL 语法。各个运营商接口的格式和加解密方式都不同,需要使用单独的方法,但又要考虑代码的复用性,而 Go 缺少泛型的支持,因此在性能不是特别苛刻的地方使用了反射,虽然造成了一点性能的损耗,但是代码复用性提升很多。电信的处理接口是非实时的,而且同一张卡必须等前面任务处理完才能提交下一个任务,否则电信端会抛出异常。这里我采取的解决方案是接收到用户任务后统一写入 Redis 进行排队,并且定时主动查询运营商当前任务的完成情况。

    南京 xxxx 科技有限公司 [2015 年 6 月 ~ 2016 年 8 月]

    • 音视频分屏转码推流聚合平台

      • 使用技术: Go, FFMPEG, H264, H265
      • 使用 Go 语言开发音视频流的转发直播录制程序。此项目的难点是对 H265 视频流的处理,H265 算是比较先进的视频技术,网络上的资料很少,对 H265 头部处理花费了较长时间。查看了相关英文资料,并且请教专业人士,了解了 H265 头部结构及处理原理后,实现了 H265 的头部处理。
      • 项目是对 H264 及 H265 视频的 RTP 流进行解析处理并同时通过 Socket 传输与 FIFO 文件写入,使用 FFMPEG 将 FIFO 数据定时保存为 MP4 视频文件。这个项目让我了解到了音视频格式的区别与细节,对 H265 视频格式有了一定程度的了解。项目对传输速度及音视频流队列有相应要求。音视频流必须按顺序进行队列处理,否则会出现花屏现象,为解决花屏问题,使用了 Go 语言的 channel 来对数据进行先进先出队列处理。

    参与的开源项目

    • pgcli: 优化项目配置文件的路径。
    • django-sspanel: 修复项目未登录时跳转的问题。

    技能清单

    以下均为我熟练使用的技能

    • 编程语言:Go / Python / Rust
    • Web 框架:Chi / Gin / gRPC / Django / FastAPI / Warp
    • 数据库、缓存相关:PostgresSQL / MySQL / SQLite / Redis / MongoDB
    • 版本管理、文档生成和自动化部署工具:Git / Docker / GitHub / Gogs / Slate / Drone
    • 操作系统、编辑器:Linux / Windows / VSCode / Vim

    致谢

    感谢您花时间阅读我的简历,期待能有机会和您共事。

    8 条回复    2020-10-25 14:08:31 +08:00
    ai277014717
        1
    ai277014717  
       2020-10-20 09:49:46 +08:00 via Android
    字节跳动考虑不?
    hbolive
        2
    hbolive  
       2020-10-20 09:54:14 +08:00
    可以,正是当打之年。。
    wilsonWei
        3
    wilsonWei  
       2020-10-20 10:15:34 +08:00
    小伙子好好干,我看好你
    ricky0603
        4
    ricky0603  
       2020-10-20 11:39:38 +08:00
    考虑杭州的机会么
    anying
        5
    anying  
    OP
       2020-10-20 12:02:37 +08:00
    @ricky0603 不好意思了,杭州暂时不考虑
    gh0007
        6
    gh0007  
       2020-10-20 13:11:40 +08:00
    当打之年
    OneMan
        7
    OneMan  
       2020-10-24 10:56:55 +08:00
    广州考虑不
    onecold126
        8
    onecold126  
       2020-10-25 14:08:31 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5780 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 01:38 PVG 09:38 LAX 18:38 JFK 21:38
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86