阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

    教程列表

    数据库
    抓包专区
    测试专区

    朱安邦的工作经历

    基本信息

    我叫朱安邦,现杭州

    仅分享我做过的一些开源的项目;

    其它在公司的coding和内网Svn的项目,因涉及隐私不列出,不分享。

    团队的开源Github: https://github.com/canonchain

    博客

    个人总结

    擅长区块链周边的业务开发,使用 JavaScript 封装公用业务模块,npm 包的制作,Node.js 做接口以及相对复杂的业务,在公司的团队内主要做一些探索性的开发和处理棘手性的问题

    设计师出身,有不错的美感和用户体验思维,做过 2 年半的前端开发组长,有相对丰富的项目推进和人员调配经验。

    内心真正的热爱大前端这个行业,并建立 阿西河前端教程(axihe.com)的网站,用于分享和帮助别人,以及交流提高自己的前端技术。

    技能总结

    • 前端基础技能 HTML/CSS/JavaScript 均熟练掌握
    • 熟练使用 Vue.jsReact.js,Angular,且均做过稳定运行的线上产品。
    • 熟练使用 TypeScript,Gulpbabel,Webpack 及不同情况下的 Webpack 配置
    • 熟读 web3.js 源码,对以太坊前端生态的技术有较深入的理解,并做过多个类似的区块链线上产品(下面项目区有介绍)
    • 良好的数据结构和算法基础,熟练使用基于 Nodejs 的后端开发,开发过基于Express,Koa,Eggjs的线上产品
    • 熟悉Nodejs线程模型,并发模型,异步原理,熟悉V8引擎;
    • 深刻理解 HTTPHTTPSgrpc 网络协议
    • 熟悉 PostgreSql,Mongodb 的使用和性能优化(了解基本数据库的优化,索引知识,但没有做过线上产品的分库分表)。
    • 熟练使用 GitSVN 进行团队协作
    • 熟练进行 LinuxWindows服务器下的项目部署,熟悉Docker。
    • 熟练使用抓包工具 CharlesPostman,以及 Chrome Dev Tools 工具
    • 可以阅读英文的文档,但口语较差

    前端工作经历

    • Nakamoto & Turing Labs (实验室性质的组织,非公司)
      • 2018 年 1 月 - 至今
      • 配合 3 位在美国的博士大佬做大前端辅助工作
      • 主要是分布式计算和区块链科研方向的前端辅助
    • 杭州链生科技有限公司 (区块链开发的公司)
      • 2018 年 6 月 - 至今
        • 2018 年 6 月劳动关系由 微飞胜科技 转到 链生科技
        • 老板和团队均未改变,仅换了下劳动关系
      • 从事工作
        • 区块链浏览器开发 - 独立完成
        • 区块链 PC 钱包开发 - 独立完成
        • 区块链 Web 开放 Api 开发 - 独立完成
        • czr.js 开发 (JavaScript SDK) - 独立完成
        • Erc20 代币映射到主网币的完整发币流程 - 独立完成
        • 智能合约的开发工具开发 - 辅助同事完成
    • 杭州微飞胜科技有限公司
      • 2016 年 5 月 - 2018 年 6 月
        • 劳工关系后续转到 链生科技
      • 从事工作
        • 微信公众号开发
        • 基于微信摇一摇的 iBeacon 设备(摇钱宝)周边页面开发
          • “摇钱宝"是微信摇一摇市场份额排名第一
        • 内部管理后台的开发 (用户为微信用户,用户量为 150 万)
        • 内部通用 JS 模块的封装(基于 jQuery 或 基于原生 JavaScript)
    • 科大讯飞股份有限公司
      • 从事工作
        • 内部项目的管理后台开发

    工作经历总结:先在安徽合肥的科大讯飞股份有限公司工作,后面 2016 年入职一家杭州创业型公司;

    项目描述

    区块链浏览器开发 - 独立完成

    • 线上地址: explorer.canonchain.com
    • Github仓库
    • 说明:
      • Axure做原型图 -> Sketch做设计稿 -> Vue.js做前端页面 -> Nodejs + Express + PostgreSql做后端接口
      • Nodejs 做服务,实时从区块链节点中获取数据,经过组装后写入PostgreSql数据库的各个表
    • 难点:
      • 因测试的时,经常用 3 亿至 5 亿条数据进行模拟测试,所以在 SQl 索引及分页查询优化地方进行摸索很久
      • 区块链节点开发的同事因需要频繁测试 Bug 及分叉情况,所以要求浏览器的数据展示要及时;而一笔交易需要处理封装后写入到 21 个数据表中,所以 Nodejs 写入数据库的代码性能做了很多优化,重点是数据库索引及前端查询方式的优化,最终优化到:从向节点获取数据开始计算,到写入数据库完毕;Nodejs 服务每秒可以处理 1600-2500 笔交易;

    区块链 PC 钱包开发 - 独立完成

    • 地址:https://github.com/canonchain/canonchain-wallet
    • 说明:
      • Axure做原型图 -> Sketch做设计稿 -> Electron 做页面和应用
      • 节点程序由 Electron 进行下载和控制
    • 难点
      • Windows 平台的兼容性,热更新在 win10 部分系统被默认屏蔽的问题
      • Windows 平台因环境缺失,导致应用意外的问题
      • 360/ 腾讯管家对Electron报毒的处理
      • Mac 系统中节点下载后,部分系统的节点无权限问题
      • 在强制断电,系统蓝屏等情况下,本地存储的账号文件的安全保障

    区块链 WebApi 开发 - 独立完成

    • 区块链信息查询的接口
    • 说明:
      • 身份 Key 的生成
      • Api 调用的频率限制
        • 使用 Node.js + Koa + PostgreSql 完成
    • 难点
      • API 的身份验证
      • API 调用速率的限制及扩展,避免 API 的恶意使用
      • 从浏览器sql内取数据,主要是数据库优化以及业务处理来提高性能

    czr.js 开发 (JS SDK) - 独立完成

    • 地址:https://github.com/canonchain/czr.js
    • SDK的使用文档: https://czr.readthedocs.io/en/latest/
    • 说明:
      • 与节点进行交互的方法
      • 周边的账户以及常用工具类方法
      • 合约相关的封装
    • 难点
      • 发送交易时,因不确定调用的节点是否为恶意,以及是否有wireshark这种显卡级抓包工具及类似的截取脚本,所以交易流程做了特殊处理;可以保证即使发送到恶意节点,用户的资产信息也是绝对的安全
      • 账号随机生成时,在内存中工作生成,因为担心有恶意脚本可以读取内存中的信息,做了对应的随机混淆
      • 因为需要在浏览器中使用,而账号的生成算法是C++写的,所以用WebAssembly转为.wasm文件,后期因为多个 wasm 维护问题,又转为base64使用

    Erc20 代币映射发币 - 独立完成

    • 地址: http://explorer.canonchain.com/#/mapping_log
    • 说明:
      • 用户通过智能合约将 Erc20 Token 转入合约,进行映射
      • 监听 Eth 主网,过滤需要的交易,组装写入 PostgreSql;
      • Nodejs 服务从数据库中筛选合适的数据,自动转入等额的主网币
    • 难点
      • 做 Nodejs 服务时候的,各种异常的处理,写到最后try catch的代码比业务代码还多。
      • infura接口的返回数据,不应该作为精准来源,最好自建一个;

    智能合约开发工具 - 辅助同事完成

    • 地址: studio.canonchain.com
    • 说明:
      • 开发和调试智能合约的工具
      • 主要是协助同事进行项目的开发,提供技术建议
      • 因需要中国和美国等都需要正常访问,静态资源使用了阿里云的全球 CDN

    分布式算力租用 - 辅助同事完成

    • 地址: www.gopekka.com
    • 说明:
      • 基于 Eth Token 的分布式算力租用
      • 独立完成配套的 Pc 端应用,使用 Electron
      • 协助同事进行 Web 项目的开发,提供技术建议
      • 代表项目和又拍云进行项目对接
        • 协商合作的技术实现方案
        • 对定制接口协商内部同事对接
      • 推进项目的进度

    其他

    我在公司内搭建了NPM私服用来储存内部业务的包,公司的npm私服上的通用包,涉及公司敏感信息和隐私,不列出

    其它项目属于公司为别的公司做的定制产品,因涉及公司隐私,不再继续放出。

    卖前端学习教程

    只需几十元,就能买到培训班的内部教程!开启高薪之路!

    零基础小白阿里P7的教程都有!

    同时长期收购所有培训班的前端教程

    目录
    目录