关于ONES
深圳复临科技有限公司 (ONES) 成立于 2015 年,是国内领先的企业级研发管理解决方案提供商。ONES 企业级研发管理工具包括项目管理、项目集管理、知识库管理、测试管理、流水线管理、效能管理、工单管理、企业级用户目录等专业研发管理协作工具,产品矩阵贯穿整个研发流程,促进产品、研发、测试、运维等角色的良好协作,提升团队工作效率,保障产品交付质量,帮助企业更好更快发布产品。
关于我
18年毕业之后来到深圳,一直从事服务端后台相关的工作,经过两三年的跌跌撞撞,我在2021年底加入ONES,担任Golang研发工程师,来到这里我似乎真正找到了合适我的工作,浓厚的技术氛围以及团结协作的团队让我充满动力。现在来ONES已经四个月多时间,在这段时间里我主要负责项目管理、Jira导入ONES系统等模块的日常开发工作。在这期间学习到很多新的技术,丰富了自身的技术栈,同时我也做了内部的技术分享,在提升自己的同时也能对团队输出自己的知识储备,让大家共同进步。
入职体验
入职第一天,HR给我们新员工分配了Mac办公电脑,不得不说Mac的确很适合编写程序。类Unix系统能让你本地的环境更接近Linux,之前在Windows中安装Redis,发现官方版本不支持Windows,只能使用微软魔改的Redis版本,这无疑增加了配置环境的负担。
接着会有为期一个月的培训,培训的内容包括:第一周产品考核,第二周程序考核,最后就是投入真实的迭代开发。在这段培训过程中,有专门的导师负责解疑答惑,我会每天跟导师同步当天的学习进度,而导师也十分热心帮助解答,不管是产品上的还是技术上的问题。
工作氛围
ONES当前有300多人,总部在深圳,分部在北上广成都,ONES上下班无需打卡,员工的工作都在ONES产品项目管理中进行,相当于我们使用自家的产品进行工作,我们又是用户,又是产品,这是一件比较有趣的事情。
我们有专业的PM团队,采用工时登记系统,通过员工饱和度合理分配人力资源,让员工有更好的工作体验,并且能保证工作生活平衡。
在这里你能学到
公司在15成立之初就采用Golang作为后端主要编程语言,不得不说这个选择很合理,我们是做SaaS服务的,但除了使用SaaS服务的方式之外,我们还支持私有部署的方式。因为涉及到企业的核心数据,很多企业都需要程序部署到他们的服务器上,而Golang跨平台编译技术比较成熟,编译速度快且操作简单,十分符合私有部署的场景。
除此之外,包括:Mysql、Redis、ElasticSearch、RabbitMQ、ClickHouse、Websocket、GraphQL、K8S、Docker、Migration、Jenkins等等后端技术你都由机会接触到,每个月公司也有技术分享会。
再说说GraphQL这个技术,公司引入GraphQL是一个很大胆的决定,因为现在GraphQL在国内还没有太多的成熟案例,很多人对此的了解仅停留在理论阶段,用编程语言实现GraphQL的增删改查更像摸着石头过河的事情,但我看到在ONES系统中,已经很成熟的使用GraphQL,并以此来作为业务核心支撑,这是值得佩服的事情。
说完后端团队,再介绍一下前端团队,前端使用ReactJS加Antd作为业务支撑,在接触ONES系统之前,我还没使用过比此更复杂的WEB系统,虽然很复杂,但交互体验也很棒,也许做软件做到极致就是这种效果。
我们有专门的技术团队维护UI组件库,而业务团队只需要根据此来做业务开发,这样做的好处是让ONES系统交互达到统一标准,有利于后续的UI升级。同时ONES也有专门的团队负责性能优化的问题,不管是前端还是后端的性能,这样做能让迭代小组的进度保持在可控范围,让我们的产品按时交互。
最后要介绍的就是测试团队,测试团队使用ONES系统中的测试管理来管理用例库、测试计划、测试报告等资料,并在功能测试完成后使用Jmeter进行接口性能测试,保证我们迭代上线的风险可控。
研发流程
在ONES中,一个完整迭代周期往往由以下部分组成:
需求发起->产品设计->产品需求评审->技术方案评审->任务拆分->工时评估->进行研发->codereview->冒烟测试->全量测试->性能测试->产品验收->发布上线
而这个过程中我觉得对研发最重要的一个流程是需求评审,研发过程的顺利程度往往由你对需求的熟悉程度决定,这关系到你的技术方案设计以及排期是否合理的,如果技术方案跑偏了,你需要花更多的时间去纠正,并影响最终的交付时间。
最后
在ONES的体验还是很不错的,现在还有很多研发hc,如果有感兴趣的朋友,欢迎私信内推(^▽^)