发布时间:2024-02-27 11: 23: 12
基因测序作为人类探索生命密码的重要手段之一,对生命科学、医学等领域的发展起到巨大推动作用,尤其是随着精准医学时代来临,基因测序被广泛应用于肿瘤诊断和治疗、产前检测、试管婴儿和新生儿检查、遗传病研究等医学领域。
基因测序仪作为生命科学研究和生命产业发展的关键设备,因技术壁垒极高、研发难度极大,多年来一直被国外寡头垄断。
2016年,致力于成为新一代基因测序技术开拓者的齐碳科技,开始向纳米孔基因测序研发的无人区挺进,通过 5 年自主研发,成为目前全球唯二、中国唯一一家成功自主研发出纳米孔基因测序仪并推出商业化产品的高科技公司,填补了我国新一代基因测序技术领域的空白。
“我们每天都在面对很多未知,甚至有时候We don’t know what we don’t know,这种未知性会冲击研发体系,只有足够灵活、可控且高效的研发体系,才能帮助我们加速探索冰山之下未知的基因世界,让测序技术更广泛地造福人类健康事业。”齐碳科技算法总监卓远说。
齐碳科技成为中国纳米孔测序技术先行者的背后,离不开一支国际一流的跨学科研发团队。从 10 人左右的算法软件研发团队开始,齐碳科技就在使用 GitLab 社区版。随着业务需求不断增加,算法和软件面临的定制化开发和快速变更的需求日益增多,团队急需一个能够串联研发流程、功能更加全面且稳定可靠的 DevOps 平台来打破瓶颈。于是,齐碳科技选择了极狐GitLab 专业版 ,开启研发效能提升之旅。
卓远表示:
选择极狐GitLab是自然而然的,作为主流的 DevOps 平台,团队都非常熟悉,无缝衔接大家的使用习惯;另外,我们需要的不止是一个代码管理工具,而倾向于 All in one,在研发链路中拥有一致的研发体验,帮助我们整体提升研发效率和代码质量。
一站式 DevOps 平台|专注研发创新,提升研发效能
在使用极狐GitLab 之前,齐碳科技研发团队通过多个工具组合构建项目管理 + 源代码托管 + CI/CD,并在其上自开发多种服务来应对多课题研究与多场景应用的研发需求。
这种多工具链的组合带来了一些问题:
各个工具的数据结构不同,API 丰富程度不一,工具链集成难度大,稳定性不足;各个工具大多专注于研发流程的某个节点,节点之间流转流畅性较弱;团队需要花费更多时间和精力去维护各个工具,减少了核心业务即产品研发的时间。
极狐GitLab 作为一体化 DevOps 平台,提供开箱即用的 DevOps 能力,无需安装多种工具链,即可直接使用对应工具提供的 DevOps 能力,而且做到了统一用户模型、统一数据存储、统一权限管理和统一用户界面,确保整个研发链路拥有一致的研发体验。
应用极狐GitLab 后,齐碳科技通过极狐GitLab 的项目管理(Milestone、Epic、Issue 等)来完成需求管理、故障管理、任务分析、开发进度追踪等;使用源代码托管实现算法模型管理,文档管理;使用 CI/CD 实现算法团队、软件研发团队的产品自动化交付。这套组合拳帮助齐碳科技建立了一个更清晰的协作平台,让跨团队成员在共同的语言体系下开展工作,减少人工操作失误的同时极大提升研发效能。
如卓远所说:“复杂工具是负担,简单工具才是助力。我们的产品涵盖了生物蛋白、流体芯片、集成电路、人工智能等多个前沿且复杂的专业交叉学科,研发难度本身就很大,无暇去解决工具制造的困难。极狐GitLab 一站式特性让我们不用分散注意力去解决软件问题,可以专注于产品本身的研发,这对我们来说就是非常大的价值。”
Code Review + MR Approve Rules|研发流程标准化,保障代码质量
软件代码是任何一个软件研发团队的核心资产,把准确性和稳定性视为产品核心评定指标的齐碳科技尤其重视软件代码质量,因此研发团队自始至终坚持通过 Code Review ,来保证整体代码质量。
但在使用极狐GitLab 之前,所使用的工具并不能很好的支持团队完成真正的 Code Review,例如每次有代码变更需要合并时,都需要通过人工沟通来找到合适的 Reviewer 。这种 “口口相传” 的沟通协作耗费了时间,也无法形成可以推广落地的 Code Review 规范。
现在通过极狐GitLab Code Review 机制,齐碳科技形成了代码多级审核机制,可以在 MR 中指定多位 Reviewer 来对变更进行审核,每位 Reviewer 会在极狐GitLab 的 To Do List 上看到需要自己 Review 的代码。在代码审核之后,会有对应的 Approver 进行代码合并。
此外,齐碳科技还将单元测试集成到极狐GitLab Merge Request,实现核心特性的单元测试与 Code Review ,并通过 MR Approve Rules 进一步提高代码质量,保障软件可靠性。这种看似复杂的代码准入流程在提高代码质量的同时,并没有增加代码从变更到合入的时间,帮助齐碳科技逐渐形成了规范可行的 Code Review 和 Code Approve 机制,让所有团队和开发人员都获益。
“极狐GitLab Code Review + MR Approve Rules 帮助我们实现了多级审批,固定流程化的审批制度并没有增加我们的时间开销,反而因其标准化,让我们的代码质量大大提升,从而大幅提升研发效能。”齐碳科技软件开发资深工程师李颂说到。
Pipeline as Code|赋能卓越团队,提升端到端能力
齐碳科技在原有的多种工具链之下,受限于所使用工具的特性,与持续交付系统相关的代码只有管理员才能够查阅且修改,团队的其他成员并不知道背后的工作运转,每次有新的改动都需要管理员去操作。
而极狐GitLab 的 CI/CD 是通过配置 yml 文件完成的,很好的实现了 Pipeline as Code,且 .gitlab-ci.yml 文件和代码存储在同一个仓库中,开发人员也可以看到整个交付流程是如何实现的。久而久之,开发人员也具备了编写、修改 CI/CD 的能力。这种变化将 “隐性知识” 变成 “显性知识”,团队成员从 “口头问” 变成了 “自己学”。工具的迭代提升,促进了团队能力的不断升级。
李颂举了个例子:在极狐GitLab 上,最初只配置了基础构建过程,一个团队成员发现 Java Pipeline 过程慢,就添加了依赖库的缓存配置,通过复用上一次 CI 过程中的依赖库,避免重复下载,实现提速。这个改动记录在 .gitlab-ci.yml 里,很快被发现并借鉴到其它项目中。即使内部没有做培训,但是团队成员都已经玩起来了,“只要有一个 Java 工程师掌握了这个能力,其他 Java 工程师就都掌握了这个能力”,李颂说,“团队整体的端到端能力得到了很大的提升。”
极狐GitLab 帮助齐碳科技重塑研发团队的工作方式,助力实现从优秀个人到卓越团队的升级。
开放生态+本土服务|支撑灵活拓展,点燃团队创新能力
通常意义下,All-in-one 的工具链往往会导致灵活性变差,而极狐GitLab 的开放性赋予自身强大的生命力,很好地满足了齐碳科技在横向和纵向上的拓展性需求。
极狐GitLab 现已经与多个第三方平台实现对接,包括 Jira、禅道、ONES、飞书等合作伙伴生态产品,提供更加符合本土用户习惯的工具集;并且,极狐GitLab 沉淀了非常丰富且全面的文档与 API,给用户更多创新、灵活的个性化工具组合空间。
齐碳科技的研发人员充分发挥创新力,结合公司业务需求,玩转极狐GitLab 。例如,齐碳科技研发团队在阅读了相关文档之后,利用极狐GitLab 的 API 和钉钉进行了集成,研发出了工具“GitLab小狐妖”,能够跟踪极狐GitLab 上发生的事件,自定义推送团队关注的信息到钉钉,提升协作效率。
另一方面,极狐GitLab 本土化服务与企业级 SLA,也给到了齐碳科技更好的售后支持与保障。完全本土化的服务团队沟通无障碍,并能够快速响应用户需求,解决使用过程中的问题,真正帮助齐碳科技实现研发效能提速。
人类对基因世界的探索征途才刚刚开始。齐碳科技正全力以赴通过自主研发之路,从根本上改变我国基因测序设备严重依赖进口的现状,以满足生命健康领域对基因测序日益增长的需求。极狐GitLab将与齐碳科技一同解密生命密码,见证基因测序新时代的到来。
展开阅读全文
︾
读者也喜欢这些内容:
gitlab fork和branch区别 gitlab如何把fork同步远端
在现代软件开发中,GitLab作为一个强大的代码管理和协作平台,广泛应用于版本控制、持续集成和持续交付等领域。开发者常常需要使用fork和branch来管理代码版本,理解这两者的区别以及如何同步fork至远端对于团队协作和项目管理至关重要。本文将详细探讨gitlab fork和branch区别 gitlab如何把fork同步远端,并进一步介绍gitlab 同步错误问题,帮助用户更好地利用GitLab进行高效的代码管理。...
阅读全文 >
极狐GitLab17.1重大功能更新发布!支持托管大模型
2024年7月,极狐GitLab 17.1 带着一系列激动人心的更新强势登场。这一版本不仅在敏捷项目管理、源代码托管、CI/CD 及安全合规等方面进行了重大升级,更是为开发者和团队提供了前所未有的便利和安全保障。从大模型仓库的Beta版发布到webhook的审计事件生成,每一项新功能都旨在提升用户体验和工作效率。接下来,让我们一起探索这些创新功能的亮点和实际应用。...
阅读全文 >
gitlab空仓库拒绝推送是什么意思?如何把gitlab的空仓库都找出来?
在现代软件开发中,GitLab作为一款功能强大的代码管理和团队协作工具,被广泛应用于各类开发项目。然而,有时在使用GitLab时,可能会遇到空仓库拒绝推送的情况。这是什么意思?如何把GitLab的空仓库都找出来?本文将详细介绍gitlab空仓库拒绝推送是什么意思?如何把gitlab的空仓库都找出来?并探讨GitLab仓库管理员的用处有哪些。...
阅读全文 >
Devops什么意思 Devops平台是干什么的
DevOps是通过使用版本控制系统(如Git)来管理代码,采用自动化测试来确保代码质量,利用配置管理工具(如Gitlab)来自动化部署和配置环境,以及通过持续集成/持续部署(CI/CD)工具来加速软件的构建、测试和发布过程。接下来,我们学习Devops什么意思, Devops平台是干什么的内容。...
阅读全文 >