软件开发需要学什么it

您所在的位置: &
IT人35岁后做什么?一个软件开发人员的见解
IT人35岁后做什么?一个软件开发人员的见解
IT行业,特别是软件领域的朋友,我想你们跟我一样都面临一个共同的问题,软件人员是不是吃青春饭的职业?就以下五个问题我从一个软件开发人员的角度发表一些见解。
IT行业,特别是软件领域的朋友,我想你们跟我一样都面临一个共同的问题,软件人员是不是吃青春饭的职业?我就以下问题发表一些我个人的看法,限于本人只从事系统管理和软件开发的职业经历,只从一个软件开发人员的角度去发表一些见解。
1、IT行业,特别是软件领域的朋友,我想你们跟我一样都面临一个共同的问题,软件人员是不是吃青春饭的职业?
软件首先是一项非常耗费脑力的工作,因此少壮时期的软件编程人员具备最佳动力和学习能力,年轻无疑是一项最大的资本。不过将这种能力转化为工作能力的人数实在远远不能满足行业的需求。这也正是高薪的机遇所在,试问大家都很容易学会的东西,竞争不是更激烈吗?但是包括我本人也担心过了35岁之后,不能再继续从事这项工作了。毫无疑问,30-35是最重要的转型期,这是留给我们大家要思考的总是。
2、除了转行和自己当老板外,做项目经理或管理人员是不是我们的唯一出路?
许多比较年轻的朋友的回答似乎偏向于将问题的答案归结在做项目经理、项目主管之类。我想这本身就意味着,90%会找不到出路,这恐怕比愿来高考选拔更残酷,它看的是你的相对优势,而不是你的绝对能力,淘汰的人做什么呢?我想我并没有那么自信自己一直能站在浪尖上,也不想一辈子都无法湍息的活着。我对成功的定义是有过俯瞰他人的优越感,也要懂得激流勇退,享受那点成功带来的财富。做管理层对我来说是不能做为唯一出路的,也并不见得象想象中那么轻松。
3、如果大家都盯着项目经理这个职位,剩下淘汰的人做什么?
我想我们大多数人智力一般,注定是个平凡者,只有少数能成为高级白领。但多数情况下,我不愿将自己看作是一个会被淘汰的人,不过我不得不思索这部分人将来会做什么?转型是痛苦的,我的有些几个朋友回到稳定而待遇中等的大企业去,过上闲暇的日子,还有几位还在外面打拼,情况不太理想,在真正熟悉的人里面,做上管理层的并不多。因此,我想说的就是,情况仍然是严峻的。
4、资深的it从业人员,有多少后续职业可以选择?
就我能想到和接触到的,我认为在我们最初,很多人都是以编程起家的,有朋友叫corder。但就中国的状况来说,编程人员完成的工作比国外的底层编码人员繁杂得多,往往分析、设计、编码、测试一起上,本人就受累于此。但让我奇怪的是,国外有那么多的编程大师,搞c,unix系统那么多年,还照样要写代码,难道写代码真的是二十多岁的人才能干的吗?软件工程师、系统工程师、技术经理、项目经理、产品经理、技术支持经理、软件测试工程师、系统分析员,其实在一个企业里,这些职位不是都有,也不存在薪水排序的标准,任何一个职位都有可能拿到高薪。关键问题是,多年累积的经验在行业之中能够有多少市场优势?
5、你为自己设计什么样的职业历程?
我本人是分析、编码都做的,对c++有着深厚感情,我想我不会因为做pm而放弃成为一个c++大师的可能性,但做一个资深的项目管理人员也是很诱惑的。其实我也看到,很多人专业于某一领域,做得也很成功,这多少和做项目管理或技术经理所涉及的领域是没有多少交集的。这种矛盾的情绪让我的未来具有了更多的不确定性。
欢迎大家提出新的问题,同时也希望大家对本人的观点加以补充和驳斥。借此也衷心的希望大家从讨论中认清自己的职业方向,坚定职业信心,成为各it领域的成功人士。
【相关文章】
【责任编辑: TEL:(010)】
关于&&&&的更多文章
近日,有“互联网军火库”之称的意大利监控软件厂商Hacking Team
51CTO技术沙龙让我们畅谈了有关蜜罐和黑客追踪的有关话题。
讲师: 14人学习过讲师: 49人学习过讲师: 22人学习过
既然选择了程序员职业,就要把它做好,同时,自身能力
【导读】日,华为坂田基地员工猝死出租屋。
离职员工造成的安全隐患正在呈现愈演愈烈的趋势,始发
Visual C++ 6.0是Microsoft公司的Visual Studio开发组件中最强大的编程工具,利用它可以开发出高性能的应用程序。本书由浅入深,
51CTO旗下网站优惠期大派送
免费注册为会员后您可以
软件外包学堂给所有想从事软件研发的年轻工程师的忠告与建议 - IT人
给所有想从事软件研发的年轻工程师的忠告与建议
一.我为什么写这篇文章:这几天,在某个IT论坛的软件培训与认证栏目中,看到了很多处于迷惑之中的人们,也看到了许多大家普遍感到困惑的问题,写此文章的目的,是想将我这些年在软件行业从业的一些经验和体会讲给大家听,并对大家普遍关心也普遍困惑的问题进行一些阐述,我将尽我最大的可能告诉大家我所理解的事实真相,同时也衷心希望大家能够理智而清晰的看待自己的方向,前途,发展策略等问题,避开自己发展的误区。 我目前在国内一家大型软件公司里做软件开发总监,由于本文中涉及了我个人对一些公司和机构的评论,有好的方面,也有坏的方面,所以我不方便透露太多关于我个人的一些信息;另外由于本人写的比较仓促,加之工作忙碌,也就没有在文字上以及文章结构与逻辑等方面做一些整理,所以可能有些地方看起来有些乱。我想乱与不乱都是次要的,关键是,我希望我的这篇文章能够让大家将一些事情看透,从而防止自己在软件行业内走入误区,以便能够在软件行业取得更大的发展与进步。 二.该怎样规划自己的技术发展方向以及人生发展的总体思路? 1)
要永远相信“物以稀为贵”,我这些年的经历发现,现实中有很多软件工程师存在严重的“跟风”行为,也就是:只要市场上或者媒体上对某个领域或潮流进行“吵作”就无形中引导着这些工程师的学习方向与学习行为。如果我们纯粹以发展前景与“钱景”作为个人技术发展方向的衡量标准的话,则一个普遍的规律是:跟上最流行的技术并不一定拿到高薪;大家可以看到,同样是用C++编程语言开发软件,在Windows平台下的VC工程师,要比Unix平台下的C++工程师明显薪水低一档,为什么?原因就是一个公司可以在人才市场上很容易找到会VC的工程师,但找到有Unix平台下的C++软件系统开发经验的工程师相对要难找的多;
中国软件市场是典型的内需驱动型的市场,所以中国的软件公司需要不同领域的软件开发工程师,而且不同领域的软件开发工程师在薪水方面有很大的差别,在个人职业方展过程中应“随需应变” 3)
不要局限于技术,一个人在自己事业上的成功或者说狭隘的说是个人财富的积累是一个人的“资源整合能力”的综合结果,而绝对不是一个人的技术能力单方面决定着的;在过去的经历中,我遇到了太多的“头脑聪明,技术高超”年轻工程师,他们在技术领域很聪明,但是缺乏在公司具体的人际关系环境下生存的“基本人际关系网络”管理能力,而变成了一个典型的“愤世嫉俗”的人。技术与个人智商高或者乃至上学时期的学习成绩好绝对不意味着一个人更容易通向财务自由与事业成功之路。年轻阶段有一定的技术积累是非常必要的,但如果彻底沉迷于技术,而不是着眼于个人5到10年以后你个人的事业成功所必须依赖的核心能力,行业背景和人际关系网络等因素,迟早有一天会陷入人生的被动局面里面去。 4)
不要抱怨自己所处的公司环境的复杂性并抵触之,其实无论是到管理水平很高的跨国公司还是管理很混乱的一些民营企业,只要存在人的地方,而起这些人之间只要在工作内容与职责上存在相互以来的关系的话,就不可避免有各中形式的人事斗争,在这种公司环境中,有些人善于分析公司内部环境与权力动态,并知道如何恰当发展自己并保护自己的利益免受伤害,他们锻炼了一种在复杂环境下的“领导能力”,而有一些人却在这种复杂的环境下变得“愤世嫉俗”或“冷眼处之” 5)
个人的职业历程的发展模式是:随着个人在职业生涯的年数的增加,你在职场里有效开展工作,并应得工作业绩和个人收益的核心能力就尽可能少的以来技术本省的东西,而是个人的管理与领导能力还有在行业内的关系网络以及这些因素所必须以来的一个人人际关系能力与人际交往素质 6)
不要按常理“出牌”,大多数人平凡的生活着,就是因为大多数人的思维被模式华,所以他们做事情并没有真正用自己的大脑深入的钻研事实的真相并作出自己的选择与判断
三.你应该如何开始自己的行动,并有一个很好的职业发展开端?
为了得到一份软件开发工作,是自学还是找一个培训机构?任何一个培训机构都不能一劳永逸得解决你职业发展得所有问题,所以有很多东西,你必须自己学习,但是从公司招聘软件开发工程师的流程与关注点的角度来看,基本上是两个大的因素,一个是个人的特定领域的知识结构和基本的开发技能,比如某个编程语言的使用能力,另一个至关重要也是可能通过某个自学途径不太可能得到的就是“特定软件开发领域工作经验”这个工作经验是必须通过实际的一些开发实践方能获得的,而这个工作经验是你在公司决定给予面试机会,以及公司决定录用当中相当重要的一个环节。 一方面你的简历中是否有你所应聘的公司所从事的软件开发业务相关的“工作经验描述”决定了你是否会得到面世机会(正是由于此点,造成目前绝大多数计算机相关专业的本科生,甚至研究生在就业方面面临着沉重的压力),用人单位最关心的不是你学过什么,而是你亲自做过什么,另一方面在你得到面试机会后,用人单位的面试框架基本上在技术方面就是两个方面:通过让你描述你曾经做过的软件开发项目来判断你到底有多没深入的开发经验以及是否与他们的要求想吻合,另一方面,在让你描述工作经验的过程中,或过程后对你的基本知识结构和基本的技术能力(比如编程技能)进行考核。 我给你的结论就是:不是说你学过某个领域的技术知识,比如编程语言,比如数据库等,就意味着你能找道一个软件开发方面的工作,用人单位永远将“你真正动手做过的项目与公司业务的吻合度”做为第一重要的判断点,你可以通过自学,或者自学能力差的话,跟着某些培训机构去学习某个领域的专业知识,但是真正促使你找到一份薪水不错的工作的主要因素是:你能够通过某种方式做一个相对来说完整而复杂的软件开发项目。而这个项目工作经验只能说你在某个公司实践工作获得,或者从某个软件培训机构获得(前提是这个软件培训机构能够提供这种级别的软件项目工作经验,但我发现真正能作到的软件培训机构在市场中很少,) 目前,市场上有很多软件培训机构都美其名曰,他们有项目开发实践,但想提醒大家的是,同样是项目开发实践,是否能够最终在个人求职方面用的上,主要决定于这个项目本身是否会给你足够的‘工作背景经验’以及这种工作背景经验在人才市场上的“稀缺性”有多大。 在这里引用我一个在国内电信软件公司做项目开发总监的朋友的一句话:“我在招聘自己的开发工程师时,基本上很少关注这个人有没有证书, 我关心的问题基本上很简单的几个事情,一个是他有没有做过与我目前的项目从技术面相吻合的项目经验, 第二个问题是他本身的技术知识面和实际的动手技能如何,
第三个问题是这个人的学习能力和潜在的素质如何
第四个问题是,是否是一个易于合作的人,擅长沟通,技术人员都有那么一些”个人英雄”主义的情结,但一般只要是复杂的系统项目,更需要的是整个开发团队的通力合作” 2)
北大青鸟或者NIIT培养出来的“低门槛进入”所谓的“软件蓝领”能适应中国目前的国情吗? 这两年市场上非常火爆的所谓“软件蓝领”培训,比如北大青鸟,NIIT等,“软件蓝领”曾经是媒体非常热的一个词汇,但中国目前需要这种意义的“软件蓝领”吗? 或者说“软件蓝领”在中国真的能够就业吗?因为蓝领也好,白领也好,于想从事软件开发的人员来说,他们的目的很简单,找到在IT软件公司的工作。
对于这个问题,先谈一下我的基本观点:传统意义的“软件蓝领”在目前中国的情形下是不适应的。 首先,应该说软件蓝领实际上是软件产业发展到一定的历史阶段所必然的结果,所说的软件蓝领是在大规模软件工厂式生产模式下,专业从事软件代码与基本调试的一线人员,软件蓝领是产业发展的需要减低总开发成本并实现规模化,工厂化软件生产的必然要求的职位,在这方面印度的软件工厂模式已经取得了相当大的成功。他们拥有大量一线从事基础软件开发工作的软件蓝领,而且形成了金字塔式的人才结构。 其次,我们谈论任何事情都不能脱离历史发展的现状来谈论,中国的软件生产方式从总体来说离着大规模软件工厂模式还有相当长的一段路程要走,从政府的意愿来说,政府希望中国的软件产业能够以尽快的速度完成产业结构的完善调整,企业的兼并与重组过程,从而能真正形成可以与国际竞争的大型软件企业;但至少在今后的几年内难以实现,软件人才结构的调整也需要再长的一段过程。传统意义的软件蓝领实际上是,这些从业人员无须关心它所开发的整个软件系统是怎样的一个系统结构,他应该做什么早已经被设定好,他只需按照“软件生产规范”实现就行了,一定不能忘记这个的前提是“大规模软件生产模式”,人数可能是1000人,到几千人同时进行软件开发,但我们再看一下中国的情形,中国的软件企业去年统计是4700家,其中55%是50人以下的公司,50-200人之间的占到42%,只有极少数的公司达到了1000人的规模;我们必须对一点非常清晰,如果我们培养了软件蓝领它是需要在中国的软件公司就业的,这将占到绝大多数,而且这绝大多数的人,绝大部分会到人数小于200人的软件公司工作,但实际上站在这个角度说,可能这些软件蓝领有相当大的一部分人员找不到工作,原因很简单,中国的绝大多数软件公司的软件从业人员的工作方式并没有按照软件工厂模式来运做,举例来说,很多公司是项目经理即做系统设计,又从事代码编写,同理,项目经理的开发团队的一线软件工程师也是即做代码,又参与系统的总体或者局部架构的设计,我不能说中国的所有软件企业都在这么进行着软件开发,但至少在中国目前情形下,这样的方式占了绝大多数。所以,我敢肯定一点,印度的软件工厂模式下的“软件蓝领”到中国来的话,他绝对做不了中国许多软件公司里的工作。 所以,大家看到了,北大青鸟的软件工程师培训课程目前非常火爆,但是火爆并不意味着他的课程,以及他培养出来的软件工程师在中国软件人才市场有充分的竞争力的。 再次,媒体炒做“软件蓝领”是一个事情,做为从事IT教育的教育机构如何做教育又是另一回事,政府肯定是希望我们早日走上软件工厂模式下的软件产业结构升级,但作为从业人员的最终就业场所是软件公司,那么这些中国的软件公司他首先要照顾的是自己目前的发展阶段,需要的是比软件蓝领更加有综合的素质,综合的知识结构和技能的从业人员来从事自己的开发,而不是遵从政府的意志,这是一个非常显而易见的事情。 所以,超越特定的产业历史阶段来谈论软件产业里的软件从业人员的教育问题是不切实际的。 我本人对两家“软件蓝领”培训机构的看法:北大青鸟APTECH:说到软件培训机构,就必然要谈到北大青鸟,总体来说我对北大青鸟的教师1)
北大青鸟阿博泰克公司是北大青鸟集团和印度一家培训机构Aptech合资成立的一家软件工程师培训机构,他们的核心商业模式是“特许经营”。2)
北大青鸟在市场宣传和品牌运作方面做得非常成功,他的总经理杨明原来一直在北大方正从事技术与市场方面的管理工作,对如何在中国市场上从事营销工作有较为深刻的认识,北大青鸟曾经在2001年出现过一些业务不景气的现象,但杨明的加入,通过一系列的整合营销传播活动,将北大青鸟这一品牌进行了非常好的吵作,起到了长远的效果3)
北大青鸟的核心客户群定位在“高中以上学历均可学习”这样一个群体上,实际上,从我们招聘软件工程师的经验来讲,这样一个群体,基本上不太可能在软件公司内找到从事软件开发的工作。4)
我发现现实中,很多人学习软件开发有典型的盲目的从众心理,因为他们不知道事实的真相, NIIT1)
NIIT也是来自印度的一家培训机构,而且公司决策层是一水的印度人,他们的核心商业模式也是“特许经营”2)
应该说NIIT和北大青鸟Aptech有一定的渊源,NIIT是印度最早从事IT培训的公司,Aptech是NIIT发展早期,从NIIT出来的一些人员创办了Aptech公司,所以他们在商业模式上也有很达的相同之处。3)
NIIT在中国市场上,整体的市场营销与品牌运作方面要比北大青鸟差一些4)
NIIT的课程设置以及课程中的一些核心理念与内容要比北大青鸟好5)
和北大青鸟一样,NIIT的课程里没有设置非常有效的足以能够让学员找工作时用的上的软件开发项目实践(我的意思不是说他没有软件开发项目实践,只是说这种项目实践过分简单,对找工作起到的作用不大) 我给你的结论:如果你基础很差,而且只是想学习编程知识,而不是靠培训找一份软件开发的工作的话,并且你的经济不成问题的前提下,你可以选择去NIIT学习,否则,如果你是想通过在某个软件开发培训机构的培训去找到一份工作的话,不要选择NIIT,即使他承诺签订就业协议,也不要去。 7)
IT认证培训的火爆的情形下,你应该保持一个清醒而冷静的头脑从2001年开始到2002年,这两年的时间,整个IT行业处于一个深度调整时期, 中国的IT市场也相应的受到了前所未有的影响, 但是IT教育与培训业务却取得了每年30%以上的发展速度, 这里谈谈我的理解与体会 其实每个市场的启动与发展,都是与整个市场环境相关的, 市场的驱动力来自于客户的内在心理需求, 虽然IT行业面临一个调整阶段, 但有两点是我们必须看清楚的,中国的IT市场潜力还有太多未发展起来的方面,诸如企业信息化,行业信息化,电子政务,数据通信,无线通信等等领域, 而且从这点来看, IT行业仍然是各行业中薪水和待遇相对较高的行业,即使他受到了一定程度的影响. 但从另一个角度来说,应该说是整个行业的调整,就业压力的加大驱动了整个IT教育与培训市场业务的高速发展.
正是由于市场发展的速度加快, 导致了整个行业的不规范,培训机构鱼目混杂, 实际上很多花了很多钱拿了某个证书的许多人,并没有如他们所期望的找到一份很好的工作, 拿到不错的薪水。我认为主要有一下方面的问题:第一: 任何一个市场的发展,最终的驱动力量来自于消费者的内心需求, 某个商家只要能满足某个特定消费群体的心理需求, 他就肯定能抓住市场,赢得商机; 所以商家都在潜心研究消费者的内心深处, 进行关键的定位诉求,保健品市场,带有很明显的这种特征, 至于这个保健品是否真正能达到他的”诉求”, 就只有消费者最清楚了. IT教育与培训市场的发展也如此, 因为整个产业环境变化和就业市场的压力, 驱动了消费者去进行IT认证, 我们先姑且不管这些IT认证最终能否达到客户的预期目的, 但至少需求是存在于客户的大脑中了.
第二. 我们的调查表明, 大多数选择IT认证的消费群体,在选择是带有很大的盲从性和从众心理, 这些人并没有真正认真研究一下用人单位的需求, 比如,有很多在校的大学生考取某个IT证书,只是因为他觉得大学里没有学到什么东西, 想考个证书来增加自己的就业砝码, 想在他就业的时候,向用人单位证明一下:他在校期间学了什么. 但他却没有想一个最关键的问题,这个证书是否真正有用? 反正是不管有用没用, 先给自己一些心理安慰. 我们发现的一个问题是: 在校大学生很少能够真正站在用人单位的角度去想想问题, 然后决定一下自己应该做点什么备战就业. 第三个问题涉及到一个软件教育机构,尤其面向IT领域的教育机构,他的总体运做思路和竞争战略的问题, 这个机构是否站在用人单位的角度来进行思考, 他们的用人逻辑到底是什么? 他们真的是看某个应聘者的证书? 还是在用人的时候更加注重从从业经验来做判断, 其次是,现实中,真正的就业困境到底在哪里? 最后是软件教育机构如何设置自己的课程来满足用人单位对“软件人才”的“核心需求”
为什么计算机相关专业大学本科甚至硕士研究生就业问题?
目前大学生就业问题已经成为一个日益严重的社会问题,以前IT相关专业的大学生就业时基本上是“皇帝女儿不愁嫁”,但是,我们看到已经有太多的学生,他根本找不到工作. 确实大学生就业问题已经成为一个值得我们关注的社会问题,目前大学生就业困难一方面跟我们目前的传统教育体制的过分滞后有相当大的联系,另外一方面,整个就业市场的供过于求也是重要的因素。就拿大学生想在IT行业就业来看,就值得我们深思,我们整个传统教育过程中都过分重视“学习知识,考分数”,这种思维模式的引导,使得学生一直转不过这个弯来,我们的学生知道毕业前还是习惯于听老师讲课,自己将来考试过关。目前许多学生非常热衷于某些IT认证类的考试就说明了这种思维模式的延伸,在学生的头脑里总有这么个概念:你看我在校考了这么多证书,你应该考虑给我一个就业机会吧。但实际上,我最想和在校大学生说的一句话是:请你们争开眼睛,好好看看用人单位都在怎样的用人,尤其想从事IT技术工作的大学生,用人单位真的不是很关心你到底学过什么东西,他只关心你到底做过什么? 当然,说到这,我们不能将这种东西归责与我们的学生,应该说是我们整个教育系统有相当大的弊端在里面。 9)
我对于你参加培训,尤其软件工程师培训的建议我所有下面的建议都是基于这样一个前提:你想在软件公司里找到一份从事软件开发的工作1.
不要相信任何证书,任何证书都不会让你找一份软件开发工作,现在大部分软件公司很现实,他只关心你是否做过和公司所从事的软件开发领域相一致的“软件项目开发”经验,这是他考虑的80%的因素,其他的因素才是类似专业背景,学校,个人软性素质,沟通技巧和学习能力等。2.
如果你没有任何的软件开发所需要的基础知识与基本技能,你可以到一些培训机构去学习这些基本知识,但是,如果你自学能力可以的话,我建议你自己学习这些基础知识与基本技能。然后你再找一家真正能够让你实践去做一些“软件系统”的培训机构(后面我将基于我的理解,向你推荐几家)。 3.
如果你具备从事软件开发的基础知识和基本的编程技能,但目前仍然没有找到一份软件开发的工作的话,那我告诉你问题的症结:你没有机会去亲自从事一个大型的软件系统,这个软件系统的工作经验具有足够的难度和复杂性,去找一家能提供这种级别的软件开发实践机会的软件培训机构吧,毕竟这几年,计算机相关专业的毕业生和几年以前已经今非昔比,这并不是说市场不需要大量的软件工程师了,而是,现在没有多少软件公司愿意为没有“工作经验”的新人提供工作机会并承担一定的“跳槽风险”了。
不要被软件培训机构的市场营销与商业吵作所迷惑,如果从“找到工作”的角度来看,能否带你做一个相对“大一点”的软件项目,是选择的最重要的考虑因素 5.
尽可能在培训机构里申请试听几节课 6.
不要听信任何的“品牌吵作”,本人对公司的媒体宣传,市场策划,公关活动等都有过比较深入的接触,其实有些事情,比如说有些培训机构,他们应该坚持“宁可不说,不可胡说”的,但你发现目前有多少培训机构他“不胡说”?,但我相信一点, 一些做事浮躁的培训机构,他是能够在市场上一时风光的,但我相信这种靠“吵作”来赢得市场的行为,是不可能长久生存下去的。 7.
一定要认真研究一下,这个软件工程师培训机构是否有真正在“中国做过许多大型而复杂的软件系统”项目的老师来讲课,不要被一些培训机构所阐述的“讲师背景”或“公司背景”(比如挂靠某个知名学府或单位)所迷惑。如果你还听到某个机构在说:聘请某名牌大学教授等字眼,我劝你趁早将你的钱袋子收紧些。
全部展开树状显示嵌套显示 旧的在前新的在前 &
IT人网官方微博posts - 475,&
comments - 481,&
trackbacks - 20
         首先在这里讨论的是国内的大陆地区。在今天这个中国IT环境下,开发人员出路何在?一个优秀开发人,应该有致力于编写优雅代码,让别人读得懂,具有可读性,可测试性的代码,不仅仅是可以运行的代码。所以经常需要对现有的代码重构,包括自己写的代码。而现在国内的开发人员这方面的素质一直缺乏,就更难谈得上对软件开源社区的贡献了。
      所以一些优秀的开发人员后面都去做架构师了,但又不是每个公司都需要架构师。又有一些由于家庭的原因,转做PM了,由于开发人员需要不断的学习,新技术的更新换代,日新月异,所以你不学习就跟不上时代。当你到30岁的年龄,由于精力的不够,越来越多的开发人员被迫转行或转型。剩下来的人,优秀的相对较少了,由于国内环境的影响很少人会继续专注于开发领域。只有一线大型软件公司,如Microsoft, Google,IBM等公司,能让你一直做软件开发工作。再讨论一下国内的一线城市(北上广深)的IT软件行业特点,大型公司(如上列举几家巨头)分工明确,以至于让你转变为专业化的IT软件开发人员,对某一个软件开发领域越来越深入。的确,一些大公司也需要你这样专业人员。一类这样的开发人员(30岁或以上)在大型IT公司工作,未来他们的方向有可能是部门经理,有可能是架构师,无论哪一儿条路也不容易,因为大公司有向上走困境。有的人可能三十多岁还在做Engineering or Coding。这种现象在国外大型公司更是正常了,越是资深的,越是年龄大的程序员越得到尊重。而在国内民营公司,或非IT的公司则正好相反。
      在一些民营小公司,做软件就是小打小闹,软件小作坊,你会发现很多不如意的地方,可归结于不专业,不专业化带来是工作效率的低下,并且存于整个在公司的过程或流程的方方面面。还有一种情况,有的人就没有经历专业化,由于不求上进,所以他们就没有这个思想意识。由于不专业化,一些人也不求上进,混日子的人也不少,当你与这些不专业的人工作在一起,你会感到非常的郁闷。这时,可能你需要修改那些mess or crap code(垃圾代码),那可真是一种痛苦的事情。特别是,当你试图改变这一切时又受到上层阻碍,或得不到支持,没有上层的批准,整日在这些垃圾代码上工作,渐渐地你的愤怒情绪不断增长,终有一日需要释放,谁也不想每天让这些垃圾代码弄得心情不愉快呀,谁也不想由工作不愉快情趣影响对人的看法,即使做到对事不对人。
      有时正因为这些垃圾代码让你加班,你需要实现某些功能。而那些垃圾代码作者根本没有意识这些问题,你在这边完善,他在那边乱搞。就像那句话:“不怕神一样的敌人,就是猪一样的队友”。记得某一年的程序员杂志上,采访某个软件公司Leader, 他说到让不好的人进入团队,就是对其它团队人员的不尊重。所以,你必须尽量争取去一个优秀的Team,无论是大公司还是小公司,与优秀的人在一起工作,你会学到更多。在今天很多的成果与业绩需要一个Team来完成,不再是个人主义的时代,而是依赖一个Team有效分工协作。Team才能创造出好的产品或服务,当你做为一个Leader时去负责管理Team时,需要遇到的情况就会更多了,当然越是困难多,对你的历练就越多,对你也是成长,这是一个过程。
      综上所述,在一二线城市做软件开发,可以尽量去大型知名公司工作。在三线城市,因为没有大型IT公司,可以选择转型做PM或开发经理或其它IT职位,很多时候转型是受环境和平台影响,没有特定的环境平台你也做不了。还有就是寻找创业团队,并加入他们,但创业是不容易的,需要做好一切准备。
关于如何写优雅,可读性,可测试性的代码,什么是优秀的开发人员,可参考以下书籍:
《》 
   以上一些想法,是回顾过去工作经历而来。最后,希望各位选择好自己的职业生涯。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-。
阅读(...) 评论()

我要回帖

更多关于 app开发 的文章

 

随机推荐