平均薪资 38.4 万!3 步教你成为区块链开发者,收好这份学习指南
作者 | Aholiab
时至年关,又到了转(tiao)行(cao)季节,这几天很多小伙伴来问我,2020到底哪个行业最有前景?虽说这两年ABCD(即人工智能AI、区块链Blockchain、云计算Cloud Computing、大数据Big Data)四大技术的发展有目共睹,但作为这四大领域中真正意义上的「新技术」,营长还是更看好区块链。
原因很简单,首先,区块链是国家扶持的新技术,且与其他几个技术相比处于真正的「初期阶段」,大片未被开发的处女领域亟待被探索;第二,根据互链脉搏和猎聘网今年上半年发布的一份报告,区块链开发者的年薪平均是互联网行业的1.9倍,达到平均38.4万元的水平。而且这一薪资还具有国际性,根据Hakin9的统计,在硅谷,区块链开发者的平均薪资是158,000美元(约合1,108,054人民币),毕竟找工作还得「向钱看」不是;第三,虽然经历了上半年短暂的「遇冷」,但泡沫退去后,区块链也再次回归了应用价值,企业端的人才需求依旧非常庞大。
综上所述,区块链开发依然是非常吃香的职位。但有意思的是,根据CSDN 2019年《软件开发者大调查》,在中国,有超过一半的开发者对于区块链缺乏基本的了解,甚至连区块链行业的从业者,对区块链也只了解一些皮毛,想要从事区块链开发,难比登天。
这背后的主要原因,就在于区块链领域缺乏完善、系统的学习资料,即使想要学习区块链开发,也不知道该从何下手。除此之外,一个人学习代码枯燥且难度大,而国内高质量的开发者社区十分稀少,缺少了互相交流的氛围 ,想要坚持下来的确十分不易。
如果上面说的正是你目前所面临的困境,那么不要放弃,营长今天特地准备了一份开发者学习大礼包给到你,帮助你从0到1,系统地掌握区块链开发原理。走起!
第一步,掌握「区块链开发者」学习路径图
想要成为一名区块链开发者,首先需要知道具备哪些能力才能被称为「区块链开发者」。在营长看来,一名区块链开发者,至少需要具备以下4个基础的能力(划重点):
可以熟练使用至少一门编程语言;
有基本的项目实施和部署能力,有能力解决项目中所遇到的问题;
对市场上主流的区块链底层开发平台、工具有分辨能力,明白不同开发平台及工具的技术差异;
对区块链开发平台可能面临的安全隐患有清醒的认识。
做到以上几点还没完,这只是成为一名区块链开发者的第一步。在 CSDN 主办、区块链大本营协办的 2019 区块链开发者大会上,微众银行区块链首席架构师张开翔进一步将区块链开发者所需要掌握的技能做了详细总结。他把区块链开发者所需要具备的能力分为三大类,即基本IT技能、区块链领域的基础知识栈、学习能力。
基本IT技能
在张开翔看来,想要成为一名区块链开发者,应该至少达到常规级别「程序员」或「系统管理员」的技能水平。如下图所示:
在这一知识图谱中,Linux操作系统是基础中的基础,因为大多数的区块链系统是可以跑在Linux操作系统上的,包括CentOS和Ubuntu等。因此,开发者至少需要掌握一些基本的Linux操作指令,比如ls查看目录、ps或top查看进程、find查找文件、netstat查看网络等。如果学会写shell脚本,那更如虎添翼。这一过程大概需要一星期左右。
接着,就到了网络层,因为区块链是分布式系统,节点之间是通过网络相连接的,所以你还需要了解一些网络概念。但网络概念不需要有多精通,你只需要知道什么是TCP/IP、公网/内网/本地地址的区别、端口如何配置、节点与节点,以及SDK与节点之间是否会被防火墙和网络策略挡住等即可。一般来说,Linux书籍都会介绍这部分内容。
如果是基于云、Docker或K8S等容器环境构建,则需要了解使用的服务商或容器的功能、性能、配置方式,包括对资源的分配:CPU、内存、带宽、存储等。这方面可以参考云服务商的技术文档,相信很快就可以上手。
到了编程语言的阶段,由于区块链并没有限定编程语言,因此开发者可以根据自己的学习路径选择不同的语言。C、C++、Java、Python、Golang、Solidity都是可以的。
但只熟悉语言还不够,还需要对语言的周边工具有所掌握。以Java为例,你还需要掌握Eclipse、IntelliJ IDEA等集成IDE,熟悉Gradle为主的工程管理软件,熟悉Spring、Springboot等java的基础开发组件,熟悉在IDE或命令行下对资源路径如ApplicationContext等路径的定义。好在这些内容都可以在Java相关的社区和网站上找到学习资源。在熟练使用Java的情况下,采用Java SDK接入到区块链,跑起一个Demo Sample,将是非常轻松写意的事情。
最后是GitHub,这个就不用多说了。不仅是区块链开发者,对任何程序员来说,在GitHub里冲浪,应该都是必备的技能了。
基础知识栈
掌握了区块链的基础知识以后,你还需要对区块链平台的基本结构有所了解。张开翔为区块链入门开发者绘制了一个实用型技能树,他认为,区块链领域的基础知识栈从底层到上层依次由以下几个部分构成:
做个学习型的开发者
想要熟练掌握一门开发技术,需要长期的学习,在这方面,一个开发者是否有读文档的耐心、搜索资料的能力、代码阅读能力,至关重要。因为区块链开发平台的开发文档都卷轶浩繁,以FISCO BCOS为例,其开发文档足足有20万字以上(文档还有中英文两个版本),全部看完,相当于要读完一本《白鹿原》,或者《基督山伯爵》。这还不算其公众号中大量的技术解析和科普类的文章。
一个典型的技术实操类文档如下(FISCO BCOS智能合约开发文档):
https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/manual/smart_contract.html#
如果能够通读且深入理解,无疑会对未来的开发工作有不小的帮助。
怎么样,以上的内容是不是给了一些启发,让你找到了一些学习的方向呢?相信你留意到了,这份学习路径,是来自于微众银行多年区块链实践的沉淀。作为国内较早布局区块链业务的企业之一、《区块链产业人才岗位能力要求》标准(由工信部人才交流中心组织编制)的编写者之一,微众银行在帮助开发者学习和成长方面做了许多的尝试,无论是打磨开发者学习资源,还是举办线下技术特训营、区块链大赛,开设高校课程等,都帮助了一大批想要学习区块链的人迈出了第一步。
区块链探索之路漫漫,咱们往下接着看。
第二步,找到「组织」,得有人与你并肩战斗
要成为一名合格的区块链开发者,光学习还不够,还得学会自己动手开发。正如技术圈的一句老话:Talk is cheap,show me your code(能敲代码尽量别吵吵)。与一群志同道合的人一起切磋,一起上手,会让你的成长之路事半功倍。
多参加行业活动能帮助你在技术上快速成长,同时认识一群跟你一样对区块链技术感兴趣的人。主要的线下活动诸如面对面交流的Meetup、侧重实操的开发特训营、区块链比赛、培训等,不同的开发者社区和第三方组织机构,甚至是官方机构,都会定期举办这些活动。
那么,你该如何选择适合你的活动呢?
首先,在参加活动前要明确自己的核心目的。了解行业前沿技术研究成果和应用方向,参加一场线下沙龙/Meetup是一个快速掌握趋势的途径;急需上手跑起来,开发特训营可以让你在短短两小时内顺利完成搭链;一身技能在手,各类型比赛则正好是小试牛刀的舞台。对于区块链初学者,营长更推荐你参加实操性强的开发特训营。
与一般沙龙一个在台上讲一个在台下听的模式不同,开发特训营要求开发者自带电脑参会,按照每场设定好的主题,去一一实现。主题也非常多样,从最简单的Hello World到智能合约开发、开发框架上手、游戏开发、Dapp开发等,一些安全社区还会教你现场双花一条链、找出某条链的漏洞、进行一次粉尘攻击,相当刺激。
两周前,营长就在深圳联合微众银行及FISCO BCOS开源社区,举办了一次这样的「区块链开发特训营」。在FISCO BCOS高级架构师莫楠为参会者剖析完FISCO BCOS的核心原理之后,两位FISCO BCOS的核心开发者就带领大家现场撸起了代码。很多开发者在现场,仅用了2个小时就完成了搭链和Dapp开发。
由于主题设定往往比较基础,所以这类活动更适合那些基础薄弱甚至是「零基础」的同学。如果你已经具备了一定的开发知识,希望能更进一步,那么黑客马拉松和开发者大赛也许是更好的选择。
根据维基百科,黑客马拉松是指:很多人,在一段特定的时间内,相聚在一起,以他们想要的方式,去做他们想做的事情——整个编程的过程几乎没有任何限制或方向。黑客马拉松具有时间短、高强度、高想象力、高默契度、高爆发力等特点,因此近年来在国内外都大受欢迎。在今年,微众银行以FISCO BCOS为赛题举办了北京站、深圳站两场黑客马拉松,134支队伍的500多名开发者在极速36小时内“怒肝”代码,打造出一个又一个基于区块链技术的创新解决方案。
除了黑客马拉松,你还可以参加区块链开发者大赛。这类大赛有两大好处,第一,很多大赛都是由官方机构主办,奖项的含金量很高;第二,可以获得真金白银的奖励。
例如,工信部中国电子技术标准化研究院每年主办「中国区块链开发大赛」,培育区块链应用解决方案,今年7月份已是第三届。有趣的是,在这次大赛获奖的11个项目中,有4个是基于FISCO BCOS开发的。
此外,去年金链盟举办「中国区块链应用大赛」,征集使用FISCO BCOS底层平台进行开发的优秀应用,获奖者可以分享高达215万元的奖励。当然,竞争也十分激烈,需要和中国人寿、厦门国际银行、四川长虹等知名企业,以及北京大学、清华大学等顶尖学府的团队同台竞争。
一个正在进行的大赛值得
本届大赛以“传统信息化系统链改方案”为主题,正在向全国各行业开发者征集基于联盟链或私有链的共享账本架构的文字解决方案,方案征集截止时间为1月31日16点。作为BSN引入并适配的目前唯一的国产联盟链底层平台,参赛者可基于FISCO BCOS进行链改方案设计。
参加黑客马拉松和开发者大赛不仅能对你的技术提升有直接的帮助,还能帮助你理解区块链项目分工的机制、理解资源分配和项目进度控制,以及高效的团队/跨团队联动。当然,最重要的是,经过一段时间的共同奋斗,你会收获很多宝贵的友谊。
上面提到的线下活动和区块链比赛都是技术提升的「内功修炼」,你可能会问,我想要找个区块链开发相关的工作该怎么办?在没有相关经验的情况下,与其盲目地去投简历碰壁,不如先给自己创造一些资质。比如,参加技术培训。
技术培训有线上课程和高校课程。线上课程平台的公共课程,例如CSDN学院、FISCO BCOS开源社区联合人民网慕课开办的区块链学院。
如果你是高校的学生,则可以通过选修课或者公开课等方式获得系统学习,这类课程往往除了学分之外,还能获得一份资质证明,可以作为踏入区块链行业的敲门砖。例如,微众银行就与全球25所高校进行联合课程合作,同时搭建有FISCO BCOS区块链工程师认证体系,通过课程考试的同学,可以获得FISCO BCOS区块链工程师认证证书。这个证书可用于高校学生的就业推荐,优秀的毕业生有机会获得FISCO BCOS生态圈内企业的实习机会。
当然,「组织」的形式多种多样,加入组织的目的,是让你能在一个良好的氛围中得到技术上的精进,同时获得适时的帮助。除了上面说的三种形式之外,还有行业大会、GitHub社区、各平台垂直社区等都是不错的选择。除此之外,进入官方技术交流群进行实时互动也十分有必要。
FISCO BCOS作为较早拥抱开源的联盟链底层平台,以开源连接起上万名个人开发者和超过500家企业及机构,拥有最大最活跃的国产开源联盟链生态圈,其技术群每天都有大量的技术讨论,甚至直接在群里飚代码;即使在凌晨询问,也能得到瞬间回复。此外,FISCO BCOS还在每周四在群里定期开展区块链小课堂,由技术大牛和资深社区成员进行话题分享。日常画风如下:
有一种友谊,叫深夜一起写代码;有一种默契,叫随时随地改bug。没有几个跟你一起苦逼战斗的兄弟,不能算真正的程序员。找到「组织」不仅能让你获得更多的友谊。更重要的是,有一群人能够帮助你看清每个阶段该做的事,从而实现快速成长。
找到「组织」,你离成为区块链开发者又近了一步。
第三步,找准应用方向,联盟链的另一种打开方式
“人们想要的不是钻头,而是墙上的那个洞”——英文谚语
从学习区块链基本技能到参加各类线上线下活动,在看到那么多优秀的团队在开发者大赛中获奖后,也许你还是无法确定,自己到底该在链上做点什么。
经历了上一波的行业乱象之后,越来越多人清楚看到,区块链真正的价值在于向行业的渗透。如何利用区块链去改善民生、提升效率、助力产业发展才是区块链技术的真正出路。而在这一点上,联盟链具有天然优势。相比于公链,联盟链不「代币」不炒作,设有节点准入机制,数据处理能力更高。可以更好地满足实体产业的需求。
在联盟链中,供应链金融是目前各大联盟链都在发力的场景之一。由于区块链不可篡改、交易透明化等特征,中小企业可以将企业运营数据放在链上,缩短金融机构对其资金和业务状况的评估时间,从而达到快速融资的目标。传统的供应链金融流程的完成时间大概在7天左右,通过微众银行的供应链金融服务平台,最快1天即可放款。
司法也是联盟链实践较多的场景之一。由于互联网数据存在已被篡改和伪造的问题,普通用户如果需要取证维权流程十分复杂。而通过区块链技术,可以使数据的产生、存储和传播全流程都记录在链上。这些链上的数据可以作为有效的司法和鉴定的依据。
与之类似的还有版权存证,今年7月,微众银行与人民网共同推出了「人民版权」平台,利用FISCO BCOS构建多方协作的模式,引入国家监管机构、权威媒体机构、仲裁机构、公证机构、互联网法院等多个节点,共建版权保护联盟链。平台依托实体身份标识和可信数据交换解决方案WeIdentity,可以实现将作者姓名、登记时间、作品名称、作品核心摘要等信息生成唯一对应的数字指纹DNA存于区块链上,大幅降低司法过程中的证据取证与保全成本,快速实现版权认证、取证、维权、诉讼全流程线上化。
区块链技术在智慧城市的建设中也大有用武之地。目前已经有多个城市在这一领域积极探索,将居民的证件信息上链,缩短办事时间。在这方面,微众银行与澳门政府合作,通过FISCO BCOS、WeIdentity等区块链技术,帮助澳门居民实现文凭、学历证书等凭证的电子化管理,节省了居民50%的政务材料办理时间。
能看到这儿,说明你真的对区块链开发动了心思。今天就给大家送个福利,FISCO BCOS开源社区出品「业界首部《应用案例精编》」,将金融、安全、供应链、教育、司法、政务、公益、版权等方面的落地案例一一列出。希望能对你有所启发,帮助你找到最适合的开发方向。
还是那句话,应用是区块链行业大家都在思索的问题,虽说没有哪个应用方向是最适合的,但不适合的却不少,尤其是很多为了区块链而区块链的项目。所以想要打造出真正有价值的应用,不能闭门造车,要多去看看行业里的优秀案例,仔细分析这些应用背后的思路。
但在应用落地中,最好不要忘记,区块链技术再好也只是个工具,人们真正需要的不是你手里的钻头,而是墙上的那个「洞」。
结束语
今天的文章通过知识体系、社区活动和应用方向三个部分为你梳理了成为一名区块链开发者步骤。在这背后其实还有一个重要的因素,就是对于区块链这门技术的信心。作为一名区块链开发者,你需要百分百确信,区块链是一个真正令人兴奋的创新,你所写的每一行代码都是有价值的。无关年薪,无关投机,而是你真正在改变和影响着这个世界。
带着这份信心再去重新审视我们今天提到的这三个学习步骤,你是不是又多了一份新的感触?如果是这样的话,即刻戳开启区块链之旅吧!
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。