职业规划怎么写,相信很多朋友们对这个问题很感兴趣,下面给大家介绍一下。第一部分,前言即总论;第二部分,自我分析,包括业余爱好、性格、价值观、专业技能等;

不过,嵌入式学习要钱,这是肯定的,最起码,你自己手边要有个基本的嵌入式平台,不过好在这个并不贵,一个arm9的开发板,目前也就500多元,淘宝上就有卖的,买块回来自己做练习,应该不难。

如果要我给你职业路线建议,我还真想建议你就走这条路子,原因很简单,工作好找,进去之后的门槛并不高。你花点时间,自己钻一下数字电路等前面说的几本书,对于底层的汇编看看,主要看看arm的和51系列的就好了,也不用看太精,嵌入式程序大段大段的都还是C,仅仅部分端口动作,为了协调时序,采用用到汇编,而且,用得最多的还是NOP指令,就是强制CPU延时,这个很容易的。

最关键的是,嵌入式设备在很多工业设备制造公司都有用到,他们也需要大量的人才,并且,我们都知道,公司里面,普遍学历最高,年龄最低,门槛也最高的就是IT软件企业,这些工矿制造企业反而门槛比较低,进去之后,老板也比较看重人才,因为制造业的产品一般立竿见影,开发一套设备半年就开卖,不像软件,一般要开发到3.0版才有市场,呵呵,老板看得到钱,自然也比较看重赚钱的人的。

虽然你是软件人员,上述硬件知识没有学过,不过就我学习的经验,其实反而门槛还低,甚至比学个Java的框架来得还容易,建议你可以考虑从这条路上走。

嗯,先说到这里吧。有问题继续探讨。

最后我还是要劝你一点,生活不是PK,生活也不是孤注一掷,没必要什么时候都把自己逼到绝境,想成功其实很容易,只要制定一个目标,一个计划,然后按部就班走就好了,不需要找锥子扎自己屁股的,那是自残,呵呵。

自然一点,看开一点,少给自己太大压力,看书累了,看看电视也没啥,出去走走也没啥,没事的时候,眼睛从计算机屏幕上转一下,看看身边有没有合适的女孩,谈谈朋友也不错,如果那个错过了,才是一辈子的遗憾。

成功的道路,应该是很快乐的,如果都是眼泪和汗水,即使做到百万富翁,又有什么意思?

zc530.cOm编辑推荐

程序员学什么样的知识才能赚钱[3]


你发现什么没有,其实C程序员如果做企业数据应用,一般需要具有编译原理的知识,我们一方面要实现用户的业务,还需要写一套Java这类脚本语言给用户做二次开发用,说白了,就是我们自己实现一套lamp体系,呵呵,这不是又费马达又费电嘛,因此,我前文说,做数据库应用,最好直接用Java,直接用C,成本太高,而且不容易满足用户需求。

说到这里,你又发现什么没有?C语言之所以难学,并不是C本身难学,而是如果要成为一个C程序员达到实用级的地步,需要掌握很多方面的知识,这些知识,书上可能有,也可能没有,没有的,就要靠钻研,靠实战,靠自己去想通,因此,很难通过K书成为C程序高手的。建议你学习时,关注C这个特点。

做游戏和嵌入式两种呢,我可以根据经验讲一点:

如果从事游戏的话,很多时候是和图形打交道,目前的游戏,趋向是大型化的视频图形游戏(包括大型网络游戏、电视游戏机的游戏)和小型化的终端游戏(手机类、PDA游戏),这两种比较好卖,至于中型规模的PC游戏,由于盗版太严重,已经很少人做了。仅仅是一些游戏公司为了宣传自己,会出一些经典的大作。

嗯,硬件厂商为了宣传自己的新板卡,如新的图形显示卡,会拿出钱来,请游戏公司做一些针对该型板卡特定优化过的游戏,以刺激广大用户对硬件升级换代,这也是一条财路,很多游戏,在面市之前,就已经从硬件厂商获得了足够的利润,并不需要从零售市场获取利润。我们在电脑市场看到,几乎每出现一款游戏大作,就带来一次显卡,甚至PC机硬件的升级换代热潮,其实背后就是这个故事。

不过呢,游戏引擎我还是建议你最好不要去做,因为做这个成本太高了,很少有公司去做,而这些公司,一般都是欧美公司,对人员要求很高,轻易不会招收亚洲国家的程序员,因此,学这个好比屠龙之技,看起来是很酷,但是实际上工作机会很少,甚至不比中彩票来得高。

