我是一个程序员

good

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。 P8

曾担任嵌入式工程师、后端开发工程师、数据开发工程师,以及算法工程师……用技术的方式解决现实世界的问题,是他多年来所追求并坚持的目标与方法。 P10

当我想到每年都有无数和当年的我一样,在试图进行自己的职业选择时,因为缺少对于“工作”的充分认知,连自己要选择的是什么都不知道,就更不要提该怎么选择了。 P11

原因有两个:一是介绍技术这件事,本身就缩小了受众群体,也同样偏离了我的写作目的。 P12

”“请跟我来。 P14

那年,目标达成。 P15

后来,我不时地对放弃工作转而选择来读研的这个决定持怀疑态度:那可是国内最大的通信公司的Offer,我放弃了它,而选择了一家在业内并没什么突出业绩的小研究院,为的只是获取一个硕士学历。 P16

其实她也没有刻意去讲什么人生哲理,只是讲了讲她的故事,以及她的同学后来都在干什么。 P17

”我对自己默默地讲。 P18

大部分题目我都答了出来,一部分题目我明确知道见过问题中的概念,但对太过细节的东西还是没掌握牢靠。 P19

心里是不敢奢求能收到A公司的Offer的,毕竟,人家是大公司,我以前从事的工作也不是互联网相关的工作,它可以有一百个理由不发我Offer。 P20

从事行政的女士熟练地把工卡放在感应器上,刷开了一扇很大的玻璃门,我紧紧跟在后面,终于走进了这家费了老大劲才挤进来的公司。 P21

”我默默地想。 P22

我所在的部门,是个研发团队,大部分都是技术人员。 P23

我是团队的负责人海布。 P24

”立刚也站起身来:“欢迎你,以后多多切磋。 P25

不过这对我影响不大,如果给我一个Mac,我拿到手要做的第一件事一定是装上虚拟机,然后再装个Windows操作系统……除笔记本外,他在自己右前方还立了一台近30寸的显示器,笔记本上应该是某种IDE(集成开发环境)的界面,显示器布局则是黑底,并且只显示命令行及输出内容,那应该是与服务器的交互界面。 P26

嗯,这应该是位产品经理。 P27

”大Boss,终于见到了。 P28

那应该是可以下班了。 P29

对于在工作中用什么工具可以让工作更高效、掌握什么知识可以长期受益,就如同一个资深演讲家一样,说起这些东西滔滔不绝。 P30

”立刚是一个逻辑性很强的人,讲得行云流水,极具感染力。 P31

要交接的项目是一个爬虫项目,并不是一个后端Web服务。 P32

这份文档确实不算是“正规”文档:虽然也有总体设计的框图,但图形也仅有方形和圆形两种形状,图形颜色也一律是默认的淡蓝色,图形之间的关系也只用了一种箭头样式来表示。 P33

正在盯着看,开睿好像也注意到了我的疑惑,问:“这块有什么问题吗?”“嗯,这个参数是什么意思?”“这个啊,是请求数据时需要的cookie信息。 P34

“代码的SVN地址我一会发你,还有什么问题没有?”我看了看小本本上的一小堆问号,脑子里还想着刚刚开睿讲的代码逻辑。 P35

”我打开本子,腾出新的一页,把这几个概念又重新誊写了一遍,准备抽个时间再去问问开睿。 P36

有些代码虽然写在前面,但想知道这块代码的含义,读过后面的几个模块才能理解得更加清晰;有些代码只使用过一次,本可以直接写成大的代码段,但封装成一个接口、函数或者类,就成了一个构件,换个项目也可以使用;有些代码,看起来很不必要地嵌套了好几层封装,但研究起来才发现,在编写或者修改一个函数或者类时,这样的设计可以让我们不用关注其他函数或者类的调用和依赖关系,节约了宝贵的“大脑资源”……把这些一一参透,慢慢也就了解了开睿当时在写这段代码时的一些想法,一方面觉得开睿的技术水平确实了得;另一方面,也因为真正了解了写这些代码时的思想,感到了一丝丝的成就感。 P37

立刚紧接着说:“你不仅要看同事的代码,还要多看一看优秀的开源代码。 P38

”然后,他转身对赫雅说:“这位是这个项目的新的开发同学,途索。 P39

想到这儿,我回答:“一天吧。 P40

上线吧。 P41

就这样,七点起床,半小时洗漱,再加上一个半钟头的地铁,差不多九点我就可以到公司了。 P42

立刚也来了,刚坐下,就抱怨了两声:“今天地铁人太多了,全北京的人都出来坐地铁了吧!”我没好意思提醒他透过窗户看看外面水泄不通的马路……虽然同事们差不多都到了,不过有那么一段时间,是没有上班的氛围的:有同事刷着新闻,有同事看着股票,有同事逛着论坛,还有我右前方那位,在摆弄自己的小多肉……这样过了十几分钟,节奏逐渐紧张起来,才算是进入到工作的节奏了。 P43

一想到中午与同事一起出去吃饭,得想话题沟通交流,就有些内心的不适感。 P44

