1. 计算机程序员主要是做什么工作的
程序员是从事程序开发、维护的专业人员。
2. 程序员这个职业好不好
首先职业不分贵贱高低,但分薪水高低,幸福感高低,程序员这个职业前几年很不错,但是最近几年不行了,各种加班996,奋斗者协议,导致程序员这个职业的幸福感渐渐下降,同时由于资本的减少,互联网企业的岗位渐渐缩水,不如从前资本注入厉害的阶段。
程序员实际上对比同行业职位,并不是很有优势:
对比产品经理,程序员是干活的,要修改就得修改,薪水还有可能没成品经理高。
对比测试专员,程序员是干活的,有bug就得修复,薪水还跟人家差不多。
对比游戏策划,人家下班了,程序员还在干活,薪水还没人家多。
对比原画师,高端原画师一幅画十几万到几百万,人家休息了,程序员还在写代码。
对比销售职业,天天打电话看上去很辛苦,很低端,一个月成上几单就破万了薪水,很多程序员还达不到,同时销售下班了,程序员还在工作。
其他:就不一一对比了,程序员的加班和程序员的收入实际上不成正比,同时对比其他同行业的职位,薪水浮动并不大,还干活较多,所以程序员还不算一个高薪职位。
程序员职位并不是高薪,与其他行业基本差不多:
试问产品经理,ui设计,美工,游戏策划,项目经理,哪个职业在一线城市不是超过8k的,程序员的职位和其他职位的薪水也大致相同,基本一线6-30k,二线4-10k,三线4-8k,其他行业不也是这样吗,醒醒吧!
程序员如果算上加班工资到15k,那么一个房地产销售一个月卖出去3-5套房子,就达到这个水平了,而且还不用加班。
注:客观思考问题,不要以讹传讹,要有明辨是非的能力,不要听信所谓高薪,以实际思考对比就会有相关的差异。
程序员这个职业好不好:
喜欢的人会觉得好,不喜欢的人会觉得不好。
职业不是说好坏的,而是在于能够提升生活质量,加班严重生活质量下降,这样的职业我觉得不好。
注:以上仅个人观点,仅供阅读思考问题,无其他意图,如有受益可以采纳,感谢!
3. 在大家眼中,程序员是一个怎样的职业
为什么有人在技术造神
大家应该已经感受到,技术圈这两年已经和娱乐圈创业圈差不多的氛围了,这其实是有原因的。
最主要的原因是,创业公司和创业媒体越来越多,他们需要大量的程序员投身到创业这个高风险的行业中,而造神,正是让程序员们自动跳进火坑的绝佳办法。不是说程序员不能创业,我是说,创业媒体们故意模糊了创造和创业的界限,把程序员们的创造冲动偷换概念,鼓吹了太多不适合的人去创业。
另一个原因是,招聘成本高涨,CTO 们为了能提升影响力,不得不频频出席各种大会刷脸。文笔好的再做做自媒体和技术社群,既能强化个人品牌提高身价,又能在融资的时候提升成功率。
总之,这个行业出现了各种技术大神。
这些大神在普通人类和初级程序员眼里是无所不能的,是他们向往的目标;在中级程序员和高级程序员眼里,这些大神就是他自己,只不过他还没红起来而已…
于是攀比心理也开始泛滥,全国第三的架构师比比皆是,整个圈子渐渐就浮躁起来。
然而绝大部分程序员,依然是雇员
媒体们在包装时,最喜欢按独立开发者的路线来整。“从小就对技术有天分”、“大学时曾在某编程大赛一鸣惊人”、“写了个 APP 玩结果一个月有了千万用户”、“从公司离职自立门户三年上市”。
OK,这的确是程序员的一条职业路线图。但是媒体们不愿意告诉你的是,一:只有极少数程序员是通过这个路线成功的;二:这条线其实需要太多非程序员职位的技能,比如产品设计能力和销售能力。
程序员的价值决定
绝大部分互联网公司的程序员职位,没有技术门槛
然而不幸的是,绝大部分互联网公司都不是技术驱动的公司。真的就是鸟哥说的那样,绝大部分技术岗位,其实技术门槛都不高(门槛在工程上,后文细讲)。技术不过是这些公司的护航舰,而不是破冰船。
先别打我,冷静下来想想,到底有多少你会的那些技术,是你的同行们不会的呢?不多,对吧?
几年前亿级别的搜索还是问题,现在已经到处是通用解决方案了;几年前千万到亿级别的网站和 APP 解决方案还在大公司手里,现在各个架构大会都讲烂啦,而且其实都差不多;就连 DeepLearning,带 API 接口的框架也开始涌现,只需要把图片用 REST 传进去就能取到结果了。
很多事情,已经没有难度,只需要持续投入。是的,对绝大部分程序员来讲,他们不需要成为科学家,而需要成为工程师,成为从科学家手里接过火种,去燎原大地的人。
怎样才是一个好工程师
工程的本质不是创造,而是去风险化。
工程是关于如何低成本、高效率、按时按量完成既定任务的。所以判断一个工程师是否优秀,并不是他多有创意多有名气,而是看他有多稳,看他能多 GettingThingsDone,中文就是“靠谱”。
有时候一个好的解决方案,未必采用了最新的技术和框架,而是看上去朴实无华,功力都包涵在背后的细节里。就像顶尖高手打的斯洛克台球,每一杆都平淡无奇,只是因为上一杆的回球太到位。
有同学问,那我工程做的太好,岂不是没有机会遇到一些高难度挑战了么?放心,一般公司都雇佣了产品经理来帮你制造高危事件。
同样的,一个好的工程师,会选择最适合需求和团队的方案,考虑开发效率和系统效率的均衡,从而已达到最优效果;而不是整天和别人去争论什么语言最好、哪些框架过时了。
工程的另一个要求是进度控制和质量控制。
在项目立项之后动工之前,对要做的事项作出详尽的规划,对未来一到两周的工作给出细致的排期,这是进度控制的基础。
代码的及时入库与合并,自动化测试和每日构建,CodeReview 和文档编写,这些看似无关紧要的习惯则决定了项目质量。
不幸的是,很多程序员把这些工程上至关重要的东西当成垃圾,视为对他们“创造力”的压抑。
他们总是以创造力为借口去寻求自身的自在,比如上班不带胸牌不打卡,中午休息时间在公司看视频打游戏,最好可以远程上班,项目到期之前再来检查进度,公司不要用统一框架,只有傻逼才写文档。
对职业的理解偏差和工程能力上的荒芜,培养了大批能写代码但死活写不好代码的“码农”,反而让那些有着彪悍工程能力和良好习惯的程序员变得奇货可居。
最后,来说说程序员那无处安放的创造力
有了锤子想找钉子是很正常的原始冲动,但我们必须认识到,创造力对于程序员这个职业来讲,是锦上添花的东西。如果你没有强大的工程能力,那么创造力也不过是无本之木。所以扎扎实实的把工程基础打好,这是最根本的。
在此基础上,我比较推荐程序员采用内外两条线来培养自己。在公司内的项目上采取相对保守的策略,尽力把稳定性做到最好,培养出自己卓越的工程能力;然后在公司外的开源项目和自己的独立项目上,采用一些新的技术、实践一些新的想法、充分发挥自己的创造力,梦想还是要有的,对吧。
这样做最明显的好处是,你可以了解到新技术和激进方案的优缺点,从而在进行方案选型时,有更多的依据;还有一个职业发展上的好处:如果不是主负责人,公司的项目往往不能代表你的能力;但独立项目却可以作为一个非常好的能力证明出现在你的简历里边。
你可以是一个身怀绝技的手艺人,在自己家里你尝试各种手法各种风格的个人作品;但当你参与颐和园这种级别的工程时,好好的把自己负责的石头雕成总设计师要求的样子就好 —— 毕竟这个时代一个人已经很难负责整个项目了。这就是我所理解的程序员的工匠精神。
4. 程序员是什么职业什么职务
程序员(英文Programmer)是从事程序开发、程序维护的专业人员。
一般将程序员分为程序设计人员和程序编码人员。
软件从业人员分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。
职务:
1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。
2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。
3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。
4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。
5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。
6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。
7、负责相关技术文档的拟订。
8、负责对业务领域内的技术发展动态进行分析研究。
程序员职业要求:
1、熟练开发工具
作为程序员,掌握至少两个或三个开发工具是程序员的基础。其中,C/C++和Java是最推荐的开发工具。C/C++已经成为开发工具高效、灵活的锐利工具。
许多系统级软件都是用C/C++编写的。Java的跨平台与Web的良好结合是Java的优势,Java相关技术JavaOne很可能成为未来主流的开发工具之一。
其次,最好掌握一个简单的可视化开发工具,如vb、powerbuilder、delphi、cbuilder,这样可以降低开发难度,强化程序员对象模型的概念。另外,您需要掌握基本的脚本语言,如shell、perl等,至少能理解脚本代码。
2、熟知数据库
很多应用都是以数据为中心的数据库,有很多数据库产品,其中关系数据库仍然是主流形式,所以程序员至少要精通一两个数据库,非常清楚关系数据库的关键元素,熟练掌握在SQL的基本语法中。
虽然许多数据库产品提供可视化的数据库管理工具,SQL是数据库操作的基础和常用方法。如果您没有访问商业数据库系统的权限,那么最好使用免费的数据库产品,如mysql、postgres等。
3、了解操作系统
目前,主流操作系统是windows、linux/unix,熟练使用这些操作系统是必要的,但只有这些还远远不够。
作为一个真正的编程大师,我们需要对操作系统及其内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等有深入的了解。
Linux作为开发源代码的操作系统,是一个很好的学习平台。Linux几乎具有现代操作系统的所有特征。虽然关于Windows系统内核实现机制的信息很少,但是通过Internet仍然可以获得很多信息。了解网络协议TCP/IP。
5. 计算机程序员是什么专业
当程序员包括的专业类型可以有计算机专业、软件开发专业、电子信息专业、通信专业、软件工程等,程序员的范围很广,主要包括软件设计/开发和程序编码两大类。
程序员在中国主要分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。
(5)程序员的职业介绍视频扩展阅读:
职业认证:
考试介绍:
软考程序员考试属于计算机软件水平考试(简称软考)中的一个初级计算机职称考试。对于软考程序员考试并无学历及资历条件限制,更无论年龄、专业与资历。一年可报考软考程序员考试两次,但一次考试只能报考一种资格。
因此报考了程序员考试则无法再报考软考其他级别或科目的考试。同时软考程序员考试采用笔试形式,考试实行全国统一大纲、统一试题、统一时间、统一标准、统一证书的考试方式。
通过国家统一组织的考试,资格考试分为:程序员级(原初级程序员)、软件设计师(原高级程序员)以及更高水准的:信息系统项目管理师、系统分析师(原系统分析员)、系统架构设计师、网络规划设计师、系统规划与管理师。
考试目标:
通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照程序设计规格说明书编制并调试程序,写出程序的相应文档,产生符合标准规范的、实现设计要求的、能正确可靠运行的程序;具有助理工程师(或技术员)的实际工作能力和业务水平。
1、CVEQC认证持有者已经通过了中国职业教育资格认证指导中心组织的培训和相应的考试,具有相应的专业技能和知识。
2、CVEQC证书可作为劳动者岗前培训、在职培训、提高培训、继续教育的培训认证;也是劳动者“先培训、后就业,先培训、后上岗”的凭证。
3、CVEQC证书是中国职业教育资格认证指导中心颁发的专业技能证书。标有证书序列号、证书编号、培训者及证书持有者身份证号码,并盖有全国职业教育管理委员会、中国职业教育资格认证指导中心的证书专用章。
4、 证书证明参加培训及证书持有者具有系统地接受岗位技能培训的经历,证书在全国范围内有效。
报考条件:
凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况报名参加相应专业类别、级别的考试。
考试要求:
1、掌握数据及其转换、数据的机内表示、算术和逻辑运算,以及相关的应用数学基础知识;
2、理解计算机的组成以及各主要部件的性能指标;
3、掌握操作系统、程序设计语言的基础知识;
4、熟练掌握计算机常用办公软件的基本操作方法;
5、熟练掌握基本数据结构和常用算法;
6、熟练掌握C程序设计语言,以及C++、Java、Visual Basic中的一种程序设计语言;
7、熟悉数据库、网络和多媒体的基础知识;
8、掌握软件工程的基础知识,了解软件过程基本知识、软件开发项目管理的常识;
9、了解常用信息技术标准、安全性,以及有关法律、法规的基本知识;
10、了解信息化、计算机应用的基础知识;
11、正确阅读和理解计算机领域的简单英文资料。
参考资料来源:网络-程序员
6. 程序员是什么职业什么职务
IT业,程序员相当于一线员工,再往上就是技术经理,技术总监,