另外,做游戏引擎不好玩的,因为现在也都细分了,做引擎的公司一般自己不出游戏,最多出点Demo,他们就是提供高性能引擎,而不是好玩的游戏,而游戏公司,则是购买引擎,然后开发具体的游戏内容。比如Quake和虚幻的引擎,就很多家游戏公司买去做自己的游戏。其实很多游戏引擎,目前也提供脚本语言,即里面用C实现了另外一套语言。

游戏公司其实主要是美工建模,绘图,企划编故事情节,程序员反而很少,更多地是使用脚本语言,在引擎基础上做二次开发而已。因为游戏公司就是做好玩的游戏,至于具体用什么技术,其实他并不是很关心。说不定,如果你哪天进个游戏公司,会发现自己又见到Java语言这个熟人,呵呵,那个时侯会不会有欲哭无泪的感觉?

其实这也是社会分工的不同,好的引擎程序员,更多的是个数学家,强调逻辑思维,你让他去写个美少女梦工厂,如何抓住少女的心,还不如杀了他,呵呵。

而做嵌入式系统,其实也有诀窍。嵌入式系统,目前我们看到的手机应用仅仅是很小很小的一类,更多地,嵌入式系统是应用到工业控制领域,从大型机械设备的控制,飞机、汽车轮船的控制系统,甚至到十字路口一个红绿灯,里面都是嵌入式系统。

目前有个现象,嵌入式好赚钱,很多学软件的同学都想找嵌入式工作,但是,毕竟在这个领域里面,给手机做游戏的就那么几家公司,不可能吞下所有的人才,更多的是需要自动化控制人才,因此,这类软件转嵌入式的人,进去一般都有点缚手缚脚的感觉,总觉得知识上欠一点,又不好补。

其实,嵌入式应该是最简单的,比如说驱动,就很多硬件厂商要人,而驱动其实就是做一套打口读口的api,很简单,最多做的时候注意点,别用太复杂的算法,保证计算速度而已。

但是你注意到没有,嵌入式其实主要是和硬件打交道,硬件知识必不可少,至少,计算机组成原理,数字电路,模拟电路要很熟,最起码,你要知道开关量和模拟量,要知道集成电路的选通信号和真值表,对于地址表的编址要很敏感,对于常用的集成电路块的特性,比如8235等,要比较了解。否则,是写不好嵌入式程序的。

因此,我以前有笔记说,嵌入式开发,很多时候软硬件不分,我见过的很多嵌入式工程师,其实也能自己画一些简单的电路板,至少,他在设计时,知道哪些功能硬件来做更合适,而不是一味的走软件路子。

程序员学什么样的知识才能赚钱[1]


如果我们要讨论C的学习路径,恐怕要失望了。因为C和Java语言并不一样。并没有前人规划好的必然成功之路。

Java语言由于面向应用面相对狭窄,框架模板众多,最重要的,其主要工作方向比较确定,就是做基于网络的跨平台数据应用为主,因此,其发展方向很容易确定,学习路线也比较好规划。

但C显然不是这样,C应用面太广,可以说,汇编能做的事情,C就能做,甚至做得更好,也就是说,我们能想出来的计算机软件应用,其实都可以由C来实现,仅仅是成本高低而已。

而不同的应用,除了计算机软件编程知识之外,还需要很多应用相关的知识,这就造成了C程序员往往也需要成为自己应用方向上的半个专家,这就比较麻烦了,这么多的应用方向,写游戏的知识储备,和写驱动显然不一样,与写操作系统和编译器的方向又显然不一样,因此,很难说一个C程序员需要掌握哪些知识,才够用。

以我自己为例子,我做程序差不多快20年了,做C也超过15年,做过游戏,工业控制,电子教育,网络传输等各种软件,我总结自己的知识储备,也仅仅觉得自己在数据传输方面有一点心得,并且对于C和C++语言怎么实现0Bug程序设计,有点经验而已,真不敢说自己什么都会。

另外,C语言之所以难学,并不是说它自己多难,真正的问题在于,C语言偏底层,只要我们一做应用程序,或多或少都需要调用很多操作系统相关的api来完成工作,Windows下,如果我们不懂Win32API,则很难写出合用的代码,C语言玩得再熟都不行,Linux下对于各种系统和应用级api,也需要不断查询man,否则根本写不下去。所以,要想成为C程序员,至少要学习操作系统,通常,至少应该把Windows和Linux常见的api学一遍。MFC是Win32API的C++框架表示,最好也学一点。

其实这已经带出另外一个话题,现代开发,C和C++一般不分,C++到了函数内部,其实是C,而C呢,有很多特性写程序不够方便,也需要使用很多C++的特性,如默认参数,如引用等等。所以,学习C,最好和C++套着学,都看看。呵呵,这已经是两门语言了。

