Ⅰ 程序员四十岁以后该怎么办
这个问题,适合我回答。我是99年毕业的计算机系本科生,所以同学基本上都是40岁上下做it的人士。我就捡着几个年轻时做过程序员的同学例子给你们说说,看看这些程序员40岁以后干啥去了。
同学A,2000年去了某大公司H做开发,因为善沟通有亲和力,后来逐渐脱离技术岗,做项目经理,售前,现在负责对外投资。
同学B,2000年去了某大公司H做开发,因为天赋好,技术岗位一路上升,做到中层领导职位,后来看好某新技术,毅然离职创业任ceo,坚持写代码至今。如今一边经营公司,一边写代码,一边组织小乐队吹拉弹唱,等着风口到来好起飞。
同学C,进入对日外包行业做程序员,现在自己组建软件开发公司做老板,时不常的还会弄弄代码啥的。
同学D,进入对日外包行业做程序员被外派日本,后来定居日本,目前仍然是做维护代码工作。
同学E,进入通讯领域做程序员,在换过多家公司之后,依然以资深专家身份玩弄着代码,并以此为乐。
同学F,经历了北漂创业,身体健康亮红灯后,再次回到软件外包行业打工。如今作为资深程序员坚持在代码第一线,还经常加班。
同学G,毕业之后不久就炒了公司,做了软件开发个体户。从共享软件到如今的APP开发,总能弄出名堂在排行榜中占有一席之地。十几年如一日,一边潇洒生活,一边弄弄代码保持排行名次。现在生活无忧,不停生孩子玩儿。
同学H,毕业后进了某大公司Z,做程序员。如今在Z司的下属公司做某项目负责人。
所以说,各个行业呢,都是有深度的,不仅仅是写代码那么简单。只要你愿意做下去,多年的行业经验积累会帮到你。
软件开发,或者说程序员工作,说到底就是一种工作。跟其他工作一样,都是用来养家糊口的。喜欢呢,就做得开心些;不喜欢呢,早点转行也好,或者继续靠这个赚钱同时,培养点其他爱好也好,都行。
Ⅱ 三十岁的程序员,应该如何规划以后的人生
我想大部分人职业生涯的初期,跳槽、换工作大都是为了薪资,哪个方向赚的多,我去干哪个,哪家公司给开的价高,福利待遇好,那我就去那家公司。所以,为什么很多 IT 人频繁的跳槽,我不认为为了钱工作这是错误的价值观,毕竟工作就是为了赚钱养家,过的更好嘛,但是等你经历之后,你会发现,职业生涯的初期,确实跳槽涨薪很快,但是到了中后期之后,你会发现,跳槽再也没有前期涨幅那么巨大了,而且自己在频繁的跳槽过程中,很多技能与业务的能力也没能积累起来,导致很多人在 30 岁左右,就会焦虑感很重,不知道自己未来的路何去何从。
Ⅲ 作为一名程序员,从事技术管理工作,应该注意哪些事情
应该要注意向团队之中的前辈学习,因为团队之中的前辈在编程方面具有很多的技巧可以向他们进行相映的讨教,其次,在数据方面一定要认真仔细,因为数据层面涉及到的获取数据,数据书写以及数据修改等这些相应的东西都一定要校准,最后在流程方面一定要认真仔细,要多做笔记,因为这样才能够去更好的熟悉流程。
在编程这个行业里面,程序员需要学习的东西非常的多,但是最为重要的东西还是必须要向前辈学习,因为编程的内容和其他行业具有很大的区别,基本上在团队里面的前辈拥有着很多的经验,在编程方面能够授予很多的技巧性的东西。尤其是针对于公司内部的编写规范,基本上这些东西都存在着很多非常复杂的细节,所以作为公司的新人首先要做的就是要向公司的前辈请教,究竟哪些东西是不需要去弄的,做好这些相应的东西才能够在前辈的帮助之下学会自己该掌握的技能,才能够在有技巧的东西之上,形成自己的新东西。
一名优秀的程序员一定要学会方方面面的内容,更是要再踏入公司的时候向前辈学习相关的经验,因为只有这样才能够让自己得到更快的成长,才能够在时间的积累之下,成为一名优秀的程序员。
Ⅳ 程序员怎样才能走上管理岗位
想接受挑战首先要认识自己,看自己是否适合做管理不防考虑以下几点:对待问题是否公平公正,是否能够牺牲自我的利益顾全大局,是否有洞察力,是否能够了解组员的想法,是否能够做出正确的决策在没有条件许可的前提下……另外在该职责里面有两个重要的事情要做,一件事情是帮着老板干活,另一件事是替组员说话帮助他们争取相应的权益,所以夹心层的处理方式是处理好承担与托付,即责任的承担和信任的建立。
技术管理者的技术不是最资深的,但应该具备专业的能力,并且是某个领域的技术和业务专家,因为一个人的能力是有限的,管理上有所建树便注定了技术道路上深度有限,但他有自己的技术见解并能够在需求把控、产品设计、架构设计中给予建设性意见并作出正确的决策,也只有这样才不会变成空中楼阁的大领导,拥有良好的技术基础是赢得你的团队信任的前提,也是自己能够建设一个可信任的团队的前提。作为管理者只有得到大家的认可,大家的信任,才能进而营造一个可信任的团队,使得各个部门之间互信,协调一致。而得到大家的信任作为管理者必须要有一定技术基础,也只有基于该基础才能做出正确的判断力,才能够确保团队整体方向的正确性。
建议每个技术人员能够经历项目经理的角色,尝试一下管理团队,看一下有哪些问题要解决,换一种角度思考你所参与的项目,培养自己的大局观,大局观重要性在于能够让个体将一个事物分析的更清晰,只有站得高才能看得远,大局观对个人而言很重要,拥有大局观会使个体在把握处理事情上更公正清晰,并更有利于作出正确的决策使得工作向良性方向发展。对于技术学习本身也需要融会贯通、举一反三,这也是一种意义上的大局观,所以思考角度决定着自己在其发展方向前进的远近,不要只是将自己局限于技术细节当中。
认识自己很重要,因为只有自己做了擅长的事情才能够事半功倍,游刃有余,改变一个人太难,与其效果甚微的改掉缺点不如发挥自己的优势。国外有一种创新的思维,认为缺点和优势其实是相辅相成的,你的缺点正好反映出了你拥有它对应的优点,换一个角度扬长避短,真的就事半功倍了。想一想对于组员又何尝不是呢,与其说服改变一个人不如知人善用,扬长避短。
Ⅳ 程序员如何成为一名合格的项目经理
千万不要在进行需求分析阶段就先进行编码工作,也许你觉得这些模块和具体的业务功能无关,可以直接进入编码阶段,但是你要知道,在这个阶段进行编码工作会使你忽视了对需求的理解和分析,而且并不见得你现在完成的代码模块百分之百适合未来的业务系统,万一有偏差,那就是得不偿失了,在需求分析和系统设计上多花一点时间,会为以后的工作减少很多麻烦。所以在项目管理过程中,我认为最为保险的办法就是严格按照软件开发流程规范来开展工作,虽然这样会相对比较繁琐,但是在很大程度上保证了我们项目的成功率。
有经验的项目经理都说自己是打杂的,所以,你要明白你不再是一个coder,项目组中大大小小的事情都要你去处理,你需要学会主动和小组成员加强沟通,从工作和生活等各个方面加以关心和帮助,这样会使团队气氛更加融洽,提升团队成员对你的信任度,在很大程度上能缓解大家的工作压力,我们倡导的是快乐工作,而不只是为了工作而在一起工作。不要认为自己和团队的成员只是工作关系,同时,他们也是你的朋友。如果你是一位性格内向的项目经理,那么,你应该让自己开朗点,不要因为自己的性格而让整个团队变得很沉闷,那样大家工作起来会感觉非常痛苦。
作为项目的管理者,你不仅仅是被人领导,而是还有一个团队需要你去带领,当他们请教你的时候,你有责任和义务去帮助他们解决,或者给他们指定找谁解决,而不应该因为自己不会而一走了之。同时要学会培养团队中的成员,放开手,大胆的让他们去做,不要认为教他们完成任务还不如自己亲自动来得快,那样你只能做一名程序员,而且越做越累,要知道,还有更多更重要的事情等着你去做。
我建议每一两天应该组织项目组成员开一次讨论会,否则,项目组成员之间谁也不知道谁在做写什么功能。和大家谈谈项目的进展,了解下大家目前遇到的困难和工作进展,适当调整项目组成员之间的工作分配。而不是在项目前期安排了任务后,后期的工作任务不根据项目的实际情况进行调整,等到项目后期时,大家同时抛出很多问题,这样会让你束手无策,一片混乱。所以要及时举行项目讨论会,学会灵活得安排工作任务,没有谁规定一个项目的所有工作任务只能安排一次。
其实作为基层的管理者,要管理好团队相对还是比较简单的,我认为只要和同事之间的关系处理得足够融洽,就意味着你的管理已经成功了一大半了,都说做人比做事重要,相信这一点没错的,但是管理走向更高的层次,就需要你学习一些比较专业的管理学方面的知识了,这段时间在看《从技术能手到管理高手》这本书,我觉得非常适合从程序员逐步转向管理的朋友阅读,但不能照搬书上的条例,要结合自己的实际工作环境,消化吸收之后,再用于实践才是最好的。前段时间CSDN上一位牛人阿朱出了一本书叫做《走出软件作坊》,我只是看了书中的目录和部分内容,从同行的评价来看,我想这本书应该是值得一读的,哈哈。
Ⅵ 工作五年以上的程序员,应该干些什么
我做开发十几年了,说说我的理解。工作五年以上的程序员,应该在这些方面多多精进:在某一领域,建立自己的知识体系,形成顶端优势。因为只有你形成了知识体系,才会更有价值,才能更好的解决问题。培养自己的通用能力,比如沟通、演讲、管理、写作、讲授、组织、辅导等。这些通用能力,能让你更好的与人协作,也能让你获得更好更多的做事机会,能够更好的成长。学会思考,建立思考的习惯。正确的思考,能够让我们少走很多弯路。要多想,想明白再去实现,至少,也要想明白当下要做的这一步再行动。要规划思考时间、要经常琢磨一些根本性的问题,比如你为什么要做软件开发,比如这个产品到底有什么用能给用户带来什么价值,比如怎样才能做得更好,比如我能通过软件开发得到什么,比如五年之后我在哪里……建立自己的影响力。在一个团队之中具备影响力的表现是:经常有人来问你的意见,经常有人向你请教问题,很多事情或者问题依赖你。只有你具备影响力了,才能够做更重要的事情,担任更重要的角色。建立个人品牌和辨识度。你在一家公司工作,离开时,别人会因为你是某某公司的开发工程师而记得你,还是会因为你是机器学习方面的专家而记住你,这非常不同。所以,要竭尽全力,在公司的平台上成就自己,建立个人的品牌,让别人因为你本身的特质而记住你,而不是因为你曾在哪里待过。
Ⅶ 一个优秀的程序员需要养成哪些良好的习惯
1. 理解编程语言的原理,遵循编程规范,并且能够写出有效的代码,并学会优化代码。
2. 估算解决问题所需要的时间,为自己定一个时间限制,加强程序自测试。
3. 做好版本控制,并及时备份代码,经常检查代码,还要回顾以前写过的代码,看看能不能有新想法。
4. 动手编码之前,先做好分析和设计。
5. 对项目文件归类保存。可以把项目文件放到SOURCE、HEADERS、MAKE、EXES等不同的文件夹中。
6. 制定验收规则,优秀出色的程序一定会编写技术测试脚本,因为他们清楚要是省略了这一步会严重后果。
7. 重视,但不过于注重程序的设计模式。
8. 养成耐心、冷静的好习惯,多向优秀的程序员学习。