1024 不放假,却在琢磨如何成为 CTO?

1024,程序员节快乐!

提起程序员,你难免会想起——格子衫、文化衫和运动鞋,虽然他们属于打扮自己,但是他们却装扮了整个互联网,将自己的大部分的时间都奉献给了工作,导致个人问题难以解决。(这一定不是在说你没对象: ))

同时,为了提升自己解决 bug 的能力(这一定不是在说你平时写的代码都是 bug),还需要花更多的时间来学习新知识。尤其是当前互联网发展迅速,技术演进速度超乎了人们的想象。

当你追赶上互联网速度时,你又会有新的目标——要不再努把力,琢磨琢磨怎么当 CTO?俗话说,不想当将军的士兵,不是好士兵;不想当 CTO 的程序员,不是好程序员!CTO 虽说不是一个奋斗的终点,但也是一个奋斗的目标,既然有了梦想,那么我们该如何努力向前冲呢?在 10 月 9-17 日极客时间 App 的「部落版块」中,TGO 鲲鹏会的几位会员开启了极客时间用户们的深度对话和互动,会员们接连抛出了工程师成长历程中需要关注的几个重点问题。TGO 鲲鹏会编辑组为此进行了详细整理和发布,看看大家都是如何学习、成长的(如何填坑)吧!

有目标,有方向,有实践

很多初入职场的程序员,往往缺乏工作、学习经验,既不知道从何学起,更不知道该怎么学。为了帮助大家解决这个历史疑难问题,@李家强(亚信安全架构师 & TGO 鲲鹏会会员)、@张呈刚(AWS 资深架构师 & TGO 鲲鹏会深圳分会理事会成员)在极客时间 App 的「部落板块」中发起了讨论。

一位名叫 @我能走多远的网友在部落中非常详细地分享了自己的日常学习状态:

1、学会给自己定一个合适目标,让学习有一个方向;
2、培养自己独立思考及动手的能力;
3、学习过程中要持续总结,把自己总结知识点或代码以博客的形式展现在大众的眼前,让更多人去审视你的思路与代码(这应该也是开源的思路,共同学习、共同进步),定期看一下别的人的回复和意见,帮助自己提高编码能力;
4、最重要的一点要有自制力和执行力。

结合上述四点,@我能走多远还谈到了自己的实践经历——去年,他购买了《数据结构与算法专栏》(这一点不是广告,这是真的实名推荐!),给自己制定了学习计划,一步步地跟着课程学习,并将课程内容以自己编码的方式,全部实现了一遍,让自己在编码中真正理解算法的精髓。

@我能走多远表示,代码是写出来,只有持续地 coding,才能形成一种习惯。同时,他还给大家安利了一个当下非常流行的“软件思维导图”,它可以帮助你将掌握的知识进行分类,让你方便记忆、温习。

除此之外,另一名网友 @雪人也发表了自己的看法,他通过选择、理论与实践结合、总结三个方面进行了分析:

选择:当前,互联网的技术发展很快且繁杂,因此,首先你需要做的就是选择,选择一条适合自己职业发展的技术路线,其次需要你在在这条路线中深入学习,不要东学一个西学一个,学到最后却没有一门是精通的。

理论与实践结合:在选择了你想要的技术路线后,你就可以开始寻找各种相关的学习资源,包括图书、博客、教学视频等,并要学会筛选真正对你有用的资料;接着在学习理论知识的过程中,你一定要动手实践,并多问自己几个为什么,这不仅能提高你的动手能力,而且也能帮助你加深理解。

总结:每学完一个部分知识,都要试着自己总结一遍,并且在日后对其有新的理解时,还要及时更新,在经过一段时间后,自然而然会形成一套自己的知识体系。

业精于勤疏于嬉,行成于思毁于随

“梦想是美好的,现实却是残酷的”,很多同学虽然计划得很好,但是实际工作后会发现,不仅天天写业务代码,还要加班,根本没有时间学习,提升自己。

针对这个问题,@樊伟伟(微鲤科技研发总监 & TGO 鲲鹏会南京分会理事会成员)也在部落中分享了自己的建议:

你先想想自己真的忙到一点时间都没有吗?是不是常常以 “忙” 为借口,拒绝了学习、拒绝了成长呢?如果不是,那你可以从以下几个方面入手:

1、做好且 100% 搞懂自己的本职工作, 不要好高骛远,尤其是新人;
2、发现问题,思考、解决问题,并总结输出;
3、向他人「领导、同事、下属、兄弟部门」学习,不止技能,还有做人、做事的原则和方法;
4、利用好一切学习的机会,比如技术调研、内部分享、系统重构、指导新人等等。

当然,工作之外的学习也非常重要:

1、夯实基础,系统性的学习,不断的完善、更新自己的知识体系;
2、兼顾知识的广度和深度,做 “T” 型人才(“T”型人才指的是,不仅有深度的专业领域背景,同时也有很多横向跨领域的知识储备的人才);
3、拓宽视野,技术人也要多了解一些业务、产品、商业相关的知识;
4、一些软技能也是非常重要的,比如沟通、演讲、写作等等。

另外,还有一位非计算机专业的程序员 @pyhhou 也分享了自己的一些学习经历:

@pyhhou 表示自己入行程序员已经一年多了,刚开始时也比较迷茫,并且当前新技术非常多,自己也不是计算机专业的,基础不好,所以对于该怎么学自己也困扰了很久,但是在经过一段时间之后也有了一些简单的经验:

1、带着问题去学习,工作上的能力主要就是解决问题的能力,如果没有找到问题,盲目地去学习一些新技术、新知识,这样不仅会让你的理论与知识脱钩,而且学习只能成为知识的堆叠,不能将知识很好地关联起来。

2、学习并理解一门技术背后的思想是关键。很多时候技术都是有关联性的,比如说很多 Web 框架都是基于 MVC 模式,或者从它演变而来的,因此我们理解 MVC 的模式思想、优缺点和它能解决的问题是关键,如果仅仅去学习这个框架怎么配置、如何部署、怎么用,这些不能很好的达到总结归纳,举一反三的效果,而且往往思想层面的东西是可以类比的,这也可以加深我们对技术的理解和记忆。

3、通过写作或者其他形式进行知识的输出。

4、坚持,如果没有坚持,方法还是那个方法,对自己的能力没有半点改变,坚持往往一开始会很痛苦,但只要你能坚持下去,那么你所坚持的事情会变成习惯,融入到你的生活中。

事情很多,精力却是有限的,那么我们该如何集中精力,提升自己的专注力,帮助自己提高学习的效率呢?

@张超(TGO 鲲鹏会南京分会理事会成员)在部落中也分享了一些自己的看法:

1、选择一项注意力训练,通过健身、做手工(手办)、冥想练习等方式。

2、做减法,减少不重要、不紧急的事情占用你过的精力,可以使用紧急 - 重要四象限法则(又称艾森豪威尔工作法),训练自己的大脑能快速的分辨事物的象限,以此决定投入精力多少。

3、学会说不,不要充好人(伪超人),我见过不一些人,揽活时,很积极;交工时,拖后腿。

4、记录自己的时间使用情况,不过我不推荐长期使用,跟踪一段时间分析症结加以改进就好,长期使用意义不大,反而占用太多时间。

人不可貌相,海水不可斗量

掌握了学习方法,了解了如何提升专注力,那么你知道自己未来该如何计划了吗?

@吴万港(杭州同盾科技区块链实验室负责人 & TGO 鲲鹏会杭州分会理事会成员)在极客时间部落中分享了他的一些看法:

首先,你需要了解自己的个人喜好,如果你喜欢做技术,就坚持做技术;如果你喜欢与人打交道,那么做管理也是不错的选择。因为作为管理者,往往是在管事,而不是在管人,将事安排给人,将人与事之间的匹配程度做到相对平衡,这是一个很难的工作,需要计划、流程、组织等各个方面的协调和配合,更多的是各方的协调和沟通。不喜欢或不太善于与人打交道的人,比较难做好这些工作,容易厌倦。

其次是掌握产品思维,当前各个行业受受所谓的互联网思维的影响很大、很深,绝大多数的企业是有业务驱动的,技术提供落地保障,所有的技术都在为业务提供服务。因此,作为组织结构中对技术最后负责和拍板的人,必须具备这样一种思维方式,技术团队存在的价值就是为了组织经营而需要的,我们开发的系统最后都要接受市场的检验,符合市场需要的才能活下来,脱离市场价值的技术是没有价值的。

最后,我想说的是,不管在公司扮演什么角色,你还是一个人,你还有家庭,不仅要承担工作的责任,还需要负担起家庭的责任。

而 @杨冀龙(知道创宇 CTO & TGO 鲲鹏会会员)在极客时间部落中也分享了一些自己对于程序员职业规划的建议:

首先选择自己感兴趣的工作是最重要的,如果你能从事自己感兴趣的工作,那么你会不觉累,而且会干一辈子,感觉每天都是成长,没有浪费每一天的时间。要知道年轻人最重要的资产就是时间,千万别浪费,中途改行就是最大的浪费。

其次,要明白自己的工作价值,不能为了“搬砖”而“搬砖”。

最后,要看未来技术大的趋势和社会大的发展变化趋势,自己的工作和兴趣最好要符合未来趋势,这样路才能越走越宽。

想要实现梦想,那么必然过程是艰辛的,道路是漫长的,但是不努力怎么知道行不行呢?加油吧,一块为实现梦想而努力!

(0)

相关推荐