还有一个问题,不管是C还是C++,总是各个具体的操作系统上开发,Windows和Linux有差异性,很多库函数,常量定义都不一样,因此,C和C++一般说来,很难做到程序通用,需要使用大量的编译宏,这需要了解语言之外的东西,即编译器的很多特性,不过,很可惜,关于编译器特性,目前的资料很少,我很多都是摸索的。

在公司里,你会是什么样的程序员?


马上又到了拼命投简历的季节了,很多程序员跃跃欲试,或者左右彷徨,你对入职考虑好了吗?企业为什么会选择你?企业,需要什么样的人?

做过N多的项目,也做了N个项目的负责人,现在苟且当作一个team的组长。在这我想与即将踏入软件开发行业的学弟们探讨一下,企业到底需要什么样的人,你把好面试官、HR的脉了吗?

首先,我想说的是:态度决定一切。不要自以为能力至上,换个思维想想,作为领导,你需要一个愿意配合的员工还是一个居功自傲的员工?在平时的生活中,态度能体现到每一个细节。一个态度不端正的人,是企业最深恶痛绝的,因为他不仅影响自己的效率,而且还会传染给别人,当大家一起消极怠工。干活不仔细,上司打一下才挪一下,不守时,不爱与人沟通,等等。

还有一点,设计编码能力很重要,但是不要把它作为工作的全部。与人沟通的能力比设计编码能力要重要的多!程序员大都很内向,这没关系。但是有的人内向到无法与人沟通,自己做的设计人家无法理解,用户提出来的需求他也无法理解到位,结果是,费了牛劲干活,领导照骂不误。须知再牛的东西,无人使用,那也是一陀。很多程序员缺乏沟通的技巧,更缺乏用户体验友好性的考虑。大家仔细想想,Powerpoint这样的软件,技术先进吗?编程难实现吗?不难。但是人家是很成功的一个软件,靠的是什么?靠的是可用性,它在每个细节都考虑到了用户的感受。说到底,用户友好性跟不上,即便你用了多牛的搜索引擎,用了什么MVC,用了云计算,用户也不会买账。用户都走了,你留着一堆高技术管什么用呢?

与这些相关的是,程序员需要有亲和力,怎么讲?要与用户打成一片。如上说的有点偏颇,但现实就是这样。我们大部分的软件还是实际的、触摸得到的工程应用,而非实验室的作品。很多程序员对界面技术轻蔑之致,觉得自己是个100%的程序员,不用关心界面的展现,根本不关心用户。用户提出怎么怎么不好用,他会轻蔑的责怪用户弱智,或者不懂技术。请问企业要这样的程序员干嘛?!举个例子,用户提出需求让你添加一个论坛的帖子列表,不负责任的程序员可能就会一下子列出1000多条帖子,不做分页,也不加滚动条。受到质问时,他还能怔怔有词,和这样的员工一起工作,你难受不难受?

好的程序员应该是谦卑的,这是中华民族的美德。很多程序员很不忿,比较愤青,动不动就骂人:联想很垃圾,baidu很shit,用户很弱智,如此等等。不善于倾听,别人没说完就开始不是这样子的.盲目自大,有很多程序员在遇到错误时总是坚信自己的代码正确,因此而怀疑STL,怀疑spring,甚至怀疑编译器、浏览器,这些怀疑显得可笑。发现问题时,程序员应该首先怀疑的是自己,而结果,基本上也就是这样。不乐于吸收好的东西,即便拿过来了,也是急于换个标签,挂上自己的大名,一点都不诚实,这样的人多了,我们的民族产业能好吗?

很多人会很纳闷,为什么不提开发能力?当然需要能力,但是能力再高,你能高到哪去?积极的态度可以跟你一辈子,能力能跟你一辈子吗?几年后,再出来一个F语言,再来一套新框架,你还能赶上趟吗?

如何从优秀的程序员成为伟大的程序员[4]


11、公司需要的时候总能出现

这如同等价交易。如果你为一家伟大的公司工作,他们会给你足够的弹性。公司不会限制你如何工作,不限制你开始或结束的时间,也不会限制你什么时候停下来歇歇。公司会鼓励你在休息时间做做操,甚至会在你和团队成员出去吃饭的时候为你们买单在繁复大量而紧张的工作后,公司会放你几天小假。诸如此类。

