一读小说 » 其他小说 » 码农之死 » 第五章 往事 - 资源过剩

第五章 往事 - 资源过剩

    其实李羽白很欣赏贾承孰的求知欲和专业水平,这段时间,他也不掩饰对贾承孰的好感。在上次需求开发结束后,他多次称赞了贾承孰的贡献,包括在张红雷面前也是如此。

    虽然李羽白没做过开发工作,但却是少有的能博得程序员好感的管理者,平时还会说些逗乐的话,也善于自嘲,这让他很接地气。他也知道该说的该做的该夸的,怎么做才能让项目顺利推进。

    接下来的日子大家积极尝试和国外同事熟络起来,所幸对方也有这个意愿,电话会议上经常欢声笑语,你侬我侬,那个莱特也是个幽默的人,发言尤为积极,经常把大家逗乐。

    和莱特他们的会议通常是在中国时间的晚上,这是因为伯纳德的时区夹在了中美之间,如果放在中国时间的早上,对伯纳德就太不友好了。不过这时候贾承孰还没有被添加到会议邀请里,也就只能第二天听听二手消息。有时Joanna一早来到公司会把头晚会议上的趣事转述给贾承孰听,然后捂着嘴呵呵呵地自个先笑个不停。

    有一天,李羽白问贾承孰家里有没有固定电话,在得知贾承孰虽然在租房,但是房东留下了固定电话以后,便又接着问:“我给你找一部笔记本电脑,以后你带着用。晚上有需要加班可以回家工作,而且也可以参加晚上的会议,你看怎么样?”

    虽然说是有加班需要,但贾承孰只听到了有一部笔记本电脑,这是外包员工没有的,他们的工作用电脑都是外包公司统一配置的笨重台式机。再加上晚上可以参加会议,这多多少少让贾承孰感觉自己的身份更接近正式员工,于是赶紧说:“好!”

    转天李羽白便找来了一部二手笔记本电脑,这是某位员工离职或者换领新笔记本电脑后留下来的。虽然不是新机器,但性能还可以,成色也不显旧,这让贾承孰很满意,下班后专门去商场买了一个真正的电脑包,第二天便不再背那个李宁双肩背包了。

    刚开始参加会议,贾承孰并不太听得懂,伯纳德似乎说话总是闭着嘴,乔治则发言简短而且有节奏感,一度让贾承孰怀疑是不是黑人在说唱,两个运维工程师话不太多,倒是那个叫德怀特的经理和莱特的发音让贾承孰觉得熟悉,跟美国大片里的味道比较一致,但贾承孰往往也只能抓住只言片语。

    听不懂的第二天再听李羽白他们说一遍就是,而且Joanna对贾承孰说碰上这样的会议已经非常幸运,隔壁的Java组也要跟上游的国外团队开会,不幸的是那个国外团队里很多印度人,要习惯他们的口音,可要花一番功夫。

    部门再次扩大,负责的系统更多之后,一段时间里反而没有那么多需求要开发,基本上来的都是零零碎碎的小修小补。Joanna便打算抓紧时间了解一下Java代码。尽管伯纳德也给了一些文档,可都是些高层级架构的大概介绍,并没有具体实现方面的。

    Joanna心想毕竟人家是架构师,具体的东西应该问莱特,谁知莱特两手一摊说他也没有,而且据他所知从来也没有过这东西,要了解具体实现的细节,还是需要Joanna自己去读代码。然后他还似有深意的笑了笑,然后说:“很抱歉我们没有这些关于代码细节的文档,不过我想现在我们也许可以开始着手补上这一块。”

    Joanna心里暗暗叫苦,嘴上却说:“是的,也许我们确实应该把这块文档补上。”

    她特意顺着莱特的话强调了‘我们’两个字,然后就不说话了,莱特也就不说什么了。

    两个人的讨论结果是也许应该做点什么,但是没有确定谁去做,什么时候要成果,这等于什么也没讨论,Joanna得到的唯一的结论是没有文档,需要自己去读代码。

    Dono这边倒是没这种问题,贾承孰从来都习惯了没有文档的工作。之前在国企,唯一他见过有质量的文档是项目快结束时给客户准备的用户手册。来到外企,他没见过任何这些Dono应用的文档,也没听说Java组之前在紧急的开发过程中还同步的书写过文档,等到需求开发完,那更是不会有人去在乎文档这种东西。

    而且贾承孰同意一句话,只要代码可读性好,那就不需要文档。他接触过的Dono应用基本都是这样。这不是因为Dono程序员都是好程序员,只不过某种意义上讲,Dono这套工具所产生的应用通常都不会太复杂,开发人员在Dono提供的框架之下会习惯性的把复杂系统划分为多个应用来降低复杂性。而且单个应用里会用到的元素也早已被Dono设计好,前后端划分很清晰,表单用来供用户输入,视图用来展示表单提交后生成的数据,后台代码用来处理表单或者视图上用户提交后需要进行的数据处理之类的复杂操作。既然应用不复杂,在什么元素上该做什么也早已约定俗成,那事情自然就简单。

    而Joanna之前对Dono的稀里糊涂,在Java这好像却不那么明显。她只是靠自己读了些代码去了解程序,不久竟然就可以上手做一些小的代码修改,比如认证之后给用户返回的cookie里的加一个字段之类的。这让贾承孰羡慕她居然这么快就开始在真正的项目里做开发了,也不禁有点疑惑之前她表现出来的对Dono一窍不通是怎么回事?对Dono的不入其门难说究竟是不是有意为之?

    疑惑归疑惑,但现在贾承孰觉得这都无所谓也不重要,毕竟他自己也想逃离。何况在小组里,Joanna跟他关系也挺不错的。

    另一个同事刘强明,这个新来的Dono开发,却表现得有点像张红雷和李羽白。他经常会给贾承孰分配任务,有时候那些细碎的任务甚至会让贾承孰觉得两个人沟通的时间比写代码的时间还长。之前张红雷和李羽白都不是开发人员,事大事小都需要贾承孰来写代码这还可以理解,可刘强明自己就是开发,贾承孰心想有些小小的改动与其花5分钟时间来沟通交给自己,他还不如直接花半分钟改了省事。

    当然这也就是想想,贾承孰也明白如果刘强明事事亲为,自己就会无事可做。

    而美国那个乔治,似乎也愿意做个闲人。晚上开会,问到他的任务进展,他经常会说:“我又改了一下表单上的一个下拉选择框的隐藏条件,然后还需要改一下视图,如果测一下没问题,就可以了提交给用户了。”

    但其实过去的两三天里他一直都在这么说,而国外同事们这时候一般会说:“好的,希望这个修改能尽快测试。”

    就是没人真正去催动他。这也不奇怪,现在不是真正排了计划的需求开发时期,往往只是某个用户提的小要求或者一个无关大雅的优化,改不改都不影响系统正常运行。

    国外的同事见怪不怪,德怀特也不催,李羽白也就不催,不过有时候他会关心一下是不是有什么难点乔治搞不定,需不需要中国同事帮忙一起看一看。这时候乔治倒也不客气,他会马上说:“好的,这样太好了!”

    接着活就甩了过来,李羽白敢问,乔治就敢给,他看起来不太关心工作岗位的安危。后来贾承孰才知道,乔治不是什么说唱的黑人,而是一个临近退休的白人老头,独居,可以说正处于无牵无挂的状态。丢不丢工作对他来说已经不太重要,能开会聊聊天就是他用来人际交往打发时间的消遣。

    作为一个工作到临近退休的Dono开发,乔治当然很难碰到什么搞不定的工作难点,甩过来的活先经过刘强明,再经过贾承孰,往往一两天就能做完。等到会议时乔治听说贾承孰完成了开发,他就会开心地说:“实在太感谢了!”

    然后德怀特和莱特便也跟着表示感谢。

    与乔治不同,那两个运维人员总是出言谨慎,尤其是年长的那个。他对工作状态的更新言简意赅,绝不多透露任何技术细节。而所有Java服务器的配置,所有Java应用的部署,都是他一个人进行。年轻些的那个则让人感觉不太有经验,平常主要负责几个Dono应用服务器的管理工作,而这些还是从年长的那个手里接过来的。

    其实关于Dono的管理工作,贾承孰觉得自己也能做。只要被赋予足够权限,就可以登录Dono的服务器管理界面,那里有与管理相关的各种操作。

    美国组长莱特,听他自我介绍以前曾是个中学人民教师,不知怎么就转型成了程序员。他总是积极地参与每一个话题,无论是Java的还是Dono的,或者是不清晰的需求。技术人员经常会发生对需求理解不一致的情况,这时候莱特总是会站出来发表自己的看法,最后他会说:“当然,这只是我个人的理解。让我来跟对方确认一下,我会在公司聊天工具上直接联系他,并给他发一封邮件,让他在邮件里正式确认。”

    不得不承认他这一套说辞很专业,大家都会表示同意,因为没有比这更好的方法来决定到底谁的理解更正确。

    伯纳德,唯一一个身处欧洲时区的国外同事,相处一段时间以后中国人才知道,原来他也是Dono出身,后来转型到了Java,现在还成了架构师。伯纳德做的方案设计总是充满了细节,Joanna跟贾承孰说:“他连要改哪一个Java类的哪一个方法都写得清清楚楚!”

    其实涉及Dono这边的方案也一样,伯纳德会把每一个需要修改的元素都列得清清楚楚甚至再加上告诉你要改哪一行,要改成什么样,有时候还会给一段伪代码,贾承孰几乎直接复制粘贴就行。

    贾承孰当时回答Joanna说:“英国人,就是严谨!”

    关于架构师到底该做些什么,做到哪一步,在团队工作里参与到什么程度,不同的公司有不同的要求。之前在国企的时候,贾承孰组里的组长就是架构师,他又负责整体设计,又负责沟通需求,又负责疑难攻坚,最后却因为管理不了客户被撤回了公司。在这家外企,伯纳德这种风格的架构师不多见,他更像是组里的组长,就差亲手去写代码了。

    这可能是因为没接到什么复杂需求,一个主要处理登陆和权限的小组,边界也比较清晰,不需要太多外部依赖。否则他应该像公司里大部分典型架构师一样,忙着到处打听哪个应用能提供什么样的接口,或者是跟某个已知接口的团队协商能不能提供更多功能,要么也可能作为被调用的一方与调用方来回讨论接口请求和响应的内容与格式。

    贾承孰也不知道哪些事是标准的架构师该做的。他想,在一套已经成型的系统里,除非有大到足以需要变动架构的需求,否则你能让架构师干些啥呢?伯纳德本身的严谨,和眼下这特殊的时期,可能让他在工作中不自觉地就抓起了本该由开发人员负责的细节。

    抛开伯纳德的工作风格,他从Dono转型Java还成了架构师这件事,着实让贾承孰对自己的未来充满了期待,但却让张红雷又一次觉得失算,这个组的Dono资源实在是显得太过富裕了。

    在张红雷看来,所有的Dono应用都已经清清楚楚放在眼前,而当初以为会频繁地发生改动也是错误的判断。以目前的情形,仅仅是日常维护不需要这么富余的人力资源。

    他找到李羽白,先是同步了几件不相干的事的状态,确认小组内运转正常,接着便看似不经意地问起了Dono这边的情况怎样,李羽白警惕地给了个简短的回答:“Dono这边也挺好的,没出过问题。”

    张红雷接着问:“事情不多吧?”

    这下李羽白心里的猜测确认了六七成,大概明白了领导的想法。

    可李羽白有自己的心思,乔治是个不过一年就要退休的老头,而伯纳德好歹已经挂着架构师的头衔,以后真有要紧的事情而刘强明忙不过来,伯纳德会陪着刘强明一起写代码吗?李羽白知道伯纳德有时已经细致到会给出伪代码的程度,可作为项目经理,张红雷给他的考核里可没有团队成本这一项,那资源当然有备无患,越多越好。只不过每一个资源都需要合理的理由。

    于是李羽白在脑海里把自己的思路略微又过了一遍,便说:“也不能说不多,就是可能做不到每天每个人都有任务,但一周里的大部分时间,咱们这边的人也都是有事情在做的。”

    略微停了停李羽白接着说:“乔治不是也临近退休了吗?我也让刘强明和贾承孰有不明白的就多向乔治请教,争取各方各面都提前弄清楚。”

    提醒完乔治临近退休,李羽白又开始提伯纳德:“当然,伯纳德看起来对Dono这套也挺熟,有时候给的文档里连伪代码都有。就是不知道他是不是对这几个Dono应用都这么熟,以后乔治真离开了,是不是有问题他都能解答。还有他也要负责Java的事情,以后万一两边都忙起来,怕他顾不过来。所以我想着让他俩能多问问就多问问。”

    伯纳德要退休是千真万确,这张红雷知道,李羽白说了这么多是什么意思他也明白了。在他看来李羽白说的这些不能说没有道理,但又觉得有点牵强。他也知道伯纳德是架构师,在公司里大部分,或者说他知道的架构师都不写代码,这也是事实。

    罢了,先放一放吧,现在中国的成本优势还很大,不差这一个人能省出来的。

    多出来的这一个当然是外包人员贾承孰。

    这时候李羽白要留人在组里的原因是利益使然,反正不是自己负担成本,多备一个人更能保障以后项目顺利。万一忙不过来了,鬼才知道什么时候能再招来一个熟手?刘强明是花了多长时间招聘到位的,不知道张红雷忘没忘,李羽白可记得还很清楚。

    这次对话让贾承孰暂时留在了团队,但没过多久一个业务部门用户提出的小问题,让大家都确定,多留一个资源还是有必要的。