全栈工程师已经过去时,现在是全周期工程师进行时

最近有一个新的名词出现:「全周期工程师」,但看了这张图,似乎并没有那么陌生,因为作为一个正在走上独立开发道路上的我来说,已经很熟悉了。在独立开发的过程中,你不仅仅是一个程序员,你更是一个产品经理,设计师,运维,客服……所以与其说独立开发者是「全栈工程师」,还不如说是「全周期工程师」。

团队开发

这个寒假的前半段在学习准备春招和做自己的独立开发工作,后半段参与了两个团队项目的开发。结合着之前在@一周CP实习的经验谈一谈团队开发

首先是学校同学自发组织的一个开源组织,正在开发这个组织的第一个正式产品(1.0.0版本目前进度已经90%以上)。主要参与者3人,两个后端,一个前端。讲一讲这个团队吧,两个后端都是学长(大四),一个暑假在微博 feed 流实习,一个拿到了华为云 offer。前端是我,客观的说,其实我不是专业写前端的,而且一开始用 vue,我也没有用过,不过我在@一周CP实习的时候写了很多h5,以及之前写过一些 React,所以上手并不难,基本上能跟上后端接口开发的进度。所以这个团队的整体实力还是可以的。所以项目推进的速度达到预期。

在团队开发工具上,我们使用 telegram 进行日常开发的交流,添加了 Github bot 来监听项目仓库的消息。使用 slack 进行一些产品方向上的讨论,分享文档文件。使用 Trello 进行任务管理和分发。使用 Skype 进行远程会议。在工具链上体验也还不错,不过 telegram 和 slack 有一定的重复部分,经常用用这个用用那个。

其次是一个创业团队?一开始我非常犹豫要不要加入,后来的想法是:1. 写 iOS 端巩固和提升一下 iOS 端的业务开发能力 2. 做一些基础设施研发。加入前我先了解一下产品方向和团队的技术能力,产品方向就不说了,个人认为没有太大前景,毕竟是个和成熟产品的竞争品,还在各种模仿,不做太多评价,反正替人办事。再讲讲团队的技术能力,算上我6个人,除我之外用 ABCDE 表示,分工是AB后端,CD安卓,EF iOS。A 和 C 我认识,但技术水平并不了解,A 写过后端和安卓,我看了他的代码和效果,还算不错。B没写过后端。C 我记得见他写过前端 Vue,现在来写安卓,说正在学。D 说写过安卓,好像有代码提交,没怎么看。E 正在休息?正在学 iOS。这个团队的技术能力我觉得评分2分(满分10分)。

工具链?几乎没有,一开始QQ群,微信群满天飞,后来开发用了钉钉,我写了 Coding.net 的监听。每天就稀稀拉拉几条commit消息。工具链评分2分。

讲一个好玩的,写后端的两个人AB,突然有一天看到去了安卓仓库做了提交,A我还可以理解,毕竟有安卓基础,我看了效果超出我的预期,但是B去写我就搞不懂了??分工已经很明确了,还要去插手别人的工作?是自己的任务写完了?还是觉得自己能力很强?我认为两者都不是!简直搞笑

加入项目的时候,还信誓旦旦的说在开学前要发版本?搞笑吧,就这样的团队?就这样的态度?呵呵。负分负分!

感受

和大佬共事是一件愉悦的事

在@一周CP的时候,作为一个经验最少、技术最差的实习生见识了经验丰富、技术宁里也过硬的秋哥,也有没比我大多少但技术能力很强的同事,虽然我很差,但是每天和他们共事我能懂得很多,知识是增长的,是一种很愉悦很享受的过程。

这次和两个学长的合作,也是很愉悦的,和项目有关,后端不仅仅是业务逻辑的实现,还有很多安全上的设计,虽然并没有参与后端的开发,跟着也了解很多知识,同时前端也要在安全设计上配合后端,也不再仅仅是处理逻辑和写界面。

这种和大老共事过程中在知识面和能力上的提升是愉悦的。

但是和那个创业团队中,我觉得我只有一味的在输出,毫无输入,提不起我写代码的兴趣。

Git 机器人提醒

为什么要这样一个机器人,我觉得

  1. 知道别人在做什么
  2. 看见别人的commit就知道别人又在认真工作了,你还不去工作?

Reference

  1. https://medium.com/@eminetto/full-stack-vs-full-cycle-developer-2a454942291b