㈠ 程序员如何应对“35岁危机”
不传播焦虑,但35岁危机真真切切存在,重点说下如何破局:
1.控制消费欲望
在《穷爸爸富爸爸》这本书里,有句话特别经典:穷人和富人都会买奢侈品,穷人往往用他们每个月的血汗钱购买,那是本应该用来投资或者留给他们子女的财富。富人则是用他们所产生的资本购买。穷人购买了奢侈品后确实让他们看上去富有了,但他们随机进入了债务危机。每月的工资用来偿还债务,并继续贷款,他们进入了恶性循环。
普通人更善于花钱,而富人更善于把钱存下来,买那些能增值的东西。能不断增值的叫资产,而消费品只是一种消耗而已。
21世纪富人给普通人设置的最大陷阱就是:消费主义,前文我也提过:年轻人一定要摒弃消费主义陷阱。
不控制消费欲望,就很抵御中年危机,道理很简单:你没有第一桶金和足够的安全感。
2.多读书多学习
我一直认为读书是世界上性价比最高的成长方式,书很便宜但分量很重,是让我们摆脱平庸走向卓越的方式之一。
冯仑也有一句金句:学先进傍大款走正道。冯仑说的学先进其实就是读书!
另外关于读书,我有一个建议:如果是要获得专业上的成长,建议挑选几本好书反复读。如果是要获得人生认知、格局的成长,建议返扮泛读、通读,在这个基础上挑出适合你的经典,再精读。
3.建立第二种收入
职场人的本质都是工具人,而程序员恰恰是那种人到中年还会贬值的工具。
打工人尤其需要在职业生涯下行通道来临之前,建立人生的第二种收入。
写公众号这段时间,很多程序员读者问洋哥:要不要发展一些副业,怎么发展副业。
副业,的确是我们获得第二收入很好的方式。
如果你还没有建立足够的核心能力之前,我不建议做其他尝试,这样会捡了芝麻丢了西瓜。
如果你已经在行业有较深的积累,能出色的完成工作,且具备核心竞争力。
这个时候,尝试做一些探索是完全可行且某种程度必须的。
这个世界有两种工作:可预见性工作和不可预见性工作。
什么是可预见性工作?
比指桥如打工,定时定量发工资,除了年终奖和项目奖,几乎没有一点波澜。
比如兼职做写手,写出一篇文章,交付后就能获得固定的报酬。
可预见性工作很难有复利的积累,却是很多人赖以生存的手段。
什么是不可预见性工作?
比如创业,艰苦卓绝的奋斗好多年,可能一无所有,也可能上市敲钟。
再比如写公众号文章,洋洋洒洒数千字可能没人看,也可能爆出一个10万+。
探索副业的最重要建议:主业做预见性工作,副业尽量做不可预见性工作。
拿副业类型来说,程序员可以接外包、做企业内训、做APP、又或者写技术博客公众号。
接外包、做企业内训属于可预见性工作,做APP、写博客公众号属于不可预见性工作。
不可预见性工作包含大量的不确定性,而普通人逆袭人生一定要引入不确定性,太过确定的工作顶多维持你的唯世猛生计,很难让你发家致富又或者财务自由。
引用《富爸爸,穷爸爸》里面比较经典的一句:打工赚工资,只能让你比破产强那么一点点。
㈡ 一个java程序员如何从新手慢慢成长
一、首先初识语法的阶段,必须要学会怎么操作对象,操作if和for,操作list set
map,然后是线程、IO和jdbc什么的,其余的,若是一时不理解,可以后边需要时再学。
这阶段完了,你可以写些能在控制台打印出来的小程序,锻炼下逻辑思维。也就是号称JAVASE毕业了,其实不过是入门而已,如果要往WEB方向发展,这些倒是基本足够了。
二、接下来要学HTML JSP SERVLET 数据库 JAVASCRIPT
TOMCAT,目标,写出第一个动态网站,也许只是个登陆功能,只能展示下个人资料,但这是很重要的一步,你要弄清楚的是,一个用户的点击产生的请求,是从哪里发起,哪里接收,哪里处理,哪里返回,你得理解浏览器和服务器的关系和分工,cookie和session,request和response。这个是个WEB开发的学习初级阶段,这都是些JAVA诞生以来最原始的最官方的WEB开发技术,当然现在真正的项目很少直接采用这些技术了,为了不断提高技术的易用性、开发效率和可维护性、可扩展性,无数开源项目都是在这些原始技术的基础上封装、改进。所以这个阶段不要盲目乐观地跑去找工作或者对实习挑三拣四,你会被打击到的。
三、初始阶段完成,开始进入WEB开发的正题,首先是传说中的三大框架,struts hibernate
spring成为熟练的增删改查程序员是必须的,在这个阶段你还要理解为什么要用这仨而不是那些JSP SERVLET
JDBC,你要体会到写MVC、三层架构的好处。这个阶段不要轻易质疑三大框架的价值,也许刚开始你会觉得麻烦,觉得他们有时候是多此一举,一两年后回过头来你会觉得少了这些框架你已经很难干活了。这个阶段还要避免的心态是能熟练地增删改查了,就认为写程序不过如此,然后往简历上填个精通,这也是新手面试被批得体无完肤的原因之一。如果你学得好,这会应该能熟练地写个博客啊,小论坛啊之类的WEB项目了,也就是达到了就业的基本要求。
接下来就没有固定模式了,你的第一家企业对你的影响会很大,在这头一年里,定个标准吧,你应该能做到的有:
1、把一些常用的琐碎技术学会了,比如xml的作用和实际运用,如何操作文件,如何运用日志,如何简化封装常用的工具类,比如日期操作、编码处理、分页模块等等,这些小东西会占用你大量的时间去处理摸索。
2、把数据库用好。数据库不是会增删改查就可以了的,你要关注事务设置是否合理,是否有可能产生脏数据,是否要动用乐观锁悲观锁等等,重要数据出了错,无论是技术上还是业务上都是很麻烦的事。
3、懂得什么是集群,什么是分布式,懂得怎么向别的系统发请求,交换数据,webservice。
4、如果你也写页面,你要会用JAVASCRIPT,不一定要很深入,你可以用JQUERY代替,做到无刷新的页面操作以及AJAX请求。
第一年能达到这个程度,你绝对已经在平均水准之上了。
下一个阶段,你应该考虑你的代码质量了。
1、多线程和异步、并发的概念会忽然变得很重要,因为在一个对性能有要求的系统里,是不会允许你把各种琐事都排着队一件件去办的,你不能老写些a方法调b方法再调c方法再调d方法然后返回的代码。
2、你会发现数据库性能实在不行,出于不甘现状,或者赶时髦,你该去了解nosql了,memcached redis
mongodb,眼花缭乱,没关系,试着用用,能很好地缓解mysql之类关系数据库的压力。
3、出于公司某些业务需要,你可能会钻研一个特定技术领域,比如全文搜索技术,lucene\solr,比如工作流jbpm,比如权限系统,单点登陆之类的,又或者某些特定业务领域的算法研究,这些是你的加分项。
4、你开始发现你的代码很乱,久了以后自己都看不懂,重复的,难以重用的代码堆积如山,不想维护,BUG百出。于是你要开始重视设计模式,合理地改造下自己的代码习惯,不再被僵化的SSH,MVC三层架构束缚住。
5、Google和各种资料是你进步的动力,极少再遇到必须请教别人才能解决的问题,如果你这个阶段还老是问别人,你的技术生涯也就快到头了。
这个阶段,如果你的交际和自我推销能力不是太差,你的收入将是白领水平,至少接近了。
接下来又是个全新的阶段。
1、你要读读优秀开源项目的源码,你要搞懂一些当年不懂的基础知识,你开始理解thinking in
java的精髓,你能写一些底层的代码,有时还会觉得自己封装的比某些开源工具更好用更简单。
2、WEB的难点和重点永远都在于性能、负载能力上,而现在网络的发达造成了数据量和操作密度的大大上升,硬件却没有相应的进步,你得试着更好地运用更多的服务器来协同工作,从WEB端到服务端到数据库,全都需要集群,需要分布式,需要合理的控制数据的流向,掌握好网站上下,一大堆机器的平衡,找出性能的瓶颈,找出稳定性和安全性的瓶颈,硬件出现故障,第三方技术出现错误,将被当成家常便饭融入到你的系统和代码里仔细考虑。
3、开始觉得方案无比地重要,一将无能累死千军将不断应验,一个不好的设计,一个不好的方案,会让一群优秀的程序员工作成果大打折扣。你要关注架构知识,不能再满足于SSH三层架构到底。领域驱动设计,面向事件开发,敏捷开发等等一系列的思想在关键时刻能决定你项目的生死,这个阶段不再有标准范例让你照抄,你只知道思想和原理,实践却需要自己不断尝试和改进。
4、多关注各种杂七杂八的开源技术,有些你可能前面已经接触过了,和通信有关的,和集成开发环境有关的,和架构有关的,各个领域你都应该能信口说上几个主流技术,虽然你可能只是听说过,了解,但关键时刻你得知道如何去选择技术,并快速掌握它。你还会去考虑尝试下别的语言,这里不是说转向什么C++
C#之类的,那和JAVA程序员不相干,我说的是一些运行于JVM之上的语言,比如scala和groovy,初识他们时你会觉得java真的老了。但当你回到一个综合性的大型项目中,又会觉得java积累下来的整个体系技术是如此完善,就像一个工业化标准一样。
你能把这个阶段实践好,胜任项目经理,乃至中小公司的技术总监都是可以的。
㈢ 作为一名普通的程序员,需要怎么给自己找一条后路呢
作为一名程序员,在未来可能会面临技术淘汰、公司倒闭、经济不景气等风险。因此,找到一条后路是非常必要的。
以下是一些可以帮助程序员找到后路的建议:
1.不断学习新技能:随着技术的不断发展,新技能的学习变得非常重要。程序员应该不断关注行业的动态,并且学习新的编程语言、开发工具和技术。
2.建立广泛的人脉:建立广泛的人脉可以帮助程序员在职场上更好地生存。这些人脉可以包括同事、老板、行业专家和其他程序员。
3.做好个人品牌建设:通过博客、社交媒体和GitHub等平台,程孝祥序员可以建立自己的个人品牌,提高自己的知名度和可见祥凯度。这可以帮助程序员在找工作或者自主创业时更有优势。
4.考虑转行:如果程序员发现自己的技能在行业中逐渐被淘汰,或者自己的工作面临很大风巧宴搏险,那么可以考虑转行到其他领域。这需要程序员具备开放的心态和勇气,但也可能会开启一条新的、更有前途的职业道路。
综上所述,作为一名程序员,需要不断学习新技能、建立广泛的人脉,做好个人品牌建设,不行就要提前考虑转行。
㈣ 程序员未来前景如何大龄程序员出路在哪里
年龄大的普通程序员,将来的出路无非就是以下三个:
1、稳定地待在一家公司,有一定产出效率,成为一颗螺丝钉,不出彩也不出丑,就像之前棉纺厂的工人那样,直到这家公司不行了,找另一家,继续做个普通一兵。其实这事儿和几十年前的工人一样,只是时代不一样,职业的名字变了。
2、寻找相对优势,到稀缺你技术、能力、经验的地方,找到存在感。比如一线城市回退到二线、三线;比如互联网顶级公司的普通程序员进入小公司;比如互联网行业的普通程序员进入传统行业有软件部门的公司。
3、转行,想干什么干什么去,很多人认为,一个 35 岁以上的程序员相比较一个 20来岁的毕业生,精神状况、身体状况必定是不如刚刚大学毕业的年轻人,所以要尽早转行。那么问题来了,程序员是吃青春饭的吗?程序员的职业发展到底如何呢?
首先,我觉得时至今日,相比其他职业,程序员仍然是一个投入产出比比较高的职业。程序员不是一个“吃青春饭”的职业,而是一个常青的职业。程序员其实也并没有我们想象中那么累,很多互联网公司的工作环境、工作氛围、员工福利都是非常不错的:弹性工作,定期团建,免费健身;一日三餐、零食饮料应有尽有。对于头脑灵活、思维敏捷,但还没有明确职业目标的理工科毕业生而言,把程序员作为职业生涯的起点,应该会是一个不错的选择。以北京为例,应届毕业起薪在 8000-10000 元,比其他职业高出不少。程序员现在小蜜蜂云工作了解很多远程可办公的,全职兼职都是有的,可供的选择还是比较多的。
程序员在职业生涯第一个阶段,通常是 3-5 年。这个阶段要以职业探索为主,脚踏实地写好每一行代码。只有快速学习和成长,掌握过硬的专业技能,这样才能在职场立足,走好未来的路。现在程序员的职业领域已经细分到了令人发指的地步,比如:大数据工程师、云计算工程师、某某语言工程师、系统架构师、web 前端工程师、嵌入式软件工程师、数据库开发工程师等等。
㈤ 成为一名“高级”程序员的条件是什么麻烦告诉我
聪明的程序员可能比他们的同行拥有更出众的编程技巧,但那不足以说明他们就是“老手”。同样,仅仅因为拥有10年编程经验也并不意味着他们就是高手。在工作岗位上,拥有多年编程经验也不能说明问题。即便没被炒鱿鱼,那也不能提升你的价值。
下面列举的事情是大多数高级程序员都会做的。
1.至少掌握一门编程语言
我相信有些优秀的程序员只懂(并精通)一门编程语言,但在某种程度上而言,这其实会限制一个人的思维。就像当你手拿一把锤子时,任何东西看起来都像钉子。我认为,知道并成功使用至少一门编程语言,这是程序员从新手走向老手的重要一步。我要说的是,像JavaScript和SQL这样的辅助编程语言,只有当你确实已经开发了完整的应用程序,并在其中使用这些编程语言时,它们才有价值。
2.工作之余也经常编程
我抱怨过把开源作为招贤的一项要求,但那仅仅因为许多充满激情的程序员把时间花在别的地方。除了对开源有所贡献,你还可以做兼职顾问,兼职创业,开发自己的产品或者创办自己的微型软件公司。当然,你也可以尝试从外部接些兼职项目,可参考伯乐在线的这篇《成功接项目需要注意的几个要点》。
注:mISV即MicroISV,是一个只有一名员工组成的软件公司,是一种微型公司。
3.经历完整的软件开发过程,从概念设计到产品实现,再到产品维护
有的程序员希望不用自己动手就可以得到详细的设计说明,然后把缺陷代码交给测试/维护小组,这是平庸程序员的一个缩影。任何称职的程序员都会跟客户密切合作,去制定需求分析,然后编码实现,当然也要维护。如果你在编码实现阶段偷懒了,那你在维护阶段不得不付出代价。
4.不断创新
创新就是做一些你身边的人没有做过的事情,用来改善你的过程或产品。你不一定非得是世界上第一个做这件事的人,只要发现一个问题,找到解决方法然后实现它就行。
5.编写的软件能解决实际问题
有一副虚构的场景:一名黑客,仅仅是出于对技术以及自己所做事情的爱,一天到晚都在编写代码。但这几乎无助于成就一名优秀的开发者。事实上,我曾见过有些开发人员和客户争论,来采用更好但不太有助客户的技术。这会适得其反。你可以利用自己的时间来完善。但涉及工作时,你最好还是编写能实际改进并解决问题的代码,而不是使用那些不同寻常的算法或接口。
这些问题对于任何想成为高级开发人员的朋友来说,都合情合理。因为这些问题和拥有多少年编程经验并没有关联。如果你能做到上面4-5条,那你就是高级程序员。
㈥ 最适合程序员转行的职业有哪些
1、成为高手或专家
在某个领域深耕,成为能够解决复杂问题的高手或专家,这是少数热衷技术的程序员的理想归宿。按照德雷福斯模型,一个技术领域内,可能有12%~15%左右的人,可以达到这种程度。
2、走向管理岗位
成为管理者,是另一条常规的发展路径,也是很多人的目标。甚至有人会认为,如果到了35岁,还没有成为管理者,软件开发生涯基本就结束了。(我认为这种说法是站不住脚的。)
管理者以人为杠杆,通过他人工作,能够实现更大的目标。所以优秀的管理者,会有机会拿到更多的薪水、奖金、股票或期权,综合收入,大概率比同龄的技术人员要高。
3、稳定在一家公司成为团队骨干
一个研发团队中,除了专家和管理人员,往往还有几位骨干,技术能力虽然还未到专家水平但也比较突出,能很好的胜任工作,同时他们还能很好的理解业务,在做项目时,靠谱,让人放心。
这类人在团队中的占比,可能在15~20%左右,他们是中流砥柱,非常重要,只要公司这条船不沉,他们就可以继续前进。甚至公司这条船沉了,他们也可以换乘领域内的另一条船,继续做骨干。
4、竞争力不足,反复被裁
有一少部分程序员,没有足够的成长意愿,或者没有精力在成长上持续投资,竞争力逐年下降,成为公司优化的首选对象,反复被各家公司优化,直到没人愿意接纳,被迫转行。
㈦ 长大以后我想当程序员,但我不知道应该从哪里开始
你既然喜欢编程,就应该认认真真的学习一门语言,学习微软的就先从VB开始,VB是比较
好的入门语言,可视化的,比较简单,是非常好的入门语言。书籍最少应该准备两本,不可能一本书籍会包含VB的所有内容,在看书的时候,可以交叉的看,一本
书籍中没有讲到的内容可以在另一本中看到,这样对学习是很有好处的,也能保证所学知识的完整性。学编程是一个很漫长的过程,不要着急,要理论与实践想结
合,例程书籍也是很重要的,看源代码对学习也是很有帮助的,等你学完这门VB语言之后,学习别的语言是非常简单,可以尝试C语言,按照C——C++——
VC的顺序学习,有助于知识的连贯性,我也希望你能学好的。
或者学习Delphi,入门较为郑腊简单类似于VB,但比VB强大,即可作为入门又能做强、做大
1.明确学习目的
学
习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员凳宽,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到
一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺
的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工
作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。
2.打好基础
学编程要具备一定的基础,总结之有以下几方面:
(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)
逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到
这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要
敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
(3)
选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发应用软件开发的工具有:Visual
Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle
Developer 、Power Builder 等。 2)跨平台开发开发工具如 Java 等。 3)网络开发对客户端开发工具如:Java
Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB
法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。
3. 注意理解一些重要概念
一本程序设计的书看到的无非就是变量、函数、条件喊粗滑语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。
4.掌握编程思想
学
习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows
的内在机理、什么是线程......;学习 COM 就要知道 VTALBE
、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。
5.多实践、多交流
掌握
编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。
这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性
思维应用的体现,也是培养逻辑思维的好方法。
6.养成良好的编程习惯
编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。
7.上网学编程
在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。
8.加强计算机理论知识的再学习
学
编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可
以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些
计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入
学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这
样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。
总结
1、先照书上的题目写,题目的设计是有道理的巩固基础知识。
2、找数学题,写个小程序解决,熟悉算法和基础函数。
3、自己出题目,小一点的,如自编资源管理器、自编写字板之类,练习WINDOWS下的编程。
4、结合身边的事,找个中等课题,或看别人的程序,自已想办法实现。
5.把教材中的例子,自己仿照着写一遍,上机运行,看结果.要知道,任何产品都是有例子的,有机结合或仿照。
6.从自己熟悉的事情入手,如成绩统计,编制一段程序,完成一个功能.然后再完善。
7.要反复破坏代码,从破坏中寻找代码的规律。
8.必须经常反复上机练习。
㈧ 程序员如何自己创业
30岁,对于每一个程序员来说都是尴尬的年龄,仿佛舞台上不知不觉间已经谢幕,而自己仍在独舞;创业,对于每一个程序员来说都是曾经或者正在憧憬的梦想,可是梦想与成功之间难以逾越的距离却也让多少人望而却步……以下是我为大家整理的程序员如何自己创业相关 文章 。
周鸿祎谈程序员创业
很多人都向往着有一天自己创业,程序员更是如此。如果你想创业,那么该怎样创业、需要有哪些准备、自己还有什么不足等等这些问题你考虑过吗?本文就跟大家分享周鸿祎在接受某媒体采访时给程序员上的创业课。
程序员创业的特别之处
关于程序员创业,我之所以愿意谈我的观点,是因为我是程序员出身,也是从小公司做起来的,我自认为对待很多程序员个人包括共享软件作者和一些小网站还是很好的。我希望和他们分享一些 经验 和体会。
首先,我想说的是聪明人不一定能成功,很多程序员很聪明,但我一看就知道他们不会成功。因为我看到了一些问题,而且现在太多程序员存在很多误解。因此,我希望把我的观点告诉程序员。或许有一些程序员能够清醒,某个人可能因为我的某一句话有了感觉,对他以后的成长产生了帮助,这就足够了。
要知道,程序员总是以为自己优秀所以就能成功,其实不是。中国的程序员大部分是盲目的:看看一些论坛就能够感觉到,要么有一群人自我感觉极端的良好,以专家自居,要么就是一群蓝领埋怨公司和社会环境不行,待遇不好。
应该说,中国程序员创业的成功率也是很低的。放眼望去,中国互联网成功的人士有几个是真正写过十年软件的。事实上,现状和我们所能听到的媒体宣传的 故事 很不一样。
很多程序员的最高理想就是写一个共享软件,一年可以挣几百万。但我希望谈的不是告诉程序员如何挣钱,挣钱很容易,而是要告诉程序员如何去创业。比如虽然FlashGet的作者收入很高,衣食无忧,但从创业的角度看,它并没有以商业公司的方式创业成功。
程序员在创业方面的欠缺
首先,我看到中国程序员的合作心态非常缺乏,我认为这是中国程序员最大的问题,当然这是有很多原因的。
大家经常说这句话:态度决定一切。但事实上好程序员基本上都比较傲气,因为程序员往往会觉得自己在做世界上一件十分伟大的事情,这就是驱动机器,修改一行代 码,机器就能够工作,可以产生各种不同的行为。这很容易会让程序员产生一种错觉,认为自己可以Control Everything。程序员的自信在编程上是非常需要的,但不是适合一切场合。如果我们不说这些,可能很多程序员到现在还不知道自己错在哪里,仍然认为 自己是King of the World。
事实上,程序员的能力只是控制了一个机器。但创业仅仅具备了和机器打交道这一种能力是绝 对不够的,他还需要和合作伙伴、竞争对手、投资人、员工甚至整个社会环境打交道。很多程序员因为已经习惯了和机器打交道,不善于也不愿意 其它 的工作。很多程序员会内心认为“营销不是很简单嘛,市场很简单啊,管理也很简单啊,”我认为这种心态是非常害人的。
程序员还是一个很固执的人群,他觉得自己是机器的统帅,因此不会灵活,不会妥协。我当时也喜欢写程序,但我知道如果自己沉迷于写程序,肯定没戏,所以是逼着自己改变角色。
优秀的程序员不要自负
这两天,我收到几封程序员的来信。有一封信中大意说“我是个如此优秀的程序员,为什么我就不能成功呢,请你指点。这里有我的blog地址,看完你就 会了解我了。”我想说的是:如果真的希望别人帮忙,就要把情况真实的说出来,而不是上来就说自己很优秀,这种语言就会让别人觉得很不舒服,不是很好的交流 方式。我还真看了那个blog,但看完之后,觉得这个程序员就是一个空想狂。
可以说,很多程序员实际上是优秀带来了自负,这种自负使得其不要说创业,可能在在公司中工作也会遇到问题。所以,我甚至认为程序员在创业方面遇到的困难比其它类型的人员更大。如果程序员希望主导一个创业,可能首先就要逼自己不是一个程序员。
程序员应持开放心态,寻求团队合作
程序员首先要学会和别人合作。提到这点,很多程序员都会说“我正在带着其他程序员写程序啊,我会合作啊。”但这种合作是片面的,我所谈的不仅仅是程序员和程序员之间的合作,而是包括了程序员和其它各种角色之间的合作。程序员相亲,他们的语言比较能够容易理解。但作为一个程序员,你能不能商业人员、销售人员很好的合作呢。
我这些年还看到很多这样的例子:程序员动不动就把目标定为比尔·盖茨。其实,比尔盖茨不应该成为程序员崇拜的目标对象,这会让程序员迷失方向,因为微软另外一个创始人保罗·艾伦才是真正的程序员。再看其它一些例子,Google的第20名 程序员都可以获得五亿美元。Adobe公司两个创始人也是一个精通技术,一个对商业精通,这样的搭配才能够更好的成功。因此,对于很多程序员来说,一定要找准真正的榜样,不要被外界的故事迷惑了头脑。如果剖开一些故事的外表,你会发现国外很多成功的程序员,背后一定有一个很强大的商业感觉的人或者一个团队。
程序员的商业感觉其实并 不是很好。即便有商业感觉,其实这只是一个灵感,一个创意,但要要做成、做大还需要一系列的管理、市场、运营,这些对于程序员是不可想象的。程序员要明 白,在自己不擅长的领域,找到一个可以弥补自己缺陷的合作团队才是出路。加入一个创业团队,可能个人占10%,但因为更容易成功,而且团队可以做100分 的事情。而如果只是一个人做,很可能就失败了。
这方面,国外的程序员对自己的长短比较清楚。在硅谷,很多程序员技术上都很牛,但他们 都非常知道自己只是在技术这个领域水平比较高,出了这个领域,自己什么都不是。正因为有了这种心态,他们特别懂得与人合作。我认为国外的程序员已经普遍意 识到了这点,他们很愿意成为创业团队中的一员而并非自己创业。
因此,程序员需要调整心态,不要把自己当作精英人物,要承认自己在编程方面是优秀的,但永远有人比自己更优秀,对于其它的领域,很可能自己很无知。要知道,其实程序员的选择其实是最少的,因此抱有开放的心态是最重要的。
程序员与创业要求还有哪些差距
我认为现在的很多程序员经验过于不足,他没有认真踏实做过很多工作就奢谈创业。如果一个程序员没有在编程方面深入过,没有积累,也就是半瓶子醋。这 样的程序员我接触过很多,他们自己也不清楚问题出在哪里,让人感觉又爱又恨。我认为程序员既然要凭借自己的技术,那就一定要踏实,要能够实现任何创意。
但现在一些程序员自己没有商业意识,却又很自负,不相信别人,不理解的事情就不做。我遇到过很多程序员,他们对公司做什么方向都质疑。他 们希望自己先想清楚,可是一想就浪费了很长时间。很多程序员就可悲在这里,积累的不多,看不到方向,但他也不相信自己的公司和老板,这是一个悖论,需要程 序员深刻反省。要知道,每个公司都有懂商业的人。
就这样,一些程序员极端自负,另外有一些程序员碰了很多钉子之后,感觉很自卑,于是便认为国内软件业不行,最后 出国 或者打工,很少有程序员能对自己能做公正的评价。
国内环境是否造成程序员浮躁的因素
我以前没有仔细考虑过这点。但我想,不管怎样,程序员需要先从自身找问题,因为大环境就是这样了。我承认一个现实:程序员生存状态并不是很好,但程序员很多报怨其实是一种不切实际的期望值和自身的缺陷产生的反差。
首先,产品没有大小,只有市场的大小。很多人总是觉得这也小,那也看不上。认为公司做的产品很无聊,要做就要像某些人宣扬的那样:做游戏一定要 做3D引擎,好像只有这样才够牛。这其实就是一种浮躁。很多程序员写软件总是很多bug,基础知识也不牢固,没有参加几个项目,没有写过十万行代码,就奢 谈做大项目,这有价值吗?
而且我还发现有些程序员特别愤青,骂环境,骂老板,其实这只能把自己的心态搞的很坏。很多人刚进公司时做的很差,虽然工资少,但他没有想到给公司增加了很多bug,公司实际上是在给他出学费。论坛上大家都在讨论哪里活干得少钱拿的多。甚至还有人列了一些黑名 单。这种做法的结果就是程序员自己将周围环境搞的乌烟瘴气了。
有的程序员还非常喜欢指点江山,指点公司。我个人觉得这不是不可以,但 指责别的公司对个人没有什么好处,因为存在就是合理的。如果看不到,恰恰证明是自己看不到。我看到很多程序员也写blog,技术交流的我认为非常好,但有 些人是写评论。我是觉得程序员不要做评论家,中国不缺评论家,最缺的是实干家。
总之,程序员一般过于自我。总生活在自我的世界中,就不可能真正了解世界是什么。我很早就意识到了这些问题,也努力的去客服。我的经验就是看别人如何做的好,为什么能够做的好,什么是我所不能理解。程序员要学会慢慢站在别人立场上看问题。
最后给希望创业的程序员一点建议
对程序员来说,现在要做的也很简单,这就是需要大量的实践,要慢慢培养对产品,对商业的感觉。我的建议说出来可能有些忠言逆耳。对绝大多数程序员来 说,自己一个人成功的机率是很小的,所以我认为加入一个创业的团队可能更为合适。现在有很多初期创业的公司,也需要很多优秀的程序员加盟。如果有理想,可 以选择加入一个团队,也有相应的股份,这方面我可以充当一个桥梁。
看看前网络程序员是如何创业的?找合伙人已经OUT了!
“来吧,做我的CTO,给你股份,咱自己当老板。”
因为同学的一句话,前网络研发工程师YK辞职创业。一群毛头小子,技术能力过硬,但毕竟资源不足,经验欠缺,不到半年,项目无疾而终。 互联网创业 盛行的现在,一个好的技术抵得过一支团队,更别说出身BAT了。
但很多人不知道的是,就是这一样一支技术实力超强的团队,最终竟然也输在了人上——过于强调技术,没有头脑足够清醒的团队成员及时制止。这也是为什么要选背景不同、经验不同的一群人一起创业了。曾经和YK聊过很久,项目失败的背后是他对创业更多的思考,特别是对于那些拥有好工作的人来说,抛下一切投身创业需要付出的成本太高,但如果只是给创业者打工,那还不如守着原有的工作,至少更体面、更有保障。
就在我以为他会重新安安稳稳工作的时候,却意外的在创业大街再次见到了他。细聊起来才知道,他并非辞职重新开始创业,而是用自己擅长的技术加入到新的创业团队中,以外部合伙人的身份帮助两个不同方向的项目解决技术开发问题。这次来到大街,是专门和一支团队开技术碰头会的。
他的这个选择意料之外,却又情理之中。意料之外的是他居然理智的没有辞职,情理之中的是他选择了成为外部合伙人,用业余时间一边做顾问、一边写代码,实现了时间、能力价值的最大化。
其实,说到外部合伙人就不得不提智筹平台。去年3月,正是看到了毛大庆宣布 离职 但依旧担任万科外部合伙人的新闻后,智筹将“外部合伙”作为创业者&人才之间对接的一种新的合作关系。现在,创业者来智筹发布任务,除了能与互联网高级人才建立长期顾问、短期兼职、驻场办公、远程协作等合作关系之外,也能通过部分现金+可回购股份的方式,与人才建立外部合伙关系。外部合伙人是一个没有行政职位,但依旧为企业、团队做贡献的人。
对于创业团队来说,外部合伙人解决了以下问题:
1.快速成长,度过难关。
按照原本的思路,YK服务的两支团队还陷在满世界寻找CTO、找程序猿的泥沼中,但有了外部合伙人,更低的参与门槛吸引了更多人才愿意加入,不仅解决了燃眉之急,更推动项目度过难关、快速前行。
2.满足了人才的多样性。
一个合伙人已经很难找了,更不用说基因不同、知识不同、经验不同的一群人。外部合伙人大大降低了对人才的束缚,而这样的一种合作模式,让越来越多的人才愿意加入到创业中来,组建这样一支多样化团队更容易。
3.更快找到,成本更低。
外部合伙人是通过股权激励撮合到一起的一群人,利用可回购股权让人才把创业者的事当做自己的事,目标、利益一致,做事更用心、更高效。股权支付的方式又可以降低初创的资金压力,创业者不用支付很高的现金,也能请到非常NB的人才来解决难题。
外部合伙人极大的缓解了创业找人难的窘境,但当创业者真正去寻找外部合伙人的时候,往往又会担心外部合伙人的时间、效率怎么保证?水平怎么衡量?什么人才适合做外部合伙人?
首先,时间自由是第一标准,至少是时间可控,能够拿出足够精力完成任务。否则,连时间都不能自由支配的外部合伙人也太不称职了,CEO找你开会,你却说你在公司加班,即耽误了创业者的时间,又降低了自己的口碑。
其次,独挡一面的能力绝对必不可少。做得了合伙人的,都是某方面十分擅长的专业人才,那么做的了外部合伙人的,需要更高的水平。从一开始我就强调,外部合伙人一定是高级人才,不然没资格帮助创业者解决问题,甚至指导方向。俗话说,没有金刚钻不揽瓷器活,想做外部合伙人,一定得先有过硬的水平。
第三个标准是认可股权模式。中国基金报曾发表评论称,未来十年,如果你与股权无缘,可能无法实现财务自由。在如今楼市低迷、股市重挫的时候,股权投资却异军突起,特别是在大众创业、万众创新的激励下,全国创业氛围浓厚,涌现了一大批优质有潜力的新兴企业、互联网企业。也许你不是土豪,没有钱参与众筹,而此时外部合伙人模式的出现,让普通人也能参与,只不过是用能力和时间参与创业、解决任务,换取股权。
智筹在帮助创业团队对接外部合伙人合作的过程中,通过实践 总结 出了最适合做外部合伙人的群体:自由职业者、大企业主管级以上在职人才、工作室、外包团队等等。这些人能够站在实战的高度,不只提供经验分享,更能够有针对的解决具体问题,融入到项目和团队中。
对于很多创业小伙伴来讲,找钱、找人是躲不开的两座大山,有钱了当然可以请NB的人才加入,有人了事儿干好了钱自然不愁,先有鸡还是先有蛋的问题永远都在,找到一方的突破口自然事半功倍。这时,外部合伙人就是打破这一死循环的关键钥匙,只是需要创业者用开放的心态接受、尝试,毕竟改变原有习惯肯定难受,甚至懒得尝试。但创业原本就是不破不立的事,只有打破旧有习惯,才能接受新鲜事物,才能有更多新的收获。
从另一个角度来看,参与创业的门槛降低,意味着越来越多的人能够将自己的智力换成股权,帮助推动创业的同时,也是对未来的投资。根据智筹平台的数据显示,当 创业项目 获得融资后,人才所持的可回购股权将会以最少3倍的价值兑现,这对于很多人来讲也是不小的吸引力。外部合伙人模式,降低初创资金成本的同时,也让越来越多的高级人才加入到创业中来,大大激发了创业活力,无论创业还是参与创业,用起来都是极好的。
㈨ 长大以后我想当程序员,但我不知道应该从哪里开始
古人云,人不可无志。没有理想的人,就好比灵魂不全的人,整天只会醉生梦死,没有生活的理念,只会机械地活,脑中想的只有今天,而非未来。每一个人,都应该有属于自己的理想,或远大,或渺小,或宏伟,或平凡,各有不同,但都是一个人最美好的心愿。
一个好的理想,就好似一盏路灯,照亮着前进的道路,令前途不再迷茫,我也不例外,我的理想是——当一名程序员。
有些人也许会感到好奇:程序员是什么?尽管人们都并不知道他,但绝对不能小看他,因为没有了他,就没有现在的生活。相信大家都用过微信吧,这是聊天、交流敬空烂配必不可少的一个软件。嗯,她正是由程序员用一串串代码编译而成的。当你看到微信背后,那一个个冷酷、平凡的代码像蚂蚁一般四处排列着,令人头皮发麻。而正是这样“可怕”的东西,造就了现在便捷的生活。
我为什么会想成为一名程序员呢?说来也难怪。二十一世纪可谓是信息科技的时代,各种电子产品横空出世,夺人眼球。嗯,科技更是令人们“亮历瞎天涯比邻”。好奇心强的我,对此感到奇怪。每当家人们使用电子产品时,我总会在一旁观看,希望能发现其中的奥秘。到了后来,母亲发现我对电脑很有兴趣,便给我报了一个电脑编程的培训班。上课第一天,老师便令我大开眼界。老师的手十分粗糙,还有几个老茧,可是碰到键盘,他的手便好似一对翻飞的白鸽,快得令人难以看清。可更让我惊奇的还在后面,那一个个程序还能解一些连我都不知道的题目。那一刻,我目瞪口呆,在心中,我默默埋下了我理想的种子——当一名程序员。
当然,光有理想而不去行动,也是不行的,这就好比纸上谈兵,毫无用处。我为我的理想付出了许多:我拼命地学习语文和数学,以加强我头脑思维与分析题目的速度。我还要练习手的灵敏度,以便于在最短的时间内,打好一道程序。而最重要的,是要有一个过目不忘的大脑,程序员,每天都要浏览一大堆代码,找出其中的错误并改正。有时一找就要坐几个小时,身体不好是无论如何也受不了的。
如果我真的能成为一名程序员,我一定会感到开心、欢乐。就算没有,我在回顾过去时,也会为自己辛苦学习,不虚度光阴从而成就自己,而感到满足。
理想,听起来十分遥远,但又并非如此。生活像路,理想就是路灯,路在脚下,目标就在前方,只有当你肯于坚持而走到尽头时,回首过去,才不会为虚度光阴而感到遗憾!
㈩ Java程序员怎么提升自己
Java程序员如何提升自己”这其实是一个对每个人而言都至关重要的职业发展规划问题,准备充分的人生才有更多选择的机会,没有规划、得过且过是导致许多人中年危机的最重要原因,往往很多人会忽略这一点。因此,java课程培训机构认为这个问题极其重要,值得每位兄侍工作1-3年的程序员深入思考。
第一阶段:1-3年
这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本上的内容迈向真正的企业级开发。我们知道如何团队协作、如何使用项目管理工具、项目版本如何控制、我们写的代码如何测试如何在线上运行等等,积累了一定的开发经验,也对代码有了一定深入的认识,是一个比较纯粹的Coder的阶段。
第二阶段:3-5年
这是程序员的分水岭,如果在这个期间,除了完成本职工作之余,基本不会研究别的东西,这些人永远就是个Coder,年纪大一些势必被更年轻的人给顶替;如果你能在写好代码的同时,还热衷于研究各种技术实现细节、精进1-2门技术,技术上有独当一面、快速解决问题的能力,并且清楚自己未来的发展方向,你将从一个Coder逐步走向系统分析师或是架构师,随之时间的推移,你会成为项目组中不可或缺的核备袭心人物。
第三阶段:5-10年
这又是另一个门槛了,转行或是继续做一名程序员就在这个节点上。如果在前几年就决定在技术进阶路径上精进并且为之努力的话,那么在这个节点上,你必然会仿尘兄成长为一名对行业有着深入认识、对技术有着深入认识、能从零开始对一个产品进行分析的高级程序员,在公司的title基本都是CTO、技术专家、首席架构师等最关键的职位。