如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第1张图片

作为程序员,薪资待遇除了与技术和经验挂钩以外,也可以走领导路线晋升。虽然不想承认,但是作为程序员大多在情商方面并不是特别出众。需要具备的方面还有很多:

1. Love Coding 热爱编程

大四开始找工作的时候,我正在上一门可视化编程的课,大概就是用VC编写出可以绘图、简单动画 和播放多媒体文件等各种操作的程序。基于这门课,我编写了贪吃蛇、俄罗斯方块等各种游戏。另 外的一段编程经历是大二时候的Java大作业,编了一个很弱的图片管理器。实际上,这些程序都非 常弱智,那时候的我算法极差,代码规范性极差,甚至于对SDK或库函数的掌握也极差,是个地地 道道的菜鸟,但这并不妨碍我喜欢编程。我发现,当我坐在电脑前敲代码,或者对着千疮百孔的程 序不断调试,打断点,加入调试代码,单步执行查看内存变化的时候,我是乐在其中的,甚至于忘 了时间。所以,面临工作方向选择的时候,我毫不犹豫选了coding。 于是,当07年我在缺少指导,对Linux不甚了解,对路由器也一知半解的情况下,开始开发国内厂 商的第一代11N路由器的时候,倾注了大量的精力阅读《LDD3》,搞定交换芯片驱动;大段大段 的啃Linux Kernel源码,搞定netfilter/iptables;阅读《UNIX环境高级编程》,搞定各种同步互斥 进程线程;阅读网上的各种技术博客,包括把竞争对手的GPL代码Down下来仔细阅读。。。一年 里加班无数,五一十一也都是在加班中度过,一年下来基本上搞定了领导交给我的艰难任务。然后 又用一两个月的时间,把产品上市后爆出来的各种Bug一一解决,最终赢回了市场口碑。 如果没有这种热爱,你就无法在日复一日的coding中保持专注,更不用说脱颖而出。 任何成功背后,都有不为人知的苦闷和寂寞。程序猿这一 行范围又极广,底层驱动、操作系统、协议栈、前端、服务器、APP、数据库、大数据、分布式、 系统集成。。。。。。怎么选择,怎样能够发挥优势,真的应该好好想想。 这一条展开来说,可以讲一天,具体也可以参照我在其他问题下面的回答。职业生涯规划里面,知 己知彼是非常非常重要的,知己,即是了解自我的个性、特点、优劣势、需求;知彼,即是了解行 业、企业、团队、职位的情况和要求

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第2张图片
image

3. Be reliable 可靠,说到做到,做好本职

作为程序猿,最基本要求是:代码可读性好、功能正常没有明显bug。 但我见过太多这行里的毛头小伙,数字常量到处埋,函数命名用拼音,if else 十层八层嵌套,匈牙 利命名法和Linux命名法混杂,代码像挤在一张皱了的纸上,零注释或写完代码补注释,异常处理缺 失,还有基本功能一用就崩溃,还辩解说,在我那里是好的呀。遇到这一类人,通常我在心里先给 打个D等(ABCD),日后恐难以翻身。 还有稍微进阶一点的毛病,说这个功能包我身上没问题,又或者一周之内绝对给你搞定,领导你放 心。最后拿出来的代码不是错漏百出,就是规定时间根本完不成,而且到deadline前你询问他的时 候才告诉你搞不定。。。项目组里有这样的人,要么得配一个给他擦屁股的,要么得配一个项目助 理时刻监督他,换一句话说,他的贡献值其实为负。 程序猿要想进阶,其实什么设计模式、架构、高深算法、莫测技术都不重要,这些都只是术,或者 说套路。最核心的应该是,把简单的任务完成好,之后再完成更难一点的任务,这样你就慢慢进阶 了。为了自己的承诺和项目组整体的进度,有的时候,你需要在保证质量的基础上,拼命加班,不 负所托。 再补充一点,可靠并不是说绝不出错,是人都会犯错。但你不能重复犯错,相同的错误出现两次, 会严重影响别人对你的信心。

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第3张图片
image

