IT人才最容易犯的17个错误--人生警言
转载
记得刚参加工作时(那是97年),中国的IT刚刚兴起,那时,作为一个IT人士是一件很光荣的事,而那时的我正在做电气和电子相关的工作。99年第一次跳槽,进入了IT行业做软件开发。至今,中国的IT已经走过了十多年。但昔日的“光荣一员”却成为了现在的“IT农民工”,这究竟是怎么了?是中国的 IT发展已经很好了所造成的吗?不是!在我看来中国的IT还比较的原始,还有很大的提升空间。我认为造成这一切的都是我们自己,是人!是我们的意识和方法问题。还记得刚从事软件行业时,当时有一句话很流行,这句话现在应当还能听到,那就是:做IT是吃青春饭。说实现在的,一直以来我对于这句话一点都不认同,但最近慢慢的觉得有道理。这种意识的转变不是因为自己在职业生崖上出现了什么问题,而是观察身边的人发现这句话还真有道理。由于不注意方法和不转变意识,我们当中的不少人过着“有工作没有生活”的日子,被工作压得失去了激情。接下来,让我说说我能想到或是看到的一些问题。
1)我们从学校毕业以后,觉得学习到此结束,应当是享受人生的时候了。其实,学习和享受生活是“正交”的,我们完全可以即学好又生活好。毫无疑问我们是生活在竞争的环境中的,那竞争的依据是什么呢?就是我们的能力。大家参加工作后应当知道,我们学校所学的东西在现实工作中不足以成为我们的核心竟争力。要打造自己的核心竟争力,必须学习,而且是在自己的业余时间学习。当然,工作也是一种学习方式,只是这种学习方式不容易创造很大的能力区分度。此外,学习是保持激情的有效方法。我工作近12年了,在软件行业干了大约10年,但是至今我还保持着非常好的工作激情,这是我很多同事对于我的评价,这一点我想与我保持学习很是相关。学习是我从学校毕业开始一直没有放弃去做的事!学得多了,自然会想去改变些什么,进而使得我们有激情。我在面试别人的时候,我一定会问题的一个问题是:你平时看书吗?看些什么书?一个不看书的人,其能力不可能很高,看问题的深度也不会深到哪儿去。通过看书,能让我们更快的积累知识和经验。有些弯路我们不是需要自己去走、有些错误我们不是非得犯了才知道、有些好方法和想法也不是一定要我们自己去想,看书能让我们站得更高、看得更远。当然,学习过了的东西应当转化为我们自己的东西(参见第14、15点)。
2)认为自己的能力与工作的年份是成正比的一条直线。在有些行业可能是,但在IT行业,这种想法是不对的。如果你了解三极管,我想我们的能力与工作年份的关系更像是一条伏安特性曲线。在开始的一段时间是线性的(因为我们刚毕业什么都不会),但之后从某一点开始永远是一个饱和区,到了饱和区后,能力的变化就非常的小了。这里要指出来的是,这条曲线的出现是因为我们从参加工作以来,都是采用同一种原始的方法去对待我们的工作的。如果我们善于改变自己的工作和学习方法,那么就不会得到一条伏安特性曲线,而有可能是一条接近直线的线。一个工作了七、八年左右的人,如果没有形成自己的一些思想(比如,设计思想),那么我认为很是有问题,自己得多去想想为什么。我们真正学习的黄金时间就是前面的七、八年左右。
3)不明白练“内功”的重要性。这里的内功是指系统性的分析和看待问题,或是其它的一些能力(比如软件设计的能力)。有些人今天学这个、明天学那个,总喜欢学“新”技术,但忘记了将所学的东西串起来从而系统性的去掌握这些技术背后的东西。其实,一旦学精了一样,很多东西是相通的,如此一来,我们很容易快速的去掌握新的东西。再说说软件开发,其实学习编程语言是简单的,是基本功而且不是软件开发的全部,软件开发要学习的是如何设计好一个软件,这一点要掌握一定原则和方法,比如我在《一个好的设计应当具备哪些要素》中提到到的“四性”就可以作为我们设计时的一些原则。软件设计能力是本质,而编语言只是一种表达设计的工具。当我们“内功”好了以后,学什么都快、做得也好、看得也深,这与练功夫是一样的道理。
4)害怕变化。拥抱变化往往能带给我们提高的机会。我们都有自己的舒适圈,我们害怕变化打破我们的舒适圈,但舒适圈的打破不是使得我们没有了舒适圈,相反意味着我们的舒适圈越来越大。我敢说,现在还有人在用Visual C++ 6.0做开发,而现在最新的是Visual Studio 2008(2010马上也要上市了),这不是因为Visual C++ 6.0比Visual Studio 2008好用,而是我们不想改变,还找个借口说“Visual C++太经典了”。而事实是,Visual Studio 2008能帮助我们更快的找出问题,不信试试看!我认为,一个勇于拥抱变化的人,他(她)的能力往往更容易提高。
5)过于埋头苦干。有的人一接到任务那可就埋头苦干起来了,有时应当停下来想一想:我这样做的方法是不是很有效率?能不能通过学一点别的工具或是方法来使我的工作更高效?我能从中学到新的东西呢?还是只是一种重复性的体力劳动?还存在一种人,这种人的确很能干,因此领导什么事都让他(她)出马,这样一来再苦再累都扛下来。这个人,从上司的角度来看,很好,但从个人的发展来看不一定是一件好事。你想,这个团队没有你就不行了?我想可能性很小。那如果是这样为什么什么事都要你干呢?有的工作其实干过了一遍就没有什么可学的,只是上司因为放心你才将事情交给你,在这种情况下,花再多的时间去干对于自己来讲可能是在浪费时间。如果不干,省出来的时间我们可以去学其它的东西。可能有人会想,我如果不答应上司(参见第12 点),那会不会对我的绩效不大好呢?其实,这种想法大可不必了,加上有时绩效并不是真正的公平(其实世上不存在完全的公平)。今年绩效好是一个短期利益,如果多学一点提高自己则是一种长期的利益。再说,我们不干的话还可以给别人创造一些锻炼的机会。真的是双赢!
6)不善于思考。对于工作有时就是一个应声虫,别人怎么说,我们就怎么做。有时更为可怕的是:为什么那么做?合不合理?这种做法与我想到的做法有什么不同?这些问题全都不去想。一个没有自己思想的人,不可能在工作中比别人出色,能力自然也不会太高。
7)不明白高效的完成工作对于我们自己意味着什么。高效意味着我们可以花节约下来的时间去学习、生活,毕竟工作不是我们人生的全部。我们时刻应当警觉自己是不是在做无效率的工作,如果是,想尽办法找出自己无效率的原因并改善它。有时我们会找借口,说现在太忙了,没有时间去改善,但真相不是这样的。我们完全可以通过一段时间的努力找到一种好的解决方法,将自己解放出来。的确,在忙的时候,如果为了解决无效率问题而花时间去学习其它的东西,那会让我们更加的忙。但这种更加的忙(短期的)是有回报的,而且往往回报很不错(长期的),不要总是想“等我有时间时再来改善”,“乱中求冶”永远是王道!
8)见难就退,而不是迎难而上。容易意味着我们所学到的东西很少,或是根本就没有。做一百件容易的事,不如做一件难的事所学到的东西多。难的事多做一件,信心也会更强一点。
9)不善于表达我们对问题的不同看法。有些人在工作中不敢去表达自己与别人相左的想法。我想,如果存在相左的意见,说明当中有可能会是别人有些东西没有想到,或是我们自己有些东西没有想到,而通过交流我们有可能相互提高。拥有一个开放的态度面对相左的意见!
10)缺乏创新。一说到创新,比较容易让我们想到那种改变全世界的大举,其实不然,任何一种能改善我们生活的行为都可以认为是一种创新。创新也是一种思考和行动,是一种勇于改变现状的思考和行动。有的人在做一项工作时,其中有很多的重复(动作),即使烦,他(她)也不会想想是否可以写一个脚本去改变、或是采用什么方式解放自己。这一点或许与害怕变化(参见第4点)有关!
11)不善于记笔记和总结。对于我们IT人士,笔记不一定要写在本子上,可以写成一个Word文档,或是其它的什么文件。在笔记中将自己碰到的问题写下来,这便于我们需要用的时候马上能找到。
有了笔记我们能更高效的工作以及更高兴的工作。好处很明显,干吗不记笔记呢?通过笔记我们也能很好的总结自己,发现一些有待于提高的部分。
12)不善于与上司沟通。通过沟通,一是可以从上司那得知他(她)对于我们的期望是什么,从而,我们可以得知自己的工作方式、方法是否与上司的期望是一致。如果不一致要想想,是不是自己可以改善,或是反过来改变上司原来的想法。第二就是要告诉上司你所期望的。比如,你想升级(职),那可以与上司说一说,当然,前提是你觉得自己的确能胜任。可能这一次上司并不会答应我们的要求,那也正常,因为他(她)有自己的考虑,此时上司可能会与你说原因。我们不能报着不同意就离职的态度来提要求。一次不同意,那我下次再提。在这种情况下,上司如果有一个名额,那很有可能就考虑到你了。沟通即简单也不简单,你所想的、做的不一定就是上司所想要的,如果这样的话结果自然也不会令自己满意。
13)少了一点追求完美的执着。人是不完美的,所以我们要去追求完美。追求完美的人更容易出色、更具责任心,做事往往也显得更专业。
14)不明白模仿的重要性。人天生就是模仿者,模仿多了,我们就会形成一定的思考和行事习惯,慢慢的也就转化成了自己的能力。我想很多人看过《设计模式》,可能在看时也有一种同感:其实,不少模式我们平时都在用。我做设计时,从来不去套《设计模式》中的模式,我能凭自己的直觉找到一种好的设计,当然,有时我得进行多次的反复。但是不是每一个人都有很好的直觉,这种直觉其实是一种能力,是长期的学习、思考和模仿所积累的能力。在我看来模仿是将所学东西转换为自己的能力的很好的一种方法。
15)只求知其然,不求知其所以然。学习不能只是表面化的“学过了”,还要从深层次去想其背后的思想和原理是什么,这往往使得我们更加容易的去分析和解决问题。想得多了,自己的层次才有可能提高,如果只是停留在被动的接受,那很难有所提高。
16)少了那么一点坚持。我们有可能在学习过程中少了那么一点坚持,本来已经做(学)到了%90,再坚持一下我们就能上一个台阶,能力也会有一个质的飞跃。但是很可惜,就是因为不多坚持那么一点,最后很有可能前功尽弃,最为可怕的是会打击我们的自信心—下次就不学了!人与人能力的区别或许可以说是能否坚持的区别!
17)不热爱自己的职业。这一点可能是一些综合性的因素造成的,或是在工作中没有找到成就感、或是自己不适合这个行业,等等。有时好好的想想,问问自己是什么原因造成的这种状况。如果是因为自己的一些方式或方法不对,那么看看是否能改变。如果的确是因为自己对行业没有兴趣,那我想长痛不如短痛,还是应当转行去做自己有兴趣的工作。快乐的工作着是重要的!
此外,除了注意个人的提高,我想我们还要注意“金字塔原理”。无论我们能力多高,但我们还是处于金字塔中的一层,也就是说能力强的人的数量总是相对的少,我们不可能人人都在顶上。即然这样的话,我们是不是就不应当去提高了呢?我想不是的,毕竟提高能改善我们的生活,而生活,是自己的。
IT人才最容易犯的17个错误--人生警言的更多相关文章
- Python开发者最常犯的10个错误
Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰富和强大的类库.与其它大多数程序设计语言使用大括号不一样 ,它使用缩进来定义语句块. 在平时的工作中,Python开发者很容易犯一些小错 ...
- Java开发者写SQL时常犯的10个错误
首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - 导航条 - 首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - iOS ...
- 10个最容易犯的Python开发错误
10个最容易犯的Python开发错误 转载 2017年09月25日 16:54:36 标签: python / 大数据 / 大讲台 Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰 ...
- Web开发人员常犯的10个错误
说到开发一个运行在现代网络中的网站:Web开发人员需要选择虚拟主机平台和底层数据存储,准备编写HTML.CSS和JavaScript用的工具,要有设计执行方式,以及一些可用的JavaScript库/框 ...
- Java程序员常犯的10个错误
本文总结了Java程序员常犯的10个错误. #1. 把Array转化成ArrayList 把Array转化成ArrayList,程序员经常用以下方法: List<String> lis ...
- OI中常犯的傻逼错误总结
OI中常犯的傻逼错误总结 问题 解决方案 文件名出错,包括文件夹,程序文件名,输入输出文件名 复制pdf的名字 没有去掉调试信息 调试时在后面加个显眼的标记 数组开小,超过定义大小,maxn/ ...
- Jquery中parentsUntil函数调用最容易犯的三个错误
来自 :http://jquery01.diandian.com/post/2012-01-16/14500044 Jquery中parentsUntil函数调用最容易犯的三个错误 Jquery的pa ...
- 总结Java开发者经常会犯的前十种错误
[导读] 在Java中,有些事物如果不了解的话,很容易就会用错,如数组转换为数组列表.元素删除.Hashtable和HashMap.ArrayList和LinkedList.Super和Sub构造函数 ...
- 看似简单!解读C#程序员最易犯的7大错误
编程时犯错是必然的,即使是一个很小的错误也可能会导致昂贵的代价,聪明的人善于从错误中汲取教训,尽量不再重复犯错,在这篇文章中,我将重点介绍C#开发人员最容易犯的7个错误. 格式化字符串 在C#编程中, ...
随机推荐
- EPPLUS之外的选择,EXCEL的操作(NPOI,POI(java))
NPOI 编辑 NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 中文名 NPOI 优 势 传统操作Excel遇到的 ...
- 【Problem solved】 error C2665: “loadimage”: 2 个重载中没有一个可以转换所有参数类型
选择“项目”菜单->项目属性->配置属性->常规->字符集,改为“未设置”即可.
- hdu-----(1150)Machine Schedule(最小覆盖点)
Machine Schedule Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- WEB前端性能优化:HTML,CSS,JS和服务器端优化
对前端开发工程师来说,前端性能优化的重要性是不言而喻的,最为大家所知的是YSLOW的23条优化规则,在我的理解中,性能优化不纯粹是指用户访问网站的速度,也包括开发的效率,这里我总结下我理解中的WEB前 ...
- 20145236 《Java程序设计》第八周学习总结
20145236 <Java程序设计>第八周学习总结 教材学习内容总结 第十四章 NIO与NIO2 认识NIO NIO使用频道(Channel)来衔接数据节点,在处理数据时,NIO可以让你 ...
- 集合框架,ArrayList和Vector的区别,让arrayList线程安全的几种方案
boolean add(E e) 将指定的元素添加到此列表的尾部. void add(int index, E element) 将指定的元素插入此列表中的指定位置. boolean addAll(C ...
- How to decide on the correct number of clusters?
Determining the number of clusters/segments in hierarchical clustering/segmentation algorithms 由于uni ...
- vim 代码
vim函数跳转 时间:2014-05-07 14:02:12 阅读:40 ...
- C#识别验证码技术-Tesseract
相信大家在开发一些程序会有识别图片上文字(即所谓的OCR)的需求,比如识别车牌.识别图片格式的商品价格.识别图片格式的邮箱地址等等,当然需求最多的还是识别验证码.如果要完成这些OCR的工作,需要你掌握 ...
- J2EE面试题
J2EE面试题 J2EE相关基础知识 1.面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只 ...