冷烨给我简单地做了介绍,一个叫乎克,另一个叫俊崖,他们都有六七年的工作经历了。 P45

如果此时中断了手里的工作,去吃个饭;或者,被某些人打断,问了个问题……那么,当前这个时间段的东西(很有可能包括之前时间段所建立起的逻辑基础)全都土崩瓦解。 P46

这个“很多人”究竟有多少……嗯,不少……有段时间我特别想知道,是不是所有加班的同事都在写代码,为此还在几个办公区转了好几圈,发现加班做什么的都有:有在写代码的,有开会接着讨论问题的,有在看各种文档的,有利用这段时间学习的。 P47

当然,产品经理也是少不了的。 P48

我们几个交流分工的时间不长,也许就20分钟吧。 P49

于是,我开始沉下心思,一边思考着业务功能和数据依赖,一边开始设计模块。 P50

虽然隐隐感觉到这样是得不偿失的,但看着呼哈那急切的眼神,此时的我也想不出什么更好的理由来为一种不确定性冒险。 P51

其实之前我也想到过这么做,不过做得比较潦草,很多时候想到“这命令以后不会再用了吧”就没有去记。 P52

我高中班主任说我性子里透露着一点“急”,可能这也是没有大局观,只知道先做当前看起来似乎更快的事的一种幼稚表现了。 P53

把代码写成“大片大片”的样子虽然看似写着轻松(其实并不是),要是修改起来,会是一番令人难忘的痛苦体验……幸亏,刚写完不久,还记得住哪块代码代表哪块功能。 P54

”此刻,一种从未体验过的兴奋感与成就感遍布全身。 P55

大概进入A公司半年的时候,我被安排做一个公网服务的后端开发。 P56

赫雅是一个做事很有条理的人,从她开始阐述需求的时候就不难得出这一结论。 P57

很多时候,为了方便流程后面的同学可以早点开发,流程靠前的同学会先做一份假数据或者假接口,或者直接以文档的形式将数据格式或者接口样式固定下来,这样虽然让流程靠前的同学有了一些额外的工作,但可以有效减少整体的工期。 P58

当然,即使是一个人不关注细节,仅考虑以上所有所谓的“高层设计”,把以上每个方面都做好,也是极其辛苦的。 P59

我们每个人把计划做好,赫雅按照排期表一一盯对每个人的进度是否与预期一致。 P60

果然,理清脉络以后,写代码也迅速了好多。 P61

这也只能在经历了这些,才能深深感受得到。 P62

比如,在设计一个后台信息传输接口时,后端程序员发现了一个可能引起用户隐私数据泄露的需求项,此时,就需要将隐患同步给产品经理或安全专家,对该需求项进行调整和更新。 P63

如果哪个领导定下一个KPI,把测试检查出来的Bug数量作为测试同学的KPI收益项,同时又作为开发人员的KPI损失项,那这个过程必然会节外生枝,搞出不少扯皮的事儿。 P64

具体在项目里采用哪种测试策略,这是由测试人员决定的。 P65

一个项目,可能会有很多的测试人员参与,比如,我们这个项目里,就有三个测试人员:一个前端测试、一个应用端测试、一个数据服务端的测试。 P66

除了对正在运行的系统进行监控,运维人员还可以决定线上程序运行的最基本原则与策略:是用虚拟机还是物理机?是否需要域名?如何进行动态扩容?如何针对各种线上程序进行最恰当的机器与配置选型?这些都是运维人员需要考虑的。 P67

各行各业的与众不同之处,也反映了各个行业工作本身的特点。 P68

技术,是完成一件产品所需要的知识和方法;业务,是各行各业内需要解决的具体问题。 P69

从更宏观的角度来讲,业务的提出,是为了解决人们生产生活中的各种问题,或者提升人们生产生活中的效率,满足人们的各种生产需求、生活需求、心理需求等。 P70

比如,高跟鞋最早被发明,是法王路易十四为了让自己显得更高大,并且骑马更方便,但后来却演变成了天下爱美女士的标配;空调的发明,本是为了降低工厂厂房的温度,后来却走进千家万户;GPU的发明是用来做图形渲染计算的,结果后来机器学习发展起来,GPU被大范围用在机器学习和深度学习计算……业务会驱动技术进步,这属于我们意料之中的发展;但技术也会丰富业务的维度与思路,这就属于我们意料之外的惊喜了。 P71

A公司营利能力虽然还不错,不过我们这个部门,貌似不用考虑太多利润方面的东西,我们要考虑的,就是怎么把用户“伺候”好。 P72

但真正经历过了几个项目,才知道产品经理的职位是多么重要。 P73

2.将需求进行有序、精细的组织和管理,同样是产品经理必备的技能 在此过程中,我们还要及时发现点与点之间的约束和影响。 P74

当然,这个决定不是随随便便就可以做出来的,做这个决定,不仅要考虑各个专业领域内的专业人士的意见和与意见匹配的原因,还要考虑这个决定对整个项目的整体影响,甚至,还要考虑很多像社会心理学、经济学等更开放的学科知识……一个合格的产品经理,一定是一个敢做敢当的人,这一点,毫无疑问。 P75

