感谢邀请!
作为一个20年的老程序员,希望这个回答能够对刚加入职场的程序员有所借鉴。
说到程序员的出路在哪里,无非就是对程序员的一个职业发展道路,需要有一个清醒的认识,那么大概程序员的发展,主要分三类。
第一类是走技术化发展,要深入你所在技术领域,比如前端的VUE、JS、HTML等,后端的JAVA、NET、PATHON等,而偶本人是学JAVA的,那么可能你还要了解框架以及大数据、高并发之类的技术,往架构师去发展,最后就是公司的技术总监。
第二类就是管理类,比如说往项目经理,产品经理等中层管理岗位发展,之后就是项目总监或产品总监,前途不可限量。
第三类可能就是转咨询、销售类,也就是说你在程序员某个技术领域做到了最好,那么你可以给其他小白提供技术上面的咨询工作,通过解答问题以及解决技术难题获得收益。另外就是带有技术知识的销售岗,这一类程序员,他可能自身就较为外向,那么他将来就有可能往销售方面发展,既懂技术,又有销售的技巧,后面可以发展成公司的销售总监,或者你可以自己去创业做一家伟大的公司都有可能。
那偶看到目前整个软件开发工具的更新迭代速度是非常快的,比如 Java这一块,那么2000年之前到目前,其实整个Java包括自身的JDK,开发框架的思路,已经发生了天翻地覆的变化。包括大家用到的很多JAVA框架,其实已经是之前完全不一样,包括最早的BS的前后端二层结构B、到MVC结构、到目前的整个微服务分布式。不管是技术还是整个理念,都发展得非常快。所以作为一个程序员,如果不想被淘汰,就必须时刻保持学习,因此非常的累。那大家也看到,程序员的工资相对其他行业来说是比较高的,但是也不可否认目前程序员的一个生存状态,正常的996以及无休止的加班,其实在每个企业里面还是非常多的,那么程序员其实也面临着技术的老化,那么新一波的程序员也将会代替老的程序员。那么还有一个很现实的问题,就是老程序员可能在年龄和体力上也慢慢地跟不上项目的快节奏,精力上也不像年轻人这么充沛。所以说程序员一定要在年轻的时候要想明白你自己将来的出路,这点很重要,而不是到了年纪大的时候你才发现原来脑力劳动其实也是很辛苦的,只是说看起来比较轻松而已。
那么偶个人感觉程序员如果想找到一条好的出路,那么首先要在技术上面有所发展深入,在某个领域某个技术里面去挖深。争取在这个技术领域里面成为专家。根据整个软件发展的趋势来看,你如果只是做一些初级搬运工工作,那么很有可能将来是会被AI以及自动化代码生成工具所取代,所以将来程序员的工作可能会分为几部分,一部分就是专业的架构师,另外一方面就是主要做控件和工具类软件的,即第三方的软件工具。
如果你想做往管理方面发展,那么势必在工作的时候就要多学习一些管理方面的知识,多参与一些管理工作,比如开发小组地领导,项目地领导,公司整体发展的规划等。或者将来能够自己出来创立公司都可以。偶甚至觉得如果你能够往销售方面发展的话,那将来对自己的创业会更有帮助。如果一个程序员既有开发的技能,然后又有销售的技巧,那将来创业势必如虎添翼。
如果年轻的时候不想好这些,那么当你35岁之后,或更大年龄的时候,上有老、下有小的时候,面对你的,将是痛苦的抉择了。因为你不得不在人生的职业道路上重新进行选择。如果你有足够的存款的话,有足够的技能,压力或许会小一些。
以上只是偶个人的小建议,希望对刚刚加入程序员大军的小伙伴们有一些帮助。