然而,毫无疑问,与前面的这些美事儿随之而来的是责任。如果赶上时间紧还得出活儿,伟大的程序员则建议你即使在周末也要加班。即使干得再晚也得把活儿干完。你看,伟大的程序员是要为自己的创作负责的。这虽不是必需的,但这是伟大程序员的标志之一。有些人只想朝九晚五的上班,他们可能不错,但是成不了伟大的程序员。伟大的程序员是团队中干到最后的那个,把作品视为完美的艺术,与团队成员亲如一家。

12、衣着职业化

你永远也不知道一个客户会什么时候突然拜访。你也永远不会预知什么时候突然要参加一个会议,不是每一件事都在计划中的。你得随时准备好展现自己。一个好的程序员周一到周五穿着普普通通,甚至有可能穿牛仔装和运动鞋来上班。在某些周五,他们穿着T恤,短裤和运动鞋出现。当一个客户突然在周五出现,要谈一个大项目,你没法把衣衫不整的他一块儿叫上。

一个伟大的程序员周一到周五都穿着职业化,衣服也能带来成绩。如果你不在意穿着,你也会因为穿的太奇怪而得不到晋升。毫无疑问,套装和领带还是很能提升你自己的。我向你保证,一套得体大方的西服套装会让你在今年就觉的物超所值。

13、沟通能力

这是另外的判定条件。这世上有太多优秀程序员,却没几个伟大的程序员。为什么呢?因为大多数程序员不善交流。交流的层次很多:从发电子邮件、参加小型SCRUM开发小组会议到大一些的主管会议,水平逐渐提升。这样你就能在数百人参加的会议上自如地展示你的软件。在会议上你不需要有好演技,但是至少要清晰明了地表达你的观点。你的沟通能力越强,你的职业道路就会走得越远!

概要:想要成为管理人员,你的沟通能力得分至少要打到9到10分。甚至你在会议上只讲了几分钟,或只一个小汇报,你都需要非常好的表达能力。别只是在你的每天的工作日志寥寥写上修补1371个bug,你要做的是尽可能描述清楚如何在这么艰难的情况下解决了问题。阐明你的方法,说明你如何保证这个bug不再出现。你就不再为你的日志发愁了。这会是你向经理展示自己的精彩演出。

14、目标设定的技巧

好的程序员日复一日的做你安排给他们做的事情,贯穿始终。他们并不往远看,不对明年、5年甚至10年后作打算。一些好程序员虽然知道自己想要什么,却没有具体计划去实现。伟大的程序员则给自己订立年度、未来5年的目标,而且大概预期到自己10年后的发展。

伟大的程序员有了目标不会只是想象,他们会具体实施。他们会根据具体情况,在预期的时间做具体的事情。他们会详细地制订明年的计划,包括要上的课程、要完成的项目甚至包括他们需要建立的人际关系。

程序员修炼之道 你的知识资产


我们喜欢把程序员所知道的关于计算技术和他们所工作的应用领域的全部事实、以及他们的所有经验视为他们的知识资产(Knowledge Portfolios)。管理知识资产与管理金融资产非常相似:

1. 严肃的投资者定期投资——作为习惯。

2. 多元化是长期成功的关键。

3. 聪明的投资者在保守的投资和高风险、高回报的投资之间平衡他们的资产。

4. 投资者设法低买高卖,以获取最大回报。

5. 应周期性地重新评估和平衡资产。

要在职业生涯中获得成功,你必须运用同样的指导方针管理你的知识资产。

经营你的资产

l 定期投资。就像金融投资一样,你必须定期为你的知识资产投资。即使投资量很小,习惯自身也和总量一样重要。在下一节中将列出一些示范目标。

2 多元化。你知道的不同的事情越多,你就越有价值。作为底线,你需要知道你目前所用的特定技术的各种特性。但不要就此止步。计算技术的面貌变化很快——今天的热门技术明天就可能变得近乎无用(或至少是不再抢手)。你掌握的技术越多,你就越能更好地进行调整,赶上变化。

3 管理风险。从高风险、可能有高回报,到低风险、低回报,技术存在于这样一条谱带上。把你所有的金钱都投入可能突然崩的高风险股票并不是一个好主意;你也不应太保守,错过可能的机会。不要把你所有的技术鸡蛋放在一个篮子里。

4 低买高卖。在新兴的技术流行之前学习它可能就和找到被低估的股票一样困难,但所得到的就和那样的股票带来的收益一样。在Java刚出现时学习它可能有风险,但对于现在已步入该领域的顶尖行列的早期采用者,这样做得到了非常大的回报。

