Skip to main content

离职记事

·98 words·1 min

2017/12/08 这一天我结束了长达 5 个月的实习生活,又再度回到学校。并不是因为觉得工作环境不好,只是觉得有些事情我需要做完。每日六点半起床,往返三个小时的车程,直线距离将近 32 公里。从炎热的 7 月到寒冷的 12 月。回想起来,竟惊讶自己忍受了这一切

七月,最漫长的一个月。仍记得入职第一天只写了 9 行代码,改了一个小的 API,添加了一个小的返回字段。第一次使用 git 进行团队合作,第一次使用 gitlab,第一次使用 trello,第一次使用 mac 系统,第一次…… 那一天漫长而又煎熬,在那之前我已经将近 9 个月没有写过 web 相关的东西了,将近一年没有碰过 mysql 了。更是第一次使用名为 Django Rest Framework 的东西。在那之后的几天里,由于我那可怜而又可悲的自尊心,我偷偷的将用到的东西记下来,将周围人的谈话记下来,然后在晚上一个个的去 Google。就这样度过了一周,可能是因为我写业务逻辑太菜,所以被调去开发 API Gateway。这对于我是一个新的开始,因为团队里没有一个人之前搞过这东西。从了解 Kong 开始,一点一点的看别人的 blog,了解 Lua,nginx。小心翼翼的去写代码,几乎是写一句便在 lua 的 REPL 中进行验证。不断地摸索,然后测试,然后上线,然后加需求,然后出 bug,然后修复,然后运行到了今天。虽然数了数只有那么几百行代码,但是花费了我整个 7 月。做这个我并不后悔,我仍记得每天早上挤进地铁时,汗水跌落到手机上那一行行文字的样子

八月,最热的月。我开始接触业务开发,熟悉开发的基本流程。从产品需求到代码实现,到与前端交付,到测试。虽然仅仅是完成了一个四六级的微信查分功能,和商城的代金券初步轮廓。我从别人身上偷到了很多的技能。变得慢慢可以提出自己的见解,与技术总监围绕状态机的具体写法互怼

九月,开始搞公司的开源项目,一个基于 GRpc 的 web 框架。又是一个新的开始,虽然技术总监已经写了一个雏形,但是这只是一个理想的雏形。实际上踩了许多的坑,参考别的框架的解决方法,东补西凑终于将它完成。实际上,作为开发者之一,我并不赞同这个框架所秉承的观念。它为开发者做了太多的事情,集成了太多的工具,只需要几行,便可以写出基本的项目。我更喜欢那种不为开发者事前约定好一切,相信开发者自身能力的做法。这个月里,只身一个人去了杭州,参加了 RubyConf,完完全全觉得自己弱爆了

十月,短暂的一个月。黄金周期间回了一趟家,把公司新项目所用的 Orm 文档啃完了。接着为那个 Orm 添砖加瓦。它有了自己的 validator,有了自己的 schema dump。期间又是踩坑,开始的想法是利用每次 migration 文件的 AST 然后不断修正,生成一份 schema。但发现不靠谱,于是去分析三种 Mysql,Postgresql, SQLite 的语法然后生成。但是 Postgresql 是那么的另类,没有 show create table 这样方便的功能。去查看其他 Orm 的实现,最终利用 information_schema 来生成。可是 SQLite 的数据类型又让我犯了难,只好利用数据库注释保留类型信息来 hack 掉

十一月,开始写公司的部署工具。本来是想要用新框架来写,但是前段这段时间是在腾不出手来。只好又用 Flask 来重写。技术总监这时有觉得基于 Gitlab PipeLine 会更好一些。我又开始研究 CI/CD,从 Gitlab 自己提供的说明,到各种 blog 的讲解。一点点摸索,感觉自己成了个半吊子运维

十二月,公司开始准备 kubernetes 进行更高阶的容器编排

没有参与到集群的搭建,我心里还是有一点不甘。可我觉得已经欠下了太多的技术债,书已经堆了好几堆。大部分只是看了几个章节。我需要一点时间来慢慢地消化这些东西,去细究其中的原理

离职,我认为是一个恰当的选择。在我还年轻的时候,我想去做一些只有现在的我才能做到的事情