要入行程序员,我们应该拥有什么?

1.毕业证

最好是本科毕业证、最好是985211的本科毕业证,当然你是研究生或者更高学历那就更好了。中国自古以来都有门第观念,在软件行业也不例外。也就是说你的出身越好,那你的机会就越大,不要跟我说软件行业不都是靠技术吃饭吗,等你去面试找工作你就知道了,或者你到一些招聘网站了解一下企业的招聘要求,有很多企业赤裸裸的打着必须是大学统招本科及以上学历,计算机相关专业。还有甚着要求必须是985211院校毕业的,跟很多同事在聊天的时候经常聊这些事情,我们大家一致认为,就算符合要求也不去,这明显是歧视,在这种公司待着也不会有好的发展。

但是抱怨终究是抱怨,现实还是要面对。有些人就说了我身边很多人都是专科学历,不都发展的很好吗。学历低甚至没学历不是说不能进入这个行业,只是说你要付出更多的努力,别人面试1次通过,你可能要面试1020次甚至更多次才能找到一个工作,而且起薪比较低,我说这些是奉劝那些崇拜像比尔盖茨这样的科技大佬大学都没读完就能有一番作为的同学们,千万不要幻想这些对我们来说虚无缥缈的东西。因为我身边就有这样一位朋友,大学读到一半的时候觉得是在浪费光阴,因此退学,以至于后来找工作到处碰壁。所以不管你读的是专科还是本科一定要把学业完成。

2.专业技能

各行各业都需要专业技能,哪怕是扫大街也要看你能不能扫的又快又干净,软件当然也不例外,对于一个刚入行的应届毕业生而言有很丰富的项目经验那是不可能的,那我们需要有什么呢?

我们需要有很扎实的专业基础,这个是我们能够做到的。为什么现在有那么多的专业的软件培训机构,就是为了能够让你学到更好的基础。还记得在7年前我入行的时候所掌握的技能跟现在的实习生一作比较感觉差了那么一点点,但是那个时候的培训机构明显没现在多,而且从事这个行业的人没有现在这么多,所以企业在招应届生的时候肯定也不会要求特别高,因为大家水平差不到。依稀记得09年下半年Android刚进入中国的时候,企业在招聘Android开发工程师的时候要求,只要你会搭建Android开发环境,稍微的懂点JAVA基础并且有志向要在Android领域大展宏图的筒子们实习期4000元一个月,并且免费提供培训,09年啊那时候的我也是刚进入java实习,企业才给我1500,但我还是毅然决然的选择了java时至今日告诉我,我的选择没有错,反观近几年Android的发展,因大量技术人员的涌入,技术人员显得有些饱和,也是不容乐观,和今天IOS一个样子,所以选择语言还是要选择一个有长久发展前途的。但是现在不同了,哪怕你是计算机专业,大学学了4年的编程语言,但是你所掌握的技能可能还没有一个化学专业的学生培训4个月掌握的多,其中的道理 你懂得,所以有想做软件开发的朋友,最好是找个靠谱的培训机构,进行系统的学习。

随着互联网+概念的提出以及物联网的兴起,中国的软件行业也称得上是如日中天,可以说未来10年内,对于软件从业者来说应该都是春天。

3.一定的抗压能力

做什么事都要求你有一个抵抗压力的能力,不能说领导交给你一个任务,你给领导的感觉是你做不来、你不会,或者说你压根就害怕,这是万万不可取的。公司给你钱不是让你来享受的,是让你来做事情的,都那么容易完成的东西还需要招你吗?你不好好想想。

各行各业都有自己的压力,如果你是一个餐厅服务员,你要承受顾客对你抱怨、不满、无理取闹等等,如果遇到这样的问题,你比顾客的脾气还大,I’m sorry  你可以离开这个行业了;如果你是一个人力资源专员,你要承受领导给你的招聘任务,制定合理详细的招聘计划,完成不了任务领导给你的责怪、惩罚等等;如果你是一个工地的施工人员,夏天你要承受高温,冬天你要承受寒冷;在此不做一一举例,总之一句话每个行业的从业人员都不容易。