很多的程序员在刚刚接触技术时,并不是从“为了解决什么问题”的角度来学习技术,而是受了某种影响,觉得什么技术有用,就以“这个技术能干什么”的角度去学习技术,一旦发现某种自己会的技术能做一件很多人做不了的事,不管有什么用,技术人总是觉得很酷、很过瘾。 P76

所以,只要在“努力解决问题”这一大前提上达成一致,需求沟通的过程,其实并不存在什么大问题。 P77

顶层设计的思维方式,是指把整个项目的各个因素,包括业务需求、开发测试、运营维护等,都当作一个个的子模块,产品经理需要做的,是将这些子模块进行总体设计,以求项目各方收益的和达到最大化。 P78

当然,并不是所有的产品经理都能做到上面说到的那些,这也是大多数互联网公司的现实。 P79

与“老板”的亲密接触转眼间,进入A公司已经八个月了。 P80

和部门主管如风的直接接触不算多,不过平时总见他这儿跑跑,那儿跑跑,跟各个组长聊聊业务,聊聊方案。 P81

如风还说,作为校招生,现在的主动决策能力还有限,最现实的,就是把被安排的活儿做到最好,等自己成长了,再反哺团队和项目,在项目本身的作用和自己的贡献两方面都有最积极的结果。 P82

他们的回答和表现,让我终于明白了所谓的“节外生枝”。 P83

虽然我并不是特别热衷做这玩意,但为了完成课程,为了拿到学分,也为了高分,我又非常努力地完成每一个演讲展示。 P84

”“QPS为什么这么小?”“因为考虑到是个内网使用的场景,所以QPS应该也不会太高。 P85

被问得灰头土脸的我又开始了所谓的“表演”,只不过,接下来的工作阐述中结巴了好几次。 P86

”“具体是怎么实现的?”如风追问道。 P87

现在的处理流是在单个服务器上运行的,分布式的处理方法应该会大大提升效率。 P88

想了想这,又想起如风刚问的关于分布式的问题,深呼一口气:“分布式框架我之前只是听说过,还没有用过。 P89

如风首先指出了我的优点:热情高、干劲足、潜力大。 P90

而在如风的管理下,这些所谓的过来人的职场技能是发挥不了作用的。 P91

撞衫的还特别多,仔细一看,撞衫的各种T里,印有公司Logo的占了绝大多数。 P92

看着她们忙前忙后,不时有说有笑的样子,想必是两枚性格比较开朗的妹子。 P93

考虑到两天的时间不短,而且有像爬山、泡温泉等活动,我带了常用洗漱用品、防晒、墨镜、泳衣泳裤、换洗衣服等,东西不算很多,一个双肩包就可以搞定。 P94

哈哈。 P95

他搬来烧烤要用的架子、木炭、铁夹等,配合上小雨她们准备的竹签子、蘸料和各种好吃的东西,万事俱备。 P96

”“我是太原的。 P97

”引得刚才开玩笑的仁兄不好意思地吐吐舌头。 P98

第二天,五点钟天就开始泛亮了,看起来将会是一个晴朗又不是很炎热的好天气。 P99

每次团建,都会拍一张大合影,这个自不便说。 P100

看我们这拨其他五个人没有休息的意思,我决定还是认怂了,我要休息会。 P101

我们这大部队,大多数人红扑扑的脸,还透露一种“终于到了”的喜悦感。 P102

主要的活动算是结束了,剩下的就是自由活动的时间。 P103

因为要共同分得一份蛋糕,大家不得不为利益而竞争;同时,要把蛋糕做大,大家又必须团结与合作起来。 P104

技术分享造就的精彩从我所接触过的各种职业来看,从没见过哪种工作,要比当一个程序员对自己所掌握知识的折旧速度感到如此无奈的。 P105

程序员都知道,光学了语法或者接口,根本不能叫学会了,所以,还得抽出时间来做些小项目,做些小东西。 P106

老办法,上网搜,看教程。 P107

这样,技术分享活动就这样搞了起来。 P108

每次分享结束,也总会有一拨人,拿着刚做的笔记,围着分享者交流一些技术细节和业务的相关问题,而大多数人,此时则直奔工位,或者再加一会班等着过了九点打个“加班快车”,或者收拾东西,直接下班。 P109

同时,分享一期一期地进行,在一个部门范围内,所涉及领域内的干货也随着时间一点一点被分享,相应的“专家”也越来越少,而业务很少有爆发式的增长……就这样,活动进行了大约半年多,部门级别的分享活动便偃旗息鼓了。 P110

大咖的分享自不必说,看那阵容,都是部门Leader级的水平,分享的水平与干货自不必说。 P111

不知道谁做了决定,活动进行了一个月就停止了。 P112

参加了几次分享,场地有在专门的创客园区的,也有在公司的大会议室的,还有酒店的宴会厅的……也不知道这些负责组织活动的团体是怎么协调的资源,在我这样不擅长组织活动的人眼里,能搞来这些地方来用的能力还是很让人佩服的。 P113