5 重新评估和平衡。这是一个非常动荡的行业。你上个月开始研究的热门技术现在也许已像石头一样冰冷。也许你需要重温你有一阵子没有使用的数据库技术。又或许,如果你之前试用过另一种语言,你就会更有可能获得那个新职位……

在所有这些指导方针中,最重要的也是最简单的:

提示8

定期为你的知识资产投资

目标

关于何时以及增加什么到你的知识资产中,现在你已经拥有了一些指导方针,那么什么是获得智力资本、从而为你的资产提供资金的最佳方式呢?这里有一些建议。

l 每年至少学习一种新语言。不同语言以不同方式解决相同的问题。通过学习若干不同的方法,可以帮助你拓宽你的思维,并避免墨守成规。此外,现在学习许多语言已容易了许多,感谢可从网上自由获取的软件财富(参见267页)。

2 每季度阅读一本技术书籍。书店里摆满了许多书籍,讨论与你当前的项目有关的有趣话题。一旦你养成习惯,就一个月读一本书。在你掌握了你正在使用的技术之后,扩宽范围,阅读一些与你的项目无关的书籍。

3 也要阅读非技术书籍。记住计算机是由人——你在设法满足其需要的人——使用的,这十分重要。不要忘了等式中人这一边。

4 上课。在本地的学院或大学、或是将要来临的下一次会展上寻找有趣的课程。

5 参加本地用户组织。不要只是去听讲,而要主动参与。与世隔绝对你的职业生涯来说可能是致命的;打听一下你们公司以外的人都在做什么。

6 试验不同的环境。如果你只在Windows上工作,就在家玩一玩Unix(可自由获取的Linux就正好)。如果你只用过makefile和编辑器,就试一试IDE,反之亦然。

7 跟上潮流。订阅商务杂志和其他期刊(参见262页的推荐刊物)。选择所涵盖的技术与你当前的项目不同的刊物。

8 上网。想要了解某种新语言或其他技术的各种特性?要了解其他人的相关经验,了解他们使用的特定行话,等等,新闻组是一种很好的方式。上网冲浪,查找论文、商业站点,以及其他任何你可以找到的信息来源。

持续投入十分重要。一旦你熟悉了某种新语言或新技术,继续前进。学习另一种。

是否在某个项目中使用这些技术,或者是否把它们放入你的简历,这并不重要。学习的过程将扩展你的思维,使你向着新的可能性和新的做事方式拓展。思想的“异花授粉”(cross-pollination)十分重要;设法把你学到的东西应用到你当前的项目中。即使你的项目没有使用该技术,你或许也能借鉴一些想法。例如,熟悉了面向对象,你就会用不同的方式编写纯C程序。

学习的机会

于是你狼吞虎咽地阅读,在你的领域,你站在了所有突破性进展的前沿(这不是容易的事情)。有人向你请教一个问题,答案是什么?你连最起码的想法都没有。你坦白地承认了这一点。

不要就此止步,把找到答案视为对你个人的挑战。去请教古鲁(如果在你们的办公室里没有,你应该能在Internet上找到:参见下一页上的方框)。上网搜索。去图书馆。

如果你自己找不到答案,就去找出能找到答案的人。不要把问题搁在那里。与他人交谈可以帮助你建立人际网络,而因为在这个过程中找到了其他不相关问题的解决方案,你也许还会让自己大吃一惊。旧有的资产也在不断增长……

所有阅读和研究都需要时间,而时间已经很短缺。所以你需要预先规划。让自己在空闲的片刻时间里总有东西可读。花在等医生上的时间是抓紧阅读的好机会——但一定要带上你自己的杂志,否则,你也许会发现自己在翻阅1973年的一篇卷角的关于巴布亚新几内亚的文章。

批判的思考

最后一个要点是,批判地思考你读到的和听到的。你需要确保你的资产中的知识是准确的,并且没有受到供应商或媒体炒作的影响。警惕声称他们的信条提供了惟一答案的狂热者——那或许适用、或许不适用于你和你的项目。

不要低估商业主义的力量。Web搜索引擎把某个页面列在最前面,并不意味着那就是最佳选择;内容供应商可以付钱让自己排在前面。书店在显著位置展示某一本书,也并不意味着那就是一本好书,甚至也不说明那是一本受欢迎的书;它们可能是付了钱才放在那里的。

提示9

批判地分析你读到的和听到的

遗憾的是,几乎再没有简单的答案了。但拥有大量知识资产,并把批判的分析应用于你将要阅读的技术出版物的洪流,你将能够理解复杂的答案。

与古鲁打交道的礼节与教养

