Charlie's Resume
3 minute read
简介
昵称:江二十三
邮箱:forcemz@outlook.com
个人博客: https://forcemz.net
Github 主页:https://github.com/fcharlie
Gitee 主页:https://gitee.com/ipvb
开源极客,几个冷门开源项目作者。
前 Gitee 核心开发者,分布式、读写分离架构设计和实施者;Git 专栏《Git 的反思》 作者;国内代码托管行业老兵。
文学爱好者,喜欢滑板,自行车,爬山,刷剧等等。
座右铭:世界上只有一种真正的英雄主义,那就是认识生活的真相后依然爱它
教育
2010.09 ~ 2014.06 本科 湘南学院 计算机系 通信工程
工作经验
2014.06 ~ 2020.04 Gitee
2014.06 ~ 2020.04 深圳市奥思网络科技有限公司(开源中国),Gitee 团队核心工程师,主要负责 Gitee 基础架构设计和开发, Git 基础软件开发,服务器软件开发。
- 实现 Gitee 代码托管平台的 Subversion(SVN)接入,国内第一家。
- 从事 GIT 基础服务开发,包括不限于分布式架构,实用工具等。
- 开发了 svnsbz, 即 svn:// 协议动态代理服务器,支持实时监测并加载黑名单(基于 Linux iNotify)。
- 开发了 Git 分布式前端,NGINX 模块,核心路由模块,核心路由库实现了 O1 高效路由缓存,支持域名解析,内部 DNS 缓存以及实时 DNS。
- 开发了 Git 分布式核心服务 git-srv,并实现了 分布式版本的 git-upload-pack git-receive-pack git-upload-pack。
- 开发了 Git 协议服务器 git-daemon 基于 Boost.Asio,分布式版本后端与 git-srv 通信。
- 开发了 Aton API 服务器,支持 git 同步,创建存储库,分布式基础服务状态检查。
- 开发了 Git 同步服务 git-diamond,即 git-daemon 内部版本。
- 开发了 Aquila Git HTTP Server 基于 .Net Core,HTTP 服务使用 Asp.Net Core 的 Kestrel。
- 开发了 Git HTTP 服务器 - Brzo,基于 Boost.Asio 实现,速度超过一般的 Git HTTP 服务器实现,支持平滑重启。
- 开发了 Git Analyze 工具,这些工具能够检测大文件回滚历史,嫁接分支等。
- 开发了 Moseo Git LFS 服务器,支持 SSH 验证,基于 cpprestsdk。
- 基于 PowerShell™ Core 开发了 Git 存储库加密工具, git-secure,使用 AES 256 加密。
- 基于 Go 开发了 Git SSH 服务器分布式版,Git HTTP/SSH/Git 服务器私有化部署版。其中 HTTP 服务器整合了 Git VFS 功能。
- 开发了 基于 libgit2 的 Git VFS (VFSforGit) 服务器支持程序。
- 基于 Nginx round robin 模块重新实现了 Nginx 路由模块。
- 码云 Git 的 Git/HTTP/SSH 协议对 Git Wire Protocol 的支持。
- 基于 libssh 实现 sserver 对 svn+ssh 的支持,亦基于 Go 实现了 ssh 服务器支持 sserver。
- 基于 Go 开发了新版 LFS 服务器,LFS 对象存储在对象存储上,支持阿里云,Azure, AWS S3, 腾讯云。
- 基于 Go 开发了本地存储的 LFS 服务器,目前 Gitee 使用的是这种。
- 负责码云分布式存储架构变更设计和编码实现。
- 基于 libgit2 开发了基于 git namespace 快照的企业存储库快照备份方案。
- Git 原生钩子支持大文件检测,存储库分析,分支权限管理,git 只读文件功能,git 禁止推送暴露用户私有邮箱,以及存储库响应式同步机制。
- 基于 Go 开发的 Blaze, Git GC, 备份,存储库体积分析后台任务服务。
- Gitee 存储路由架构改造。并基于 Golang 编写了验证服务 Banjo 将基础服务验证 API 独立出来。
- 基于 Go 开发了 blaze-archive Git archive 扩展工具,支持 archive 缓存,支持
tar.br
,tar.zst
,tar.xz
,tar.sz
等压缩格式。 - 设计和实现了 Gitee 存储库读写分离方案 RONE/RIME。
Git-Secure 开源地址 https://gitee.com/oscstudio/git-secure
Git-Analyze 开源地址 https://gitee.com/oscstudio/git-analyze
2020-05 ~ 至今 腾云扣钉
2020-05 ~ 至今 腾云扣钉(腾讯云全资子公司),高级后端开发工程师。
- 负责代码扫描(CodeDog)接入架构设计,保证其在公有云安全信息安全,计算资源需求弹性化,负责代码扫描能力增强,集成多种开源代码分析工具提高扫描能力。
- 解决了代码托管 Subversion 目录权限功能缺陷。
- 负责设计代码托管系统高可用架构并实施和上线。
- 负责代码托管功能补全包括不限于代码语言分析,代码推送记录分析等功能。
- 负责设计和实施代码托管读级别目录权限控制,该特性暂无国内外友商(包括 Github/Gitlab/Gitee/Bitbucket 等等)实施。
技能
擅长语言:
- C
- C++
- Go
- C#
- PowerShell
- Java
- D
- Perl
- Shell
- Python(不太喜欢)
- Makefile
- Ruby(不太喜欢)
相应操作系统研究方向:
- Linux ,多线程,多进程,网络编程。
- Windows Win32 GUI 开发,以及命令行开发。
- FreeBSD
- ReactOS 内核研究
- Minix
- Hurd
- Haiku
技术领域:
- Windows 系统编程
- Linux 系统编程
- 文件的压缩解压
- Windows 权限管理
- 文件特征的分析
个人作品
博客站点 https://forcemz.net/
作品 | 源码地址 | 描述 |
---|---|---|
Baulk | github.com/baulk/baulk | 基于 C++20 的极简 Windows 绿色包管理器 |
Privexec | github.com/M2Team/Privexec | Windows 运行特定权限工具 支持 System,TrustedInstaller 提权 支持 UAC 降权,启动低完整性权限进程,启动 AppContainer 进程 包含 Privexec,AppExec,wsudo wsudo 能够一定程度上模拟 sudo |
Bela | github.com/fcharlie/bela | 基于 C++20 开发的 Windows 系统功能库 |
BelaUtils | github.com/fcharlie/BelaUtils | 基于 Bela 重写的 PEAnalyzer/Krycekium 等 |
Bali | github.com/balibuild/bali | 基于 Golang 的 Golang 构建打包工具,能够创建 STGZ 安装包和嵌入 Windows 应用程序清单,图标版本等 |
Buna | github.com/fcharlie/buna | 从 Golang debug 模块 fork 过来的增强的可执行文件格式分析库 |
Clangbuilder | github.com/fstudio/clangbuilder | 基于 PowerShell 的 LLVM 自动构建工具集 |
TunnelSSH | github.com/balibuild/tunnelssh | 一个机智的 SSH 客户端 |
wincurl | github.com/fcharlie/wincurl | cURL for Windows 构建脚本,使用 MSVC 编译器 |
iBurnMgr | github.com/fcharlie/iBurnMgr | 基于 Direct2D 开发的 USB 启动盘制作软件。 |
Krycekium | github.com/fcharlie/Krycekium | 基于 Msi API 编写的 .msi 安装包解压工具,用于提取制作绿色软件 |
Kismet | WIN32: github.com/fcharlie/Kismet UWP: github.com/fcharlie/KismetUWP |
基于 RHash 编写 Hash 计算工具,支持 MD5,SHA1 SHA1DC,SHA2,SHA3 |
Ginkgo | github.com/fstudio/Ginkgo | 基于 WPF 开发的 Metro 风格 Batch 编辑器 |
whois | github.com/fcharlie/whois | Windows 平台 whois 实现 (基于 C++17 WSAPoll) |
PE Analyzer | github.com/fcharlie/PEAnalyzer | 基于 C++ & Direct2D 开发的 PE 分析软件 能够解析 PE 文件依赖 |
MsysLauncher | github.com/fcharlie/msys2-launcher | MSYS2 运行环境启动器 |
WiFiAssistant | github.com/fcharlie/WiFiAssistant | Windows 平台 WiFi 无线承载网络开启助手 |
Planck | github.com/fcharlie/Planck | 基于魔数和文件头的文件分析工具(库) |
Angelo | github.com/fcharlie/Angelo | 基于 AspNet Core 编写的跨平台 git http 服务 |
开源参与
本人积极参与开源项目,目前参与贡献的其他开源项目有:
- Windows Terminal
- git
- vcpkg
- libgit2
- parallel-hashmap
- cpptoml
- git-http-backend(golang)
- git-for-windows
- archiver
- minizip
- libzip
- 7-Zip-zstd
活动
- 2016 年作为讲师参与 Ubuntu Kylin 16.04 发布活动。
- 2018 年作为讲师参与 Ubuntu Kylin 18.04 发布活动。
I feedback.
Let me know what you think of this article on twitter @sinopre!
Let me know what you think of this article on twitter @sinopre!