后来我想,这可能跟这类工作的性质有关:大数据算法和人工智能这类领域,最影响最终结果的因素,就是数据本身了,只要我不把数据拷贝给你,说得再多,只要数据有些差别,你也不容易用起来。 P114

咳,实力有限,还是一点一点积累吧。 P115

”“得了吧,根本不信。 P116

看着屋子里十几个人,大多数人还是很眼熟的:一部分是平时一起打交道的、性格比较外向的产品经理;一部分是之前与我一起参加新人入职培训的“同届生”;还有少部分是很少打交道的稍微陌生一些的面孔,但也不是非常陌生,印象里还是知道在哪里见过他们的。 P117

比如,我所在的技术部,就是这个所谓的“二级子部门”。 P118

虽然不是专业的演员,但看大伙这认真的劲头,还是挺有一个演员范儿的。 P119

今年当然也少不了,前端技术团队改编了那首《感觉身体被掏空》,把歌中的“朝阳公园”换成了公司大厦的名字;把歌词里的“老板大卫”,换成了我们的总裁名字……倒是加班这一部分没改动,或许天下的加班都一样能引起大家共鸣吧。 P120

3.黑竞争对手的 把竞争对手放在自己节目里调侃一番,也是一种年会的常见伎俩。 P121

5.靠实力真唱的 年会上总有一些人,是有“真才实学”的。 P122

这次年会抽奖分成了四个等级的奖:三等奖、二等奖、一等奖、特等奖。 P123

被挑中的天选之子,哦不,天选之女,可以说是喜极而泣,这概率已经无法让人克制了。 P124

总裁会重点说说公司的现状和公司竞争对手的状况,并且把二者进行对比。 P125

要拿这个奖项不靠运气,单靠上一年的成绩。 P126

每天维护一些项目,或者给产品经理导一些数据出来,再就是找些技术资料和论文,进行学习。 P127

为此,爸妈没少批评我,说我好不容易回趟家,还每天都玩手机。 P128

当然,我也一如往常地厚着脸皮,滚在沙发上耍耍赖,或者借买烟的名义多买包薯片一块儿“报销”。 P129

大同这座城市的名字里虽然带了一个“大”,但它仍旧是个三四线的小城市。 P130

所以,我把这权当是温习架构知识了。 P131

我几个哥哥姐姐,则把更多提问的重点放在一些工作和生活的细节上,比如“你们这个行业用了哪些技术?”“互联网行业这么火,在我们这领域有什么成熟的应用没?”“在北京都玩些什么?”“平时除了上班还会干些什么?”。 P132

此时的同学聚会,或者是很难凑齐人,一个班60多个人,能凑齐1/3已实属不易;或者很多时候大家选择了分拨聚会,只与上学时关系较好的朋友聚上一天或者半天。 P133

也不知道如今的小朋友能不能感觉到什么是年味,在他们的眼里,这种年味是浓或是淡呢?记得以前,我是比较烦过年时候见亲戚或者朋友时很多固定套路的问题的,那时觉得这些问题有什么意义呢?我自己的事情告诉大家又有什么用呢?而随着一年一年过去,尤其在工作之后,我反而还比较期待能回家轻轻松松地与这些问题过过招。 P134

有一段时间,我就处于这种清闲状态。 P135

而大佬们刚开完会,我就找到了海布,这也就是海布会如此迅速能给我找着活儿的原因了。 P136

我已经迫不及待想赶紧把东西放到宾馆,先到海滩上逛上一糟了。 P137

楼内与楼外相似的年代感,打消了我们对于客户“高大形象”的最后一丝期冀:楼道空间狭小,用于采光的窗子也格外袖珍;墙壁是非常传统的白色粉刷墙,可能是时间也比较久了,白色也不显得鲜亮;地面是用我小时候非常常见的搪瓷砖铺成的,砖与砖之间的缝隙很宽,之间的污物格外突出;每层楼都由一个大点的办公区和数个小的办公室构成,一层还有一个大一点的会议室。 P138

对你们来说很简单吧?”“表的格式有要求吗?如果内容项太多了怎么显示?这边让操作员自己填写的信息都应该包括什么?”产品经理问。 P139

”“哈哈哈。 P140

”“这些不应该给操作员看的,我之前就说过。 P141

产品经理接到通知说周五有领导想提前看一下成品的样子,这也在无形中给我们这个臆想中的半成品定了截止日期。 P142

不出意料,没过多久,我们便开始接受来自领导的“教育”了。 P143

按照新需求再做一遍,需要更多的时间。 P144

产品经理开始介绍这个系统怎么操作,有什么功能,怎么用。 P145

修养的事以后再谈吧,反正我是知道了,出差真没那么有闲情,至少对程序员是这样的。 P146

我也不会有什么意见,大家都是为了工作嘛。 P147

立刚的离职流程走了将近一个月,他在公司的最后一天,我请他吃了个饭,以表达我对他的感谢。 P148