4. Do the simple things right 再简单的事情都要做好,注重细节

你review过的代码里最低级的错误是什么?我遇到很多很多,“==”写成“=”、三个参数只传了 俩、“1 <= month && month <= 12” 写成“0 < month && month < 12”、不判断返回值 就直接下一步调用,太多太多。

写邮件的时候,很多人直接把话都写在标题,内容为空;也有标题空着的,或者叫“经理你好”; 或者邮件字体时大时小,一会黑一会蓝,看的人时刻有惊喜。 写文档的时候,busy写成 buzy,该换行分段偏不,该用流程图说明的偏要用文字,好不容易画个 流程图,方框里一会是实体一会是操作,箭头各种乱指,你写得出来,别人可看不下去。 这类人,你是老板,你敢提拔他当主管? 再举一个正面的例子,我的团队里曾经缺乏一个项目助理,不得已选了一个程序猿小伙,让他兼职 管管样机、发发通知,小伙没有怨言,除了自己的代码照常写的非常稳妥之外,兢兢业业做好这些 小事。后来没多久他就当上了主管。一个有能力把小事做到极致的人,也必定有潜力把大事做好。

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第4张图片
image

5. Be open-minded, don't be defensive 心态开放,接受他人意见,别人批评建议的时候不要 习惯性辩解和说不

以前我的团队里有几个同一届毕业的优秀小伙,其中两人,就叫A和B吧。以编程水平、技术广度来 衡量,A要更胜一筹,当然B也是杰出的程序猿。按理说,先得到晋升的应该是A,实际上,B很快 就连升两级,再后来就带一个大型的团队了,而A始终是最基层的主管。 为什么?我举一些实际的例子。 作为年轻人,免不了有做的不足的地方,通常我都会面对面跟他们具体指出来,B通常会说:“收 到,以后我一定注意”、“我不是很明白,能否给我一些具体事例,或者再给我解释一下。。。好 的我明白了”、“我的理解是这样的不知道对不对。。。好的知道了”。然后在接下来的一个季度 里,你很快就能看到他迅速改进,原来的弱项变成了他的强项。 而A呢?他会说“不是吧,我觉得不是这样的”、“这些道理虽然对,但是有点要求过高吧”,而 往后,你所希望看到的变化还是没有发生,或者收效甚微。 当你的领导,愿意明确对你提出指导,不管是耐心的说教还是严厉的批评,你都应该抱着“有则改 之无则加勉”的心态,即使要反驳,也要准备充分的理由和依据。面对领导的意见,要弄清楚其准 确意图,然后实施针对性的改进措施。这就是团队里的游戏规则和生存之道。即使不是领导,是平级和下属,也应该采用类似的心态和应对方法

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第5张图片
image

6. Be logical. 有很好的条理,想事情做事情有逻辑

很多程序猿,表达的时候通常是“我认为”、“我觉得”,或者说“听我的,只要这样这样,就能 怎样怎样”但是一旦你追问其结论的依据,或者推导过程时,他又拿不出来。又或者,只知道埋头 苦干,压根不管方向对错,轻重缓急。 程序猿是100%纯正的脑力工作者,但很多人却把自己变成体力工作者,自嘲自己身处劳动密集型 产业,有的人甚至以日产出几千行代码为傲。这无疑是自废武功,自己把自己往“码 农”的“农”字上推。定位问题,分析问题,解决问题,贯穿其中的都突出一个“逻辑”。无论是 写设计文档、编写代码、测试,还是产品功能、用户需求、交互设计,概莫能外。先思考,谋定而 后动,思考的过程,也就是找出因果关系,找出1234条论据以支持论点,找出step1 step2 step3 直至结果的推导步骤的过程。 当你有良好的条理性,有严谨的逻辑,也许凭直觉也能做出正确的判断。但时刻别忘了这一点。

如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?_第6张图片
image

当然了,程序员嘛,不适合做领导者的话做一个技术专业也不错,毕竟别人给的都是假的,只有自身的能力提升才是自己的

你可能感兴趣的:(如何从小白蜕变成月入50K大牛,除了技术你还需要做什么?)