随着Internet在全球普及,古鲁们突然变得像你的Enter键一样贴近。那么,你怎样才能找到一个古鲁,怎样才能找一个古鲁和你交谈呢?

我们找到了一些简单的诀窍。

l 确切地知道你想要问什么,并尽量明确具体。

2 小心而得体地组织你的问题。记住你是在请求帮助;不要显得好像是在要求对方回答。

3 组织好问题之后,停下来,再找找答案。选出一些关键字,搜索Web。查找适当的FAQ(常见问题的解答列表)。

4 决定你是想公开提问还是私下提问。Usenet新闻组是与专家会面的美妙场所,在那里可以讨论几乎任何问题,但有些人对这些新闻组的公共性质有顾虑。你总是可以用另外的方法:直接发电子邮件给古鲁。不管怎样,要使用有意义的主题(“需要帮助!!!”无益于事)。

5 坐回椅子上,耐心等候。人们很忙,也许需要几天才能得到明确的答案。

最后,请一定要感谢任何回应你的人。如果你看到有人提出你能够解答的问题,尽你的一份力,参与解答。

何谓程序员?何谓中国的程序员?


程序员,曾经是很多人尤其是计算机初学者为之崇尚的一个职业,仿佛就是理想、激情和事业的象征,从此就开始了IT白领人生。计算机技术发展之初,几乎就是一个个人英雄主义时代。一个天才的程序员,几乎就可以主宰一个计算机时代,创造出无数奇迹和梦想。

今天,计算机技术的发展日新月异,技术朝着愈加复杂和简单的两个看似矛盾其实一致的方向发展。计算机技术越加普及,无数非计算机专业的人群,出于爱好或者生存的需要,也加入了这个程序开发大军,并且都称之为程序员。

软件技术的发展,已经进入了一个大分工、大整合的时代,由此导致了软件开发工作的分层和分类越加细致复杂,同为程序员,彼此之间工作的技术含量可以说有天壤之别。系统软件、应用软件,是一个大的分水岭,几乎大多数程序员,都在应用软件这个层次进行开发,国内的程序员更是几乎全部如此。

既然是应用软件,就必然要和实际应用结合,而实际应用,是非常复杂多变的,尤其是具有中国特色的国内应用。于是乎,大多数程序员都在为开发应用层面的软件忙得不亦乐乎,财务软件、ERP、CRM、OA等等,几乎成了国内软件开发的主流方向,更不用说电信、石化、铁路、电力等具体行业应用软件的开发了,这些早已被称为项目了。国外的应用软件,除了以上业务应用之外,尚且还有像CAD、3D等专业领用的软件,具有一定的核心技术。

很多工作了多年的程序员们,在回首往事的时候突然发现,自己依然是一个辛苦的打工者,一个IT行业的苦力。反思一下,我们这些自认为程序员的工作者,其实是在核心技术的外围做一些表面工作,和那些非软件开发人员相比,我们觉得自己有技术,其实我们到底掌握了多少核心技术呢?现在的很多程序员,连数据结构、编译原理、操作系统等这些基本的知识都掌握得模棱两可,天天跟着老外的屁股后面追捧所谓的新技术、新框架。其实,又有多少是我们自己的呢?作为JAVA程序员,经常听到很多人自称精通Spring、Struts、Hibernate等主流框架,并有大型项目的开发经验,其实我们只不过比那些初学者多干了几年,使用这些框架更加熟练而已。国内软件行业的面试经常有此类现象,一个面试者可能这次面试不合格,但是他回去看一下书之后,再来面试,很可能就通过了。为什么?因为我们的面试太初级,太表象化。

我们经常接触IBM、微软等公司的面试,他们一般情况下是不会考核面试者具体掌握了什么框架、什么语言的,一般都是考核的面试者最基本的逻辑思维能力和分析判断能力。这也说明了,同为程序员,其间的差别是如此之大。

作为一名程序员,尤其是国内的程序员,应该对自己有一个清醒的认识,不要被表面的感觉所迷惑。到了这个时代,不是说程序员已经失去了光彩,而是我们所从事的层次,技术门槛已经大大降低,很多人处于同质化竞争。

怎么办?很多人说软件行业是个辛苦活,国内的很多软件公司更把程序员当牲口使用。其实,根本上还是怪我们自己没有很好的反思和调整。一方面,如果对技术真的有浓厚兴趣和激情,那就不妨向软件的底层核心技术迈进,另一方面,如果觉得自己真的缺乏这方面的潜力,那就努力适应国内环境,实现技术与应用的完美结合,争取向公司的中高层发展,如果不给与机会,那就自己创业,选择好技术和市场的切入点。