当然,这些也是我的猜测。 P149

“你好,很高兴认识你。 P150

几乎九成以上的猎头,不管聊得如何,都会把“加微信”作为保持继续联络的手段。 P151

这是我当面见到的第一个猎头,她叫Mindy,看样子与我差不多大小,但穿着非常齐整和成熟:一件卡其色的风、,一条黑色的西裤、一双略带跟的小巧皮鞋,给人一种非常职业的感觉。 P152

Mindy: 嗯,早听说你们公司工作强度大了,但这对像你这样的工作年限还不够长的程序员来讲,成长的机会也会很多,总的来说是不错的。 P153

这个猎头到底也是懂些技术的。 P154

”听完我的疑问,Mindy加快了咀嚼口中食物的速度,喝了一大口水,看样子她应该有所放松了,显得自然一些。 P155

所以他们一听是猎头联系,就觉得:这家伙又是来忽悠人跳槽的,我要是通过你来找工作,是给你面子。 P156

英雄无用武之地,这是很多职场人都会遇到的问题,我们工作的初衷,就是告诉这些优秀的人才,他们的本领和知识是可以用在刀刃上的。 P157

但和HR比起来,我们更有优势,HR有的仅是自己公司的职位,我们接触的职位更多,面儿也更广,候选人可以从我们这里得到各种各样的职位信息并进行比较,能得到专业猎头的分析服务。 P158

你知道吗?我上次接触了一个程序员,特别直接,特别逗。 P159

感觉这些人做事都可以独当一面,而不是让干什么就只干什么。 P160

她当时刚毕业一个月,是个刚入猎场的新猎头。 P161

我: 哇,你好上心啊。 P162

这不禁让我想起一个大佬说过的话:知道自己不知道什么是幸运的,不知道自己不知道什么,才是痛苦的。 P163

“四是互联网公司里的薪酬福利、工作环境和加班氛围等。 P164

或许这也是我们这个国家比较普遍的状态,在缺乏兴趣引导的教育环境下,大多数毕业生的职业选择往往缺乏目标和方向,半推半就与随波逐流之间,很多人便以一种莫名其妙的方式开始了日复一日的1/3人生。 P165

我: 是嘛?那我也来一个。 P166

Grace: 那你平时除了读书,还干什么呢?当然,除了写代码。 P167

我: 我还以为你就客套客套,还是想放长线、钓大鱼呢。 P168

再后来就去应聘一家做互联网教育的公司,当销售助理。 P169

加了他的微信后,他会不时地发我一些工作JD,我猜他是一方面想刷下存在感,另一方面也想让我在有找工作的想法时能第一时间想到他。 P170

不过他说得倒是挺全面的,涉及的公司和职位相比较而言也更多、更丰富一些,看样子是做了很多功课。 P171

那个时候真把这事儿想简单了,觉得只要进了一家猎头公司,拿到了公司职位和候选人信息,打电话沟通不就完了吗?所以,我那会就尝试着面了几家猎头公司,被这家公司录用了。 P172

当猎头压力大,干你们程序员这一行压力也大,北京这地儿看着高大上,但大多数人还是处于奋斗中的阶段。 P173

我是一个程序员 计算机与互联网电子书 第2张

至于这样的摩擦是怎样让法律进步的,就不是我这样一个程序员可以给出答案的了。 P174

”“你这个手感还是差点,要是键冒再弯曲一点,就好很多。 P175

找一个人生伴侣,就得找个喜欢的。 P176

以前我常开她玩笑,比如我说过的这么一个段子:“从前有个姑娘叫紫霞,后来她吃饭咬了舌头,就成了芷霞”。 P177

”我赶忙道歉。 P178

那现在咋办?”芷霞诡秘地一笑:“就知道你会这样。 P179

”“你记得结账啊,我可不想听我朋友说最后是AA的。 P180

“不,坐地铁过来的。 P181

“那你们平时工作都忙吧?”她接着问。 P182

“对了,你喜欢你的工作吗?”这句话是我问的。 P183

谁知,电话一接通,直接迎来了芷霞的一通大骂:“你这个蠢货都说了什么!”因为巨大的心理落差,我有点蒙。 P184

我就给她分析分析……芷霞: 途索,你给我听着,这种事情我只说一次!人家女孩子跟你聊手机,聊视频,并不在意这个玩意儿怎么做的,你这个时候应该顺着这个话柄,去聊些更有营养的东西,不要老碎念念你的什么U……我: CPU,其实也不能完全说是CPU……芷霞: Stop!这个重要嘛!人家都说了视频节目,你就不能顺着话题讲讲和这些节目相关的生活情节嘛?就算没有,你不会编嘛?还有,人家女孩子说自己不顺利的事儿,不是让你去“发现问题,解决问题”的,人家比你方法多多了。 P186

最后,她说可能是因为你不太喜欢她。 P187

此外,我还自以为是、自欺欺人,盲目地自我感觉良好……这个时候,我才觉得我对自己的认知可能有些与世界脱节了,我自己认为好的或者优秀的东西,可能在大多数人看来,并不是那么值得说道的。 P188

