‘壹’ 项目负责人如何和程序员沟通
做一名程序员,虽然好的口才不是必要条件, 但不善于表达自己想法以及与上司同事沟通,吃亏的是自己;
最近做一个项目,与项目的负责人出现一些不愉快的事情,出现这种情况虽然与其它杂七杂八的事情有点关联, 但最重要的原因还是在工作上缺乏沟通; 例如, 上周他给我们C#组的人员分配工作, 每人负责一个小模块, 数据库和需求文档已经提供有,但数据库的表字段有可能根据实现开发情况做少许改动,而且也给我们一个例子看, 可能参考该例子来做; 在统一讲需求时虽然听起来明白了,但做起来会发现很多关节的细节没考虑进去,而这些细节往往会影响到开发的速度, 甚至看骈符合了文档的需求,但却不符合负责人或者说是客户的实际需求;因为文字类型的需求是比较抽象,特别是要做用户界面, 虽然有例子,但也只能参考,不能照搬也做,这样做出来的程序很多情况下只符合程序员自己的需求; 已经花了很多时间去做一个可能不需要的功能,如我当时做一个日历控件来显示排班信息,且也接近交货日期了,到时交到负责人手里时才发现,这个日历控件不是必要的,选择的时间范围是在弹出窗口里,且不保存到数据..., 这时发现做了很多无用功,又要加班加点去赶进度了。虽然这只是一个小例子,但相似的例子在前几个月里已经发生过几次,为什么呢,因为表达能力差,也不善于与人沟通。可以利用日事清管理工具来沟通,把想法写出来。然后@给项目负责人。不用直接面对,效果不错。
‘贰’ 为什么程序员男朋友一生气就拒绝沟通
因为他有沟通障碍。
所以你会发现做程序员的男朋友,他一生气就没有办法克服身体的这个本能反应,表现出来的就是拒绝沟通。下一次,如果他再这样生气,没有办法沟通的时候呢,你可以尝试去替他说出他心中的想法,慢慢的帮他缓解一下。鼓励他多练习一些沟通技巧,就会越来越好啦~
喜欢请点赞哦,欢迎关注我的公众号(精彩说微课堂),免费教你学口才~
‘叁’ 为什么越来越多的年轻人选择去当码农
‘肆’ 安卓程序员分享会分享什么好
学习方法和心得体会
一、技术实力主要指计算机编程功底,比如编程语言,操作系统,算法能力,网络协议等等。这是作为一个程序员的最基本的能力,也叫硬实力。这方面的知识也叫专业知识,通常,我认为这方面的能力也是最容易提高的,只要愿意花时间研究,都能看到成果。
二、业务能力技术不是目的,解决问题才是目的,运用技术来解决问题的能力就叫做业务能力,有时也叫业务感觉。比如,任何一个产品需求,你都能立即抽象出对应的数据模型;一个及时通信的需求,你能不能理解构建处数据模型出来。这方面的能力需要经验的累积和总结,而且和行业相关,你选择的企业,你经历的公司,你做过的产品都影响着你的业务积累。
三、沟通能力陈景润是中国一位非常有名的数学家。上个世纪80年代,因为一篇报告文学披露了他在数学研究上的成就,成为一代中国青年的励志偶像。但是,他是一个口才极差的人。他1953年于厦门大学毕业后,分配到北京四中任教,因口齿不清,被学校拒绝上讲台授课,只可批改作业,后被“停职回乡养病”,调回厦门大学任资料员。幸好他被华罗庚发现,调入中科院专门搞研究,这个尖端人才才没有因为口才不好被埋没。
‘伍’ Android程序员的较好的职业规划应该是怎样
Android程序员的职业规划,怎么说呢?一句话叫做:早知如此,又何必当初。命运有些是自己可以掌握的,有些可能需要运气和机会。
一、路径可达
先说说路径可达这个词吧?有些人会觉得他的路看不到未来,有些人就可以清晰的看到他的方向。如果你现在所做的工作过两年会不会有所成长,达到你的目标。如果答案是否定的,那么说明现在的工作是没有上升通道的,就需要改变。当然安于现状不思进取是另外一回事。时刻反思自己所走的路,然后迅速调整,可能会少走很多弯路,毕竟时间不可逆。
二、时间规划
我有时候会想我五年后在哪里?做什么?大部分人对于这个都会比较模糊。因为时间跨度太大。五年时间相当于整个生命长河其实比较短,但在职业规划中确是很长的段,特别是刚毕业的那五年。从时间规划来讲肯定会用到时间的切分。宏观的东西只有落地到一件件事上才是有效的,才算得上完整的规划。但是话又说回来人是有惰性的,人对于这种有限制的东西有天然的排斥感,执行起来非常痛苦,即使开始执行起来很有激情,过不了几个月,所有的计划都缩水了,这同时也导致了很多时间的浪费和做事情的盲目性。所以计划的时效性和执行很重要,这里又会涉及一个词:“执行力”。
没有计划也导致学习变成一个一个孤立的点,完全没有串连性。因为你是想到学什么学什么,而不是计划着学,一段时间后可能会有一些积累,但是永远深度不够。这可以做一个简单的实验,把自己脑子里的东西理一理,如果时间需要很长说明整体知识体系已经有些混乱,可以对比一下操作系统的磁盘整理。如果一个人能很好的管理时间那么必成大牛。好学生好在哪里,排除智商的因素外,就是时间管理和善于思考。我觉得我自己最大的问题:时间管理,自律性,沟通能力。这三块是我觉得自己最缺乏一定程度上是致命的,很大程度上会决定我未来的所发展的高度。
三、项目经理还是架构师
在程序员中一直有个讨论就是将来要做项目经理还是做架构师。这两条路的侧重点不一样,所以积累的东西也可能不同。项目经理更强调综合能力,比如说协调能力,沟通能力等一系列偏管理的能力。而架构师可能更专注于技术本身,技术上的宏观方向。两条路有重叠,但是更多的是区别。有些项目经理可能就不会写代码。但是同样可以带好一个项目,一个团队。
我曾经也问自己要是以后这两条路走哪条,其实都可以尝试一下。比如说给一个项目让我带带,我能否把它带好,其实需要机会,同时也需要自己去争取这样的机会。所以我的答案就是如果有机会的话两条路都可以尝试走走,就是两个方向的一些能力都可以进行积累。很多人认为项目经理是一个职位,我倒觉得是动态的,这个项目中你做项目经理,另外一个项目中可能又是开发工程师。所以不永远是项目经理,也不永远是开发工程师。
就程序员而言,专注技术是没有任何问题的,先技术后管理。管理这个东西总的说有点虚无飘渺,各都有各的一套理论,比较难以评估。但是技术是可测量的,通过一定的努力技术水平都会有定的跃升。记得在《肖申克的救赎》里面说到地质的形成只需要两个条件:压力和时间。其实对于学技术也是一样的。只要肯学一定会达到某个水平。到大牛级别的确实需要一些悟性和天分。
四、我的选择
我为什么觉得自己应该走架构师这条路,这和我职业终极目标是契合的。这里先说一下架构师做什么?架构师负责整个项目甚至整个系统的构架(这一句话等于废话)。一般型的项目可能这个设计项目就做掉甚至可能就不需要架构。但是系统复杂度上升的时候,会涉及到系统之间的交互,还有技术的可行性和整个设计的方案。这个时候架构师就出场了。另外的工作就是承担一定的培养新人的工作。所以架构师都需要具备比较好的口才,很多人都说程序员不会说话,错了,那是低端的,到了高端的程序员口才都很好,看一下那些程序员大会中侃侃而谈的架构师们,是不是有种“高端大气上档次”的感觉。这后面会发现有一个发展方向就是“培训师”,还可以写书,其实这些都可能是一些“副产品”。技术到一定的境界很多事情到都是水到渠成。
架构师写代码吗?当然写。他们肯定不会写那些简单的代码,他们一般写什么代码?框架,一般来讲优秀的框架都是一个人或者极少人写出来的。比如说Linux的核心就是一个人写出来的。好的代码绝不是人堆出来的。你给100个初级程序员也整不出一个Struts来。这里会衍生出另外一条路,就是开源框架,很多牛人都是开源社区的爱好者。都或多或少的参与了一些开源项目。甚至把自己写的一些东西开源出来。一般来讲能做到这个级别那是相当厉害的了。
五、领域方向
我记得以前总有人问我你最擅长的领域是什么?这个问题一问我就懵了,因为我从来就没想过这个问题。可能本身还没到分领域的级别,还处于一种“原始积累”阶段。技术学到一定阶段的时候是分领域的。领域之间会有一些交叉。
我所知道的大方向是“高性能,大数据量,移到平台“。这是我给Java这所分的三个方向。其实我上面所说的三个方向不一定是同一个维度。但是我认为写Java的如果没有沾上这三个方向中的一个,一定没有前途。高性能和大数据量的处理需要比较多的技术储备。很多人说写个Java就是CRUD(严格来讲,对于计算机本身所有的操作都是CRUD)。可是在高性能情况下所涉及的问题一下成指数级增长。各种“水平扩展”,“服务化”,“容灾”,”缓存”等各种牛B的词汇就来了,你写一般的CRUD最多也就知道个SSH,这是不一样的。比如说做大数据量的处理一定会知道Hadoop,然后就是云计算,云存储。反正什么牛B什么来。移动平台和上面我所说的维度不一样,因为移动平台相对应的是PC平台。但是由于移动平台的发展时间很短。所以能搭上这趟快车也有不错的发展。要是早些年(2012年以前)进入移动平台的开发,现在同水平的程序员工资肯定更高。这是平台发展所带来的红利。虽然三年前我预见到了移动平台的无可限量,但是那时候就像一个一无所有的人,还管它什么移动平台还是PC平台,能写代码做项目就OK。以至于我学了一个月的Android就偃旗息鼓。
不管怎么样技术的底层都是一样的,所以扎实的基础是必要的,这就是为什么算法和数据结构是永恒不衰的。很多人说算法和数据结构无用那就是无知的表现。这个无知就像在讨论读大学有没有用一样。
六、总结
上面所说的一些东西可能都会比较虚,很多人都可能明白其中的道道,比如说到时间管理,这个估计从学生时代就在讲。但是真正的执行还是千差万别。所以又回归到哪里?回归到人本身。后来我想明白一件事情,即使道理再明白,没有好的执行仍然等于空谈。这里我回想起刘未鹏的《暗时间》。里面非常细致的讲了对于时间的管理。这个我读大学的时候同样在一本书《读大学,究竟读什么》里面也有所论述。当然两个方向是不一样的,一个是程序员的思维,另外一个是文科生的思维。但是道理只有一个,时间利用率的本质是什么。
另外就是实践,强烈的实践。我记得大学的时候读《人性的弱点》真是心潮澎湃,可是过不了多久我就忘了书中的内容。所以没有把书中的一些东西深刻的印记在脑海里并转化成你自己的东西,它永远只是知识。
‘陆’ 学了计算机编程,工作有保障吗
有人说,学IT的人35岁以后就没有什么用了,对这种说法,其实一个稍微内行一点的人就可以坚决的否定他。举个例子说;科学家、艺术家年纪大了都可以继续做,为什么IT人就不行呢?所以这是偏见。在国内,从事IT的人确实年轻人居多,这是因为我国IT起步很晚,最早从事IT的人还没老。但在美国,50岁、60岁的IT人很多,而且做得非常好,很多人成为资深人士,在很重要的岗位工作。
其实,作为一名IT人,我们可以有以下三条路去走:首先我们要以一名22岁大学毕业生为例,为IT人总结发展之路。
一个人22岁如果读硕士,毕业时25岁,到32岁左右时,在IT业已经工作了七八年,这时在职业之路上想再一次提升,可以有3种考虑:
1、如果这个人性格比较内向,不太喜欢与人打交道,就喜欢与计算机打交道,那么可以继续做技术,发展为资深的软件开发师或咨询师。
2、如果这个人有才华,又懂管理,可以作部门经理或项目经理。但是,一个公司里不可能有那么多经理,所以,很多有才华又善于管理的IT人作了软件构架师。
3、开发人员做到一定阶段,年龄增长了,比如40多岁了,他们有技术有经历,很多公司会考虑不让他们再做开发,而去做系统管理员或数据库管理员,这两个岗位工作是外松内紧型,工作量不大,但是责任重大,工作压力大。他们的工作就像消防员,不仅要救火,更重要的是要防火。
如此看来IT人的发展前景还是很乐观的,只是这与我们本身怀揣着的技术有关,技术越专业越精深的人在这个行业走的也就越远!
那么,还有很多年轻人也许并没有22岁读研的运气,他们或者高中毕业就出去打工,或者大学毕业就走上了工作岗位,可是如果我们希望进一步的提高自己的话还是可以选择IT的。
但是,时不我与,我们需要在有限的时间里面把一门技术学到专业化水平,那么我们需要的是过硬的硬件设施,尖端的技术支持,经验丰富的老师和足够的实际训练。据了解湖南长沙一度就是一家集以上优势于一身的以诚实可信的口碑闻名于业内的,以不要门门通只要一门精专注只做Java的教育理念独立于整个湖南IT行业的Java软件培训中心。有人曾经说一度教育的这种追求卓越,专业专一的教育理念是孤注一掷,但事实毫无疑问的证明了,社会在IT软件行业中对于专业型人才的需求远远大于供应。而Java语言的广泛应用和企业对J2EE软件工程师的高薪聘请也足以说明,一度教育对当前就业形势分析的正确性。