程序员,是专业写代码的,对我们而言,最难的,从来不是写代码。当然,刚入行的时候,可能会遇到不知该怎么写代码的情况,比如:我入职的第一个题目就是通过 zookeeper 实现两个应用之间的通信,当时不晓得怎么处理,百度了几个小时,最终才搞定。当然这段时间很快就结束了,一般而言,入行1到2年之后,写代码就不会是问题了。

 

从技术层面来说,个人感觉最难的是业务的技术选型和个人的技术能力提升。技术选型,从来都不是一个简单的事情,它和我们所经历的业务、所接触到的架构体现密切相关,只有精准的把控到每个中间件、每个技术点的优缺点,对每项技术都有切身的体会之后,才能给业务选择一套比较合理的技术体系。其次,技术选型还受团队技术能力、公司基础服务体系的限制,做到知业务、通技术、熟悉基础能力,才能搞定技术选型。而对于个人的技术能力提升,这块也不是很容易,作为 java 服务端的程序员,遇到的技术体系多种多样,从底层的 jvm ,到微服务的架构生态 spring cloud,再到横向拓展的 mysql、redis、es、mq等种种都需要了解、熟悉,再网上大数据、算法相关的能力也可以拓展,多点多面,选择和坚持下去真心不容易。

 

从职业发展角度来说,个人感觉最难的是业务总结汇报和跨部门的沟通协调。写 PPT 汇总工作,对程序员来说,从来都不那么简单,很多时候,忙碌了一年,除了做需求还是做需求,要说去总结,感觉又没有什么好总结的,往往 PPT 中体现了一年中20%的工作量,还有80%不晓得该怎么总结汇报。公司发展到一定规模,一个业务很多时候会跨好几个部门来协作完成,此时的跨团队沟通的成本,所需的时间都成倍的增长,需要程序员具备一定的沟通技巧和变通能力,来推进自己负责业务的发展。

 

综上所述,写代码从来都不是问题,相对于和人打交道,程序员更习惯和机器进行沟通。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