都说八卦是人类的一大本能,可不是嘛,一口气聊下来,已经到了六点半。 P189

想起芷霞跟我讲过,女孩子在说什么话题时,我也可以把自己的经历结合其中交流交流。 P190

我们还聊了今后的计划,她说到正在面试一家咨询公司,我还打听了一下咨询公司都会问些什么;我则说到以后尽可能往技术专家方向发展,尽早成为架构师。 P191

“好啦,我要走啦。 P192

在今后的日子里,我想清楚了:女孩子做怎样的选择,都是她们神圣不可侵犯的权利,都不应该被任何人以任何看似圣母的道德标准所指摘。 P193

我: 头一次见面,咱们互相间都缺乏了解。 P194

在大同这个小地方,我们一家三口过得算是满足基本的温饱吧。 P195

这也正式宣告:哥终于有女朋友了!要说有了女朋友的感受是什么,嗯……是挺让我有些措手不及的。 P196

每次周末约会,到了约定时间,她很少能准时到,比较常见的情况是她会让我等上几分钟,然后半个小时或一个小时之后,她才笑嘻嘻地跟我说:等了好久了吧。 P197

我还提议过靠提升效率的方法,同样失败了。 P198

她觉得我就是这里面的丈夫,而我觉得这是妻子说话不严谨,让一个程序员按照这一条“程序指令”去执行,这结果没毛病啊。 P199

从每天工作又有哪些新任务,到今天又见到了哪个新面孔,对方是什么样的人,再到她们领导又传达了什么旨意……我几乎可以靠着这些,高度还原她每天的生活。 P200

后来她慢慢发现了我的难处,当我说出出行计划的风险后,她也开始有选择性地接受我的建议。 P201

有了幸福的感觉,我便会禁不住不时地去思考幸福是什么。 P202

但不管怎样,都离不开一个必要的环节——招人。 P203

走进大楼,也是一副高规格的新气象:高高的钢琴键配色大厅、简约风格的灯光设计既不让人感觉空洞,也不太过于让人眼花,红黄蓝绿等各种颜色的沙发和小桌排在大厅周围,给人一种个性与舒适的感受。 P204

大楼专门开辟出一层作为餐厅;除一楼的前台外,还有半层HR事务与行政事务的专区;同时,有专门的小邮局可以寄收快递包裹,有专门的小店提供咖啡、小食,有专门的健身房可以一边俯瞰城市美景,一边强身健体……看着同事端着餐盘交到收餐处,码农特有的简单朴素的衣着,会觉得这貌似不是在公司上班,而如同在学校上学一样。 P205

当然,精简的流程也意味着一些漏洞的产生。 P206

简明直接,相互信任。 P207

一家几万人的公司,更需要一个明确化、精细化的分工,公司高层领导、中层干部、基层员工与其说是一种管理与被管理的关系,不如说是一种分工的关系:高层领导负责制定方向和政策,中层干部负责拆解任务,基层员工负责落地实现,大家各自把自己的事情做好,整个事情才能顺利进行。 P208

有人也会担心部门领导与这名特殊的HR沆瀣一气,公司也在制度上做到了最大努力的限制。 P209

A公司的收购,大部分都有着比较明确的目的。 P210

这样的收获和好处会更实在一些,毕竟,不是谁最终都会当领导,但当前比较清晰的情况是:我们都会在一个屋檐下,一起与公司走过很长一段路。 P211

海布让面试者进行了自我介绍,然后问他关于简历里的项目与经验,接着出了两个题目,最后向面试者简单说明了一下如果面试成功后将面对的工作的性质和注意事项。 P212

这也不难理解,毕竟面试成功后是自己组里的人,面试者的性格、气质与做事风格要和小组氛围更搭才好;第三轮面试为部门领导进行的面试。 P213

此时,自信满满和自视清高也就咫尺之间。 P214

接下来要准备要问的问题了,因为可能要面好几个人,我觉得有必要开始搞一个自己的面试题库。 P215

理完了整个思路,就算是万事俱备了,可以开始筛选简历,进行面试了。 P216

他在自我介绍中没有说到自己拿手的项目,想想这也正常,大多数人在准备面试时对于自我介绍部分的策略应该也就像他这样,简单地总览一下就好,面试官要是对哪块感兴趣,由面试官自己去问即可。 P217

“这个项目一共分三个大的模块。 P218

“呃……”他犹豫了一会,说道:“抱歉,几大范式的概念我有点记不得了,当时没这么设计,主要还是业务上只需要这么一张表就可以了,所以也没想那么多。 P219

“主要考虑的是对各个用户群体,他们需要的数据可能也是不一样的。 P220

”面试者答得很自信。 P221

对于Kafka和ZooKeeper之类的中间件,我们则有专门的集群接入。 P222

我尽自己最大的努力客观记录一问一答的细节,同时不给面试者贴任何标签。 P223