此外,一名优秀的程序员,一定不能是一个唯技术论者,如果持这样的观点,即使专心做个技术专家,也会存在发展障碍。微软的例子,sun公司的例子,都生动地说明了技术与市场的辩证关系。

当然,每个人的成败观是不一样的。如果始终把技术追求放在首位,追求技术完美的境界,并以此为乐,也未尝不是一道美丽的风景。

什么样的工作方式才能获得领导认可?


身在职场,我们希望自己的工作可以获得上司,或者是同事的认可。在获得对应的薪酬同时,他人的认可更能让我们提升满足感。而这种满足感可以带给我们更多的工作动力和工作热情。

那么到底什么样的工作方式才能获得领导认可呢?小编建议不妨来了解以下方式:

会保持有效沟通,避免无效努力

罗振宇在《奇葩说》里说到一个观点:职场上最没有前途的一种人,就是反馈黑洞。

什么叫反馈黑洞?

直截了当地说,工作没有做到位,领导安排了一件事,执行的人无法做到及时有效的反馈,往往没了下文。

这样的后果很可能是:

工作完成的质量不高,往往达不到领导的预期,甚至是南辕北辙;

延误了工作进度,造成直接损失;

你的业务能力在领导心目中大打折扣,认为你难堪大用。

因此,这样的人往往在职场上没有太好的出路,也没有什么前途。

要想把工作做到位,很重要的一点就是:首先要做到沟通到位,确保及时有效的沟通。

在许多人看来,实干才是最重要,提到沟通,总感觉是在胡扯和浪费时间,那是因为你根本就不懂如何做好工作上的沟通。

汇报工作有结果

还是那句话,没人在乎你努力的过程,职场只关注结果。

在跟领导汇报工作的时候,自己非常努力的去描述过程希望领导能够理解自己为什么工作没有做好,但这样往往换来的是一顿批评教育。

对于领导来说,结果不好,过程在好也是无用,你在描述过程对于领导而言就是在找借口。所以对领导进行工作汇报直接说结果,如果领导想知道过程他会问的。

工作到位的极致:可以替别人擦屁股

真正能让领导记住你的,真正能体现你价值的,真正检验你工作是否到位的,就看你是否拥有未雨绸缪的意识,转危为安的能力。

有人会问,怎么理解这句话?分为两部分看。

第一部分,就是在领导没有安排你做的时候,你根据工作的性质、发展和平日里对领导的了解,已经在做一些准备工作了。比如说,领导在开会的时候说,我们接下来可能要做新的业务领域,但由于某些原因搁置了。

但是,这并不意味着公司没有做这项新业务的需求和想法,那么你应该提前做一些准备工作,学习这方面的业务知识,培养你的专业素质。只有准备做到位,你才能将真正的工作做到位,上手也快,质量也有保证。

第二部分,就是说你所负责完成的工作,最好能有应急方案,或者说有一个B计划。当然,这一点并不是适用所有的工种,但道理是相通的,就是你要有能够为自己,甚至为同事,为领导擦屁股的能力。

俗话说,锦上添花易,雪中送炭难。

一个能制造惊喜、扭转局面的员工,你会竖起大拇指,发自内心地对他说:真到位。

小编认为这是一个人工作做到位最极致的状态,虽然很难,但只要有那么一次两次,你就能迅速脱颖而出。

请示工作时直接说方案

在你请示工作的时候直接说你采取的几种方案就可以了,千万不要让领导帮你分析或是给你出主意,否则这事情交给你还有什么意义。

一定要事先准备好你认为可行的几种方案,把这几种方案详细地说给领导听,然后你再选取一套非常合理、有效的方案,领导听了你这些之后,说不定他自己心里都比你有信心,一定要记住,千万不要让领导给你做选择。

总结工作时直接说重点

总结工作最能反映一个人的能力,不仅是一个人的表达能力和逻辑性,也是一个人能够对工作结果进行合理分析,进而提出一个有效的解决方案。

总结工作时要按照主次关系依次说,把最重要的事情放在最前面,不重要的事情放在后面,这样以免出现混乱。

有的老板曾经说过,一个员工他的能力再强,如果人品不行是不会得到重用的。

换句话说,如果得不到领导的认可,就不可能获得升职加薪。

所以想做事先学会做人,学会做人在学会如何做事。

程序员你真的只是程序员吗[1]


你是不是感觉标题有点矛盾啊,是啊,程序员当然就只是程序员而已嘛,还会有其他什么吗?

No,No,No,如果你以前是如此认为的,那看完这篇文章后,请从此打消这个念头,因为你要改变成一个不一样的程序员(怎么还是程序员?)

