Contact Me:
Mail: [email protected]
Github: https://github.com/li-yechao
Twitter: https://twitter.com/li_yechao
I'm currently learning English.
目前我在红岭云工作,职位资深前端开发工程师。主要负责 PC 前端和 APP 端框架设计开发,并探索引进前沿技术。
我现在正在寻找一个远程工作机会,如果有兴趣的话可以随时与我联系。主要想做 web3 相关的,或者针对国外项目的(因为想要接触一些国际化环境,学习英语)。
我任职的第二家公司。职位资深前端开发工程师。主要负责 PC(Vue) 管理平台和 App(Uniapp) 跨平台应用的架构设计和开发。
主要经历
我在大学毕业前一年提前进入公司实习。负责公司后端、PC 、App 开发,后端使用 .Net ,PC 端使用 React ,App 使用 React Native 。
主要经历
我很庆幸自己偶然选的专业是计算机,这是我的兴趣所在。
学习经历
Paper,个人笔记应用,这篇主页就是用这个应用写的,用到的技术包括:NodeJS 、Typescript 、GraphQL 、IPFS 、MongoDB 、Flutter 、React 、Lexical 。
该应用一开始基于 IPFS/IPNS 技术来实现去中心化在线笔记本,后来在 IPNS 中遇到一些暂时无法解决的问题,所以自建了一个中心化服务来临时代替 IPNS 的功能,后面找到解决办法再剔除掉中心化服务。
客户端使用 Flutter web 开发,支持 PWA ,用户体验很不错,特别是富文本输入页面的体验做的很好。
Freeform,低代码平台,使用 Zeebe 工作流引擎来支持用户自定义业务逻辑。并且支持自定义 JS 脚本,支持在数据流的各个阶段自定义业务逻辑。
[代码已经遗失] 我曾使用 Rust + RocksDB 实现过一个全文搜索数据库。先把输入文本分词,然后把分词使用 XXHash64 算法计算 Hash ,使用 RocksDB 存储 Hash 和输入文本对应的数据标识。查询的时候把关键分词,计算分词 Hash 然后使用 RocksDB 查询关键词 Hash 对应的数据标识。中间还要处理匹配排序、索引等问题。实现参考了 sonic。
[代码已经遗失] 第一次接触 vscode 的时候就很惊讶于它基于 web 能做出这样好的体验,于是就查阅它的实现方式,最终自己做了一个 web 的文本编辑器。实现的大概原理如下:1. 使用隐藏元素渲染中文和英文字符,测量出它们的尺寸; 2. 设计一个编辑器管理器,里面保存了文本内容(字符串数组,每一个元素代表一行); 3. 渲染器逐行读取文字并创建元素用来渲染; 4. 在编辑器的点击事件中通过点击的坐标加上第一步中测量出的字符尺寸就可以计算出用户点击的字符所在的位置,这样就可以把 cursor 移动到相应的位置; 5. 用户输入或删除时对第二步中的编辑器管理器中的数据进行修改,然后触发更新流程。以上便是实现的大概流程。出于对 VIM 的喜爱,我还做了一个 vim 插件使编辑器支持基础的 vim 的操作方式。
后面我还做了一个基于 xi-editor 并且使用 Flutter 渲染的编辑器,但是只实现了基本的文字输入功能。
我在家里用一个树莓派 + 摄像头搭建了实时监控,软件使用树莓派官方的 libcamera-vid 获取摄像头视频流,使用 Linux 管道输送给 ffmpeg 处理后推流到 NGINX ,NGINX 中使用了 rtmp 模块来做实时推流服务端。这样就能在内网使用 rtmp 播放器实时查看监控了。为了在外网也能访问,我用 zerotier 组建了虚拟局域网,客户端在安装 zerotier 之后也能在外网直接访问家里的监控了。
我自认为我最大的优点就是善于学习,因为我始终对技术保持着浓厚的兴趣。
我也善于解决问题,得益于我对各种技术的日常学习积累,我在项目中遇到的问题一般都能很快想到解决方法。
我还有一点强迫症,对于影响体验的一些问题,我始终会感到不爽。
我现在正在寻找一个远程工作机会,如果有兴趣的话可以随时与我联系。主要想做 web3 相关的,或者针对国外项目的(因为想要接触一些国际化环境,学习英语)。
我的在线简历 https://yechao.xyz
1
maxincai 2022-10-28 12:18:04 +08:00
看您的简历,和我想要找的人比较符合,希望加微信详聊。wx: maxincai
|