在面试进行的过程中,我才深深体会到要是真去把自己不会的东西,说得头头是道,简直比自己直接去学习这项技术还要困难。 P224

“那如果你能来A公司,你打算在A公司工作多久?”“我觉得A公司一直都是业内的楷模级别公司,我希望能在这儿工作尽可能久,多学习技术。 P225

对于这个面试者的命运,我开始整理资料和思考接下来要做的事。 P226

原因呢,是我想让海布看一下我的评价到底准不准确。 P227

“那请你简单说说你在这个项目里都做了哪些工作吧。 P228

也不知道如果我跟他的面试角色换位后,我能不能通过这次面试。 P229

但面试者显然也不需要我的提示,一种程序员间的默契让面试者只需要这一句话便足够理解我的意图。 P230

末了,面试者问了我一个关于未来工作细节的事情,我把他可能会做的工作讲了讲,我的面试环节就算是告一段落了。 P231

对一个面试者某一方面的技能的评价,或许并非单单对该技能进行的封闭式评价,而是将这一技能从面试者宏观评价的角度来看,是一个什么样的相对位置。 P232

作为一个计算机专业出身的研究生,同时能通过A公司严格的考核,能力自然不会差。 P233

当与大家熟悉起来后,肖本也逐渐露出了他的棱角。 P234

他俨然成了一个超级小能手,可以带着我们这些老员工走上一段不同凡响的路了。 P235

“导师”这个title是挺有意思的一个存在。 P236

其中有很多关于工具的问题,更多的是一些业务问题。 P237

一次我问他一个看似编辑器的东西是什么,他跟我说就是一个很普通的编辑器,只是加了十几个插件。 P238

我有点蒙,问身边同样在加班的俊崖:“这妹子谁?你认识?”他跟我一样,直瞪瞪地盯着这个妹子,摇了摇头。 P239

她有一段和我们大多数人不太一样的经历:她高中开始就去英国读书了,一直读到研究生毕业才回国,一共在英国待了九年。 P240

把这样一个极需要组织能力的职位给这么一个思路开放的妹子,再合适不过了。 P241

在我们两个的合作模式里,我一般都扮演着“秘书”的角色:做做记录、帮着组织组织人、预订馆子、跑跑腿等。 P242

程序员是一个比较沉默和安静的群体,但直到我们一个这样的群体里有了一个像亦琳这样活泼开朗的“异类”,我们便发现原来我们也是可以成为一个这样的程序员的。 P243

虽然说公司把员工进行分级看似有悖“平等”的原则,过于严厉的等级观念也确实有害于组织与机构的发展,但同时历史上大到一个国家,小到一家公司,都用无数事实证明了一个没有阶层、没有等级的组织同样是不好过的。 P244

比如,分配给你先执行A脚本,再处理B文件,再从数据库C中导出结果的任务,你可以按时保质量地完成。 P245

L5及以上的职级普遍会带团队,成为一个团队的Leader。 P246

像L2升L3这样的低层级的晋升氛围普遍是比较宽松的,即便像L3升L4,也很少有剑拔弩张的仪式感。 P247

虽然在这两年多的时间里,我做出的大大小小的项目有十多个,但仅仅25分钟的时间里,我计划只阐述其中两个最具代表性的。 P248

”我这么安慰自己。 P249

过了两天,冷静了下来,才开始想那些“怎么承担责任”的问题。 P250

一般来说,每个团队都习惯把目标定得略低,这样压力小一些,要是遇上什么意外,也能保收;要是没什么意外,也会有个惊喜。 P251

D等级则与S等级相反,是给公司认为表现极其糟糕的员工的,不过要不是员工有太大的作风问题,或者是工作造成了特别大的事故,引起不可逆的负面社会影响,公司也不会轻易做出D级的评价。 P252

那天,我的邮箱里收到了路肃发的会议邀请,到了会议室,却空荡荡的,只有我一个人。 P253

一次C没什么大不了的,从哪里跌倒,咱就从哪里爬起来。 P254

做项目时要积极与客户沟通,工作中要经常积极想点子,经常发声,刷刷存在感。 P255

我的工作效率提升了很多,也开始在产品需求会中主动说出更多自己的意见和建议。 P256

这当中究竟藏着多么深的利害关系,我居然对此一无所知。 P257

要是有了新活,这些人也出了奇地积极,还没说清楚干什么,就大包大揽。 P258

于是越来越多的人开始停下敲打代码的手,腾出一部分精力去写PPT,去组织汇报材料。 P259

如风像是一个温室大棚,为我们创造了适宜的工作环境,而如今大棚被撤去,我们直面凛冽的寒风,才真正知道那个大棚当初经历了什么。 P260

这段时间最大的挑战,是如何与新的直属上级——路肃保持最佳的相处方式。 P261

总之,我们感觉手里的活儿越来越多,许多之前不属于我们职责范围内的工作,如一些数据库维护、前端开发工作,也交给了我们。 P262

就这样,在琢磨“如何成熟地表达自己观点”这个问题时,我们需要不断地试错,路肃不会告诉我们怎样才算是成熟的想法,而会以那严厉的措辞一次又一次告诉我们“你们还稚嫩”,甚至直接告诉我们说,“你们还不够优秀”。 P263

