❶ 程序员需要学些什么
程序员的岗位需求很多,例如大型网络公司、软件开发公司等等都需要程序员。
程序员需要学习:
1、掌握数据及其转换、数据的机内表示、算术和逻辑运算,以及相关的应用数学基础知识;
2、理解计算机的组成以及各主要部件的性能指标;
3、掌握操作系统、程序设计语言的基础知识;
4、熟练掌握计算机常用办公软件的基本操作方法;
5、熟练掌握基本数据结构和常用算法;
6、熟练掌握C程序设计语言,以及C++、Java、Visual Basic中的一种程序设计语言;
7、熟悉数据库、网络和多媒体的基础知识;
8、掌握软件工程的基础知识,了解软件过程基本知识、软件开发项目管理的常识;
9、了解常用信息技术标准、安全性,以及有关法律、法规的基本知识;
10、了解信息化、计算机应用的基础知识;
11、正确阅读和理解计算机领域的简单英文资料。
程序员必备技能:
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系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。懂得网络协议TCP/IP。
在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式。
从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,深入掌握TCP/IP协议是非常必要的。
至少,需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。
4、明白DCOM/CORBA/XML/WEBServices存在的意义
随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。
XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布式计算的基石之一。
5、不要将软件工程与CMM分开
大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员。
一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能。
如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。
6、需求理解能力
程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求。
要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。
7、模块化思维能力
作为一个优秀的程序员,他的思想不能局限在当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。
这样做可以使代码能重复利用,减少重复的劳动,也能使系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。
就业方向:
1、网络开发
现在网络已经成为世界通讯的一座桥梁,好像Javascript、PHP、Ruby这几类开发语言大部分是用作网络开发方面。
2、企业软件开发
JAVA、C#、VB这几类开发语言都实现了面向对象开发的目标,更多时候用于企业系统的开发。
3、系统软件
C语言、C++、Object-C这些软件更多是用在系统软件开发,嵌入式开发的方面。
当然,这分类不是绝对,像JAVA、C#、VB很多时候也用于动态网站的开发。在很开发项目都会使用集成开发的方式,同一个项目里面使用多种开发语言,各展所长,同步开发。
但所以在刚入门的时候,建议先为自己选择一种合适的开发工具,“专注地投入学习,全力一击”。
会编程、会计算机语言就能加入互联网发展大潮中,享受数字经济发展的红利,一时间社会上的程序员培训机构都变得格外火爆。
但是现在,专家的数据分析结果告诉你:若想跟上数字经济发展的步伐,光会编程可不行,这个行业现在紧缺高端的、综合型人才。
11月22日下午,清华大学经管学院互联网发展与治理研究中心与领英联合发布《中国经济的数字化转型:人才与就业》,揭示我国数字人才现状与趋势。
报告显示我国数字经济发展面临人才短缺的挑战,但这种短缺主要体现在拥有中高级专业技能数字人才的比例不高,拥有人工智能、智能制造等前沿技术的人才更是少之又少。
与美国、英国、加拿大等国家相比,中国的数字人才储备尚有很大差距。
此外,报告根据对人才需求的数据分析,结果显示我国数字人才的技能需求不再强调单一编程技能,更加看重技术、管理和领导力等综合技能。
2015年,我国从事信息传输、软件和信息技术服务相关工作的人数约350万,但其中中高端人才,特别是前沿技术的数字人才并不多。根据领英中国智库的研究,在人工智能领域,美国的从业者数量在85万人以上,印度15万,英国14万,中国只有5万多人。
报告负责人、清华大学经济管理学院副院长陈煜波教授表示,我国目前在大数据与人工智能领域人才缺口明显。
他解释说,目前中国85%以上的数字人才分布在产品研发类,而深度分析、先进制造、数字营销等职能的人才加起来只有不到5%,存在较大缺口,新兴技术人才和创新型人才培养方面存在滞后和不足。
这份研究报告的基础数据来自领英在中国的3600万个人用户,这些用户毕业于1.5万多所国内外院校,分布在36.4万家企业,拥有超过2.3万项技能。
陈煜波研究团队从中筛选了72万数字人才,多维度提取用户画像并跟踪其职业轨迹,以此预测不同地区的人才流向、雇佣率、受雇主欢迎的技能等人才趋势层面的信息。
陈煜波说,根据数据分析结果,整体来看,虽然编程技能和数据分析技能需求占据主导,然而随着数字产业走向成熟,企业除了强调编程技能,也逐步更加看重人才的技术、管理和领导力等综合技能。
近年间,项目管理、产品运营等“技术+管理”类技能的需求呈现出明显的上升趋势,懂技术、懂管理的人才被认为是“一将难求”。
领英中国代理总裁曾志恒也提醒,如果你有兴趣向数字职能转型,不能仅仅专注于自己的技术能力,沟通和领导力等软性技能将成为你脱颖而出的关键。
陈煜波希望这些研究结果能为教育行业和政府部门提供借鉴。他说,教育行业可根据职位的供需趋势更好地规划人才培养的方向,政府也可更好地了解人才流动方向、技术缺口等,以此制定有针对性的引才策略。
程序员岗位职责:
1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。
2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。
3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。
4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。
5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。
6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。
7、负责相关技术文档的拟订。
8、负责对业务领域内的技术发展动态进行分析研究。
相关书籍:
很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 9的书。
其实除了前9本之外,推荐数前30左右的书籍都算经典,笔者整理编译这个问答贴,同时摘译部分推荐人的评语。
下面就按照各本书的推荐数排列。
1、《代码大全》 史蒂夫·迈克康奈尔
2、《程序员修炼之道》
3、《计算机程序的构造和解释》
4、《算法导论》
5、《重构:改善既有代码的设计》
6、《设计模式》
7、《人月神话》
8、《计算机程序设计艺术》
9、《编译原理》(龙书)
10、《活着》
❷ 学校培养的程序员和培训机构培训的码农有何区别
其实如果愿意的话,也可以去培训机构那里多学一点东西,虽然是说多花点钱,但是只要是花了,钱多了你就心疼了,学的时候也就认真的学了,学院培养的程序员当然好,但是要看自己有没有这方面的学历能不能学好。
❸ 刚刚培训出来的程序员,该怎么找工作
不知道你是在什么机构培训的,现在好多机构在课程技术的时候都是有一段时间是专门对学生进行项目实训的,有了项目实训的经验,走出培训机构的时候会比较好找工作。
如果自己只是单纯地学习了技能,没有实战经验,程序员刚毕业并不是很好找工作。这时候就要降低要求,不要对工资有太高的要求,别人要六千,你要三四千就可以,主要是要先工作积累经验。等你有了经验就可以跳槽了。
❹ 如果想从事程序员工作只能去培训机构了吗
从个人工作经历看,抄从事IT行业要有基本知识,基本知识可通过大学学习,专业机构培训和自学三种途径,培训机构培训后培训机构可帮你推荐面试,没有基本专业知识的话企业肯定是不要的。 来自职Q用户:匿名用户
培训机柜的都是不靠谱的 快餐培训。 来自职Q用户:昂超
❺ 从培训机构里出来的程序员真的没有好出路吗
想学IT的朋友,无非是为百了找一份高薪工作!不管是自学还是培训都会有各种各度样内的声音出容现,自学没项目经验,培训机构坑人等等,想决定自己适合自学还问是培训,可以先自己找些资料自学,或者答去优就业试听一下基础课程,不管自学还是培训 ,只版要自己学会了,能权找工作就好!不要刻意管别人说什么!
❻ 为什么公司现在喜欢招聘培训机构出来的程序员
而且现在相当多的公司,会选择在培训机构培训过的程序员,很多公司会去到相关培训机构做双选会,直接挑选适合本公司职位的学员,即能快速了解此人的技术水平,还能很直观的了解到他的学习水平。没有一个企业喜欢学习能力差的人,你可以在进公司的时候技术并不是很牛,但是你需要是一名学习能力强的人,这样的你才不会被淘汰。
再来说说培训机构出来的,培训机构出来有三种,一种是科班出来后进入培训机构再学习的,一种是非科班毕业后没多久进入培训机构的,还有一种是已经在别的行业干了几年后进入培训机构学习的。非科班进去培训机构的又可以分两类,一类是培训之前自学好久,一种是零基础培训。零基础参加培训的,来到培训机构就是为了入行,在培训机构能够帮助他们学习基础知识,能够帮助他们快速了解IT行业,能够帮助他们快速完成转型。
当然,不可否认的是,培训出来的人也是层次不齐的,就如我们上学时期,同一班级,同一老师,就有人会在考试时考100分,有人只能考50几分。道理都是一样的,师傅领进门,修行靠个人。你若是认为,进入培训机构学习完毕后就能工作,那是错误的认知,培训机构只是为你提供学习的平台,让你学到基础知识、学到最新IT开发技术或开发语言,学习期间做各种项目,从而贯通运用所学知识,拥有相关工作经验。
目前各个公司之所以喜欢招聘培训机构出来的程序员,是因为,此程序员拥有快速学习能力,进入公司可以快速上手,而且现在参加培训的人员,学历也越来越高,更适合公司储备人才需求,再加上现在很多名校毕业的学生,多数眼高手低,不能快速上手工作,薪资要求还高,故公司并不喜欢这样的人员。
不过,曾经有公司的HR跟小编说,有些公司不喜欢要培训机构出来的程序员,一是因为基础知识不扎实;二是简历作假太严重,现在社会简历不包装真的不好找工作,但是过度包装就会引起用人公司的反感,所以简历需要适当包装,上面所写的项目一定要是自己所会的知识,有位HR就向小编说过,有次面试,问求职者简历上面的项目运用哪些知识,支支吾吾的,并不能详细回答,这样就太过明显,就算简历再华丽,也不会被公司所录用了。
那么现在看来,公司录不录取你,不会看你是否参加过培训,完全取决于自身的技术能力及学习能力,相反,你若是在培训期间,成绩优异,还会成为面试的加分项,毕竟这样非常直观的体现出你的学习能力。
❼ 为什么很多公司不要从IT培训机构出来的程序员
一方面是,现在的培训机构参差不齐,作假现象严重;
现在所谓的IT培训机构大量充斥着市场,很多更是没有底线的鼓吹培训几个月,月薪多少钱,吸引了大量的小白涌入培训机构。某些培训机构的出发点只是怎么快速的聚拢钱财,而所谓的来学习IT的人,更多的是因为,被这些机构鼓吹,钱多好就业,而进入机构学习的。实际的学习过程,更是只是注重怎么应付面试,并没有将技能落到实地。
更何况,程序员更是吃技术饭的,小白,菜鸟和大神的差别是在太大,工作效率,成果更是不可相提并论。这也是为什么有时候,公司宁可付出双倍的薪资招聘富有经验程序员,而不愿意要培训机构出来的程序员的原因。
❽ 我是一名JAVA程序员,在培训机构培训了两年,现在要出去了,但我想自己找一份工作,应该怎么做
先将自己定一下位来,觉得自己现在自能做什么,然后去一些招聘公司投些简历,注意对同一个公司投简历不要多投,会让公司看出你自己没有定准位置.给那些大公司投简历也完全可以,只要符合人家的要求应该就会获得面试或者测试的机会(一份答卷),有时第一次面试或答卷成功的话,有可能还会有二次面试,就是直接与项目经理等你未来上司谈话,只要平时多注意基本的知识,把那些容易混淆的,不易记忆的等都看一看,让人感觉你基本功很扎实,配合着你自己的独立项目实例,应该就有可能会过关......嘛,祝你好运吧
❾ 作为一个从培训机构出来的Java程序员,我非常迷茫,在这个程序多如狗的年代,找个工作如同大海捞针,
很多企业确实会对培训机构出来的人抱有偏见。因为现在遍地都有培训机构,每个内月都有大批的人毕容业,培训机构招生是不设限的,导致毕业生良莠不齐。我们公司招聘过程中遇到了太多这样的人,简单的题都无法完成,但是我们还是对这类人抱有希望的,这其中不乏高学历、跨界人员,通常跨界的人发展潜力会比计算机专业的人要好。如果题主技术水平还可以就不需担心,只要坚持总会找到工作的,找工作的同时也要不断的学习,提升自己。另外,一定不要简历造假,这是任何一个公司都很忌讳的事。 来自职Q用户:谢先生
首先你需要把自己学到的东西系统的整理一遍!面试自信一点儿!一般没啥的! 来自职Q用户:唐先生
❿ 毕业后想招程序员的工作,有必要去培训机构培训吗
不进机构难道你想自学吗,你以为自学可以更省钱吗,你以为自学可以更好内的激发自己内在容的潜能吗,你以为自学很简单吗?别天真了!
自学除了浪费你的时间和金钱最重要的是消费你的耐心和潜能!没有错,本来一腔热情想好好学习进入IT行业的,可是自学一段时间后,枯燥乏味包围着你让你开始怀疑自己,否定自己……自学能成功的真的太少了,但是也不是不存在,如果你有自信能自学成功当然不会阻拦你,只是不喜欢你把自己未来的理想这样子荒废了,。