做我们这行那就需要你脑洞大开,高速运转你的脑细胞。有人抱怨说你们这帮屌丝天天在电脑前坐着,风刮不着,雨淋不着的,凭什么工资就那么高,亲我们脑子快累死了好吧!!

体力劳动只是肢体付出劳动,歇一会儿就解乏了,但脑力劳动是身心都疲惫,想要完全恢复需要很长时间以及很多能量的补充。

3.沟通能力

人只要活着就要沟通,我们这个行业也不例外。

别看程序员一天到晚的在电脑前噼里啪啦的乱敲,好像沉默寡言。殊不知我们敲的代码都是经过很长时间沟通才得到的结果。这就要求你要听懂用户的需求,否则等待你的只有返工重写。在此不做详细说明一张图画就能看懂其中的真谛。

 

 

 

 

这里面很多个环节都存在着沟通的问题,但是大家发现客户的解释(描述的需求)和客户的真正需求也不一样,所以在软件行业有这样一句话,永远不要相信客户描述的需求。作为一个行业资深从业人员要学会挖掘客户的潜在需求,很多时候客户自己也不清楚到底要做成什么样子,需要你去替他想。

 

4.团队协作能力

一个软件从最开始的需求到最终的产品上线运营,中间经过了很多个环节,每个环节都有专门的人负责,即使在同一个环节也有好多人负责。那么所有为了产品最终上线运营所努力的员工,你们都属于一个团队,这个时候你就必须要拥有团队合作的意识,不能够我行我素。

以开发环节为例,一个稍微有点规模的项目不可能只有一个人去开发完成所有的功能,一般都是几个甚至几十个开发工程师,共同开发一个项目,每个人负责不同的模块/功能点,既然大家都在共同开发一个项目,也不可能你的模块就是完全独立的,有可能被别的模块调用,也有可能你的模块需要调用别人写的代码,那么这个时候就需要大家共同探讨研究解决方案,互帮互助以达到预期目标。

如果每个人都是自己只顾自己的,没有团队的意识和团队协作的能力,注定你们项目的失败。

5.学习能力

准确的说应该是自学能力。作为一个程序员必须要有一定的自学能力,it行业之所以工资现对较高,也跟这点有密不可分的原因。我们都知道技术的更新是日新月异的,it行业更是如此,一个月不学习也许你感觉不到变化,但3个月不学习或者半年不学习,你可能会发现整个it世界可能都变了,出现了很多新技术、新概念,而这些新的东西可能你的下个项目就需要使用。

另外不同的公司,不同的项目组,甚至同一个项目组的不同项目,所用的技术也可能是不同的,但企业很多时候不会对你进行新技术培训,甚至不给你单独学习的时间,因为企业关注的是利益是营收,在it行业时间就是金钱,这个时候就需要程序员能够一边学习技术一边开发项目,这就是所谓的上手快。这也是一个高级程序员和初级程序员的区别,高级程序员会把大部分的时间用在业务上面,而技术只占很小一部分,因为不论什么技术在他看来都是为完成业务的一种工具而已!

对于刚入行的程序员,很多时候你从学校从老师那里学到的只是当前相对流行的技术,但并不是所有的企业都用这些,很多企业有自己的框架、自己的技术、自己的开发规范。进入企业后到底企业用什么技术是无法明确判断的,当遇到新技术时,必须能够勇敢的去面对,积极的去学习,要拥有对新技术的探知激情,而不是害怕新的技术出现,这也是作为程序员的基本素质。当然了刚开始企业对你的自学能力可能要求不高,但随着时间的推移,经验的累计,你的自己能力也会不断的提高,这也是初级程序员向高级程序员转变的一个过程。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值