路肃给人下结论下得如此迅速,以至根本来不及再多说一句解释的话。 P264

大家一起吃饭喝酒,一起聊聊旧事,好不享受。 P265

新的平衡在如此的大换血后也渐趋稳定:几个业务线被砍掉了,换上了几个新的业务;保留下来的业务也多多少少有些大小不一的调整。 P266

但这是以后的事了,现在我可没有精力去感激,怎么走出此时的困境才是王道。 P267

针对这样的问题,公司想到了两种解决方法:一个就是招聘一些实习生,既可以造福社会,给学生一个实战机会,又可以解决公司短期用人的燃眉之急;另一个法子就是与一些外包公司合作,招一些短期协议的外包员工作为临时补充。 P268

我想着只要一直保持进步和发展,我也一定会带着团队做事,而不是自己一个人闷头干活。 P269

他个子瘦高,发型较为零乱,看着呆呆木木的,倒是很符合大多数技术人的特点。 P270

回想起自己经常于各种场合,在台下听着台上的各种大咖和领导高喊“努力就会有收获”“奋斗的人最美”之类的话,就觉得把这些大家都懂的道理说出来有什么意义呢?越听越觉得尴尬。 P271

这种模式就是把拆解功能和设计系统的活儿,与他们一起讨论。 P272

我先从需求的角度,梳理整个业务系统的交互细节,一边简单地说明自己的想法和思路,一边勾勾画画,一点一点填满一张交互流程图。 P273

有时他战战兢兢地来问我一些技术问题,看着他的样子,我不禁会想起自己刚刚工作时,心里充满敬畏并且怀揣着对不确定性的一丝恐惧去请教别人问题时的样子。 P274

我这领导,其实并不是什么领导,我就是有一点决定权而已,脱离了工作直接指挥,我内心里是不踏实的。 P275

另一个小组的人员构成与我们类似,不同的是他们有两个外包同事、一个正式员工。 P276

”我努力恪守着这种话表达的原则,然而最终,在我看来影响不是很大的两个模块,我还是让他按照自己“选择容易”的办法去做了。 P277

成功真的是会让人骄傲的,尤其是像我这样初尝领导经验便成功的人。 P278

比如,在这个时候,你会见到一个算法工程师干着开发工程师的活儿,一个会一点JS的后端工程师被调派过去做前端,甚至会有工程师做着原来应该由产品经理完成的事——写需求文档,写分析报告等。 P279

而后发现周围很多人都会脱发,便把这种现象当成一种正常现象,不光不再对脱发过于神经兮兮,还时不时拿脱发这件事吐槽生活中与之相关的趣事。 P280

头发的事,是容易看出来的,是直观的。 P281

每一轮“迭代”过后究竟是不是加班的人少了,这个不得而知,但夜晚互联网公司的灯,却不见到有什么黯淡的样子。 P282

最常见的规划方向,是努力工作,成为公司高层。 P283

他们的连锁店越开越多,以至于到后来,A公司都想着尝试入一些股份。 P284

不过,在现实中,真正升职到X总、创业成富豪、转行成精英的人只有很少一部分,即使把范围扩大到行动了去努力打关系求升职,抛弃了自己的积累去创业,努力做出了转行尝试的人,也不会有太多。 P285

以前看人物传记,总会对一个个传奇的成就心生敬意。 P286

事实就是这样:新领导路肃在我看来刚开始是不怎么重视我的,志佳看上去更是懒得理我们这些“余党”。 P287

我牺牲了许多自己工作以外的时间,主动揽了许多的活儿,全年近八成的上班时间工作到深夜,只为把之前因为被评为C而失去的印象分再争取回来。 P288

自己也说不出来为什么。 P289

曾以为当自己把一切都熟悉起来,就会安心一些,没想到真的到了这一天,心里却更加的不安:重复可以带来熟练,也可以带来思维上的固化;如果今天我掌握的东西在明天将不再有意义,那这种所谓的熟悉与稳定到底是福还是祸?我所熟悉的工作方式、工作习惯、工作当中人与人之间的关系是A公司独有的,还是所有公司都这样?我开始好奇,开始关注其他公司都在做什么,开始偶尔看看网上的招聘信息,或是约几个曾经认识的猎头朋友聊一聊。 P290

一个萝卜一个坑,换工作的第一步,先从找坑开始。 P291

我自认为结果还是不错的。 P292

我不知道这是不是真的,但我要离职跟这是真是假并没有什么关系。 P293

我常跟学弟学妹分享说,毕业后的第一份工作,建议找一家大公司的职位,即使工资低一些也没关系,这些公司带来的见识上的成长,是今后一定会受用的。 P294

新的团队加上我一共六个人,为首的是组长冷鱼,另外四个同事的工作经历从3年到12年不等。 P295

新的工作与之前相比也有不一样的部分,比如新的工作的节奏比之前要快不少。 P296

good

标签