作者回复: 谢谢分享🤝
作者回复: 是的,技术之外的能力也很重要,比如沟通能力、产品能力等,而且和技术还可以互补。
作者回复: 赞,谢谢分享!
作者回复: 👍赞!
学习之前有思考,学习有总结,学习之后有行动!
作者回复: 加油,只要坚持多分享,肯定会越来越好!
作者回复: 👍
作者回复: 👍是的,现在网络给了很多人放大影响力的机会。但学习能力和解决问题的能力还是属于很基础的,打好基础才能让影响力更持久!
作者回复: 这个问题我觉得首先是你个人的职业规划的问题,你是否有打算在技术方向深入发展,或者只打算泛泛拓展知识面,还是想管理或者其他方面发展。
如果你是想技术方向发展,想在技术上单点突破,那么首先需要自己选定一个技术方向,web也好、iOS也好、安卓开发也好,每一种都有前途,但最好选择和对你未来职业发展有帮助的,这样才好坚持,才能尽早进入正循环。真不知道选啥,就先选流行的,好过在纠结中浪费了时间。
技术的学习,在做中学是最好的,也是必不可少的。
如果能在工作之内学习自然是最好的途径,但是大多数时候工作并不能给你创造这样的机会,那么你就需要考虑工作之外的学习途径了。
尤其是公司不忙,可以考虑做一点side project,是很好的锻炼途径。比如对我来说,当年业余时间参与了一个Asp.Net的开源项目Community Server的本地化工作,对我技术成长帮助很大。还有我自己做过一个网站,也有不少用户,业余时间维护这个网站也给我很多技术上的成长。
所以你可以考虑是不是有你选择的技术方向的项目可以在业余时间参与的,开源的或者自己做一个产品,都是不错的选择。
作者回复: 确实,其实很多道理都是相通的,在一个领域适用也能应用于其他领域,所以我觉得程序员这个行业,只要是真能构建好知识结构,年龄大并不是障碍,反而是优势。
作者回复: 👍赞,说的很有道理。
像数据结构、算法、面向对象、设计模式、包括软件工程都属于软件开发的基础知识
作者回复: 谢谢分享
竞争力也可以算是影响力,埋头做事结果就是影响力要低一些。
作者回复: 这个说来话长,这里我简要说一下供参考。
当时学习的时候,给我帮助最大的是AspNetForums(后改名Community Server)这个项目,我基于这个项目做了很多次二次开发工作,在二次开发的过程中,让我知道了一个设计良好的项目架构是什么样的,知道了如何应用Asp.Net的知识去构建一个复杂系统。
这一步之后,我又尝试自己模仿AspNetForums的架构去设计系统,这一步其实走了不少弯路,因为为了去模仿某个设计模式而经常脱离业务需求去做设计,但还是让我学习了很多设计知识,也让我有了很多过度设计的教训。
再后来设计开发系统,会更多结合业务需求,选择适合业务需求的架构,做刚刚好的设计。
作者回复: 1. 这个很难比较,毕竟我了解的样本还不够多,我个人的感觉上,技术上差别不大,做事情上,美国工程师职业素质要高一些,善于表达,敢于表达。
2. 发现性能问题,找到原因是关键,比如说可以通过:
- 逐步缩小代码范围,找出代码位置
- 分析内存、分析请求日志,找出异常信息
作者回复: 感谢总结分享!
是的,多站在大局上看问题,多学习方法论,多思考,多实践,多总结
作者回复: 加油,下一篇也会给一些如何提升影响力的建议。但最关键还是要意识到这个问题
作者回复: 是的,往上走相通的就越来越多了