虽然我工作经验也就6年左右,但经历了很多,也自己创业过,也是从一个初级程序员走起,因为看的比较多了,某些东西也普遍存在着很多程序员身上,希望自己的经验能帮助你们。

当刚踏入程序员这条路的时候,有幸为一家公司开发一个大型的电子商务网站,因为这篇领域当时还算刚刚起步,自己的编程能力还不太好,所以做起来就比较吃力,每天重复着做完PM给的工作,但是做了大概几个星期,我发觉某些地方真的不合理,但自己又仅仅是一个程序员而已,怎么办呢?我还是按照PM的任务一步一步来做,私下里我用了大量的时间去尝试着我的做法,在接下来的几个星期,我试着跟我的PM进行沟通,他也发觉不错,所以一并写了方案提交给上级领导,很好的是,我们的领导发觉建议还不错,所以改变了原先的策略,对我们的网站原先的设计进行了彻底的推翻,一套新的理念就此诞生了。

这只是一个小例子,并不是炫耀自己的能力,我只是想说,程序员,你其实不仅仅是worker,更应该是Ideaer。当你选择程序员这条路时,如果你仅仅为了工作而选择的,我想你的人生真的很灰暗,为什么这么说呢?我面试过很多人,大多都是从培训中心出来的,虽然我也是从那里走出来的,不过我当时是为了学习编程而去培训,但现在更多的人会为了工作而去培训。其实如果你是真正的选择程序员这条路,我想你的思维能力一定不错,因为一般程序员大多是理科出生,理科靠的就是你的思维能力,在某些时候或许你的思维还不够敏捷,但我知道,每个人在接受了一段时间的工作后,就会产生各类的想法,或许某个想法你会改变你公司的命运,可为什么提出观点的人就寥寥无几呢?

我想可能是因为性格吧,因为很多程序员都是内向型,因为我们需要花一定的时间,去沉醉在代码中,因为这是一个奇妙的世界,无法自拔,所以很多时候就忽略了沟通,因为我们打交道最多的是abcd。如果你正是如此,希望你快点走出来吧,分清楚何时沉醉,何时交流才是最好的。我的偶像-唐骏,我看过他的访谈,他在大学时还是一个不会沟通的人,只是偏执于技术,而且和大多人一样,都会觉得自己什么都会,什么都行,是个天才,但在他大三的时候,他意识到了错误,花了几年的时间去学习交流、沟通,在宁愿委屈自己进入微软做程序员,再到无数次发意见给Bill,一步一步成就了这位打工皇帝。

所以,我们每个程序员要做的是,技术和沟通并行提高。在唐骏的话中,我会学到很多东西,他能从容应对每一次挑战,当时有幸成为唐骏的下属,见证过他的能力,虽然他当时只是个技术总监,但他的想法、创意给盛大带来了无比的利益,我不得不佩服他的胆大,不得不佩服他的能力。从他身上还学到了专一,其实很多程序员会在编程的道路上三心二意,这是很正常的,不过我相信一段时间以后你会学会专一的,因为程序真的很美,带来的不仅仅是工作和薪资。

我这里又不得不批判一些年轻程序员了,他们仅仅看中的是工资、福利等,没错,这是考虑工作的一点,但你要知道,有些时候,你第一点的工资,或许你会学到更多的东西呢?我经历过很多,经历过1年工资翻几番,又经历过折一倍,又经历过小公司,又经历过大公司,各种各样看的实在是很多,但我不会说我自己半途而废,因为每次我会把事情做的觉得自己可以了,我才会选择更好的发展前景。我面试过一些人,工作也就2,3年,做过的东西也很多偏向于OA、ERM等项目,就觉得自己很了不起了,工资也是漫天要价,可真正面谈的时候,我才得知,你仅仅是其中的一个小模块,但当我问其项目的整个运维的时候,就会楞个半天,最后来一句,这个模块不是我负责的,敷衍了事。那好,我问你自己负责的模块,如何具体写的,用了何种方式等,基本都会回答,三层架构,什么什么,My god 三层架构是你一个模块就能体现的吗?那好,既然你说三层,何为三层,三层的优点,缺点在哪里?诶~~~~~前几天首页那篇批判大学生的文章,我觉得写的太好了,你们这是在沉醉吗?如果你不喜欢,你为什么非要选择程序员这条路呢?

以上《程序员学什么样的知识才能赚钱[4]》一文,由编辑精心撰写而成,希望对您的职业规划有所帮助,更多精彩请访问“程序员个人简历模板”专题!

相关文章

最新更新