转自 http://www.zhihu.com/question/21484361

问:

程序员工作只接触一些不需要高难技术的小项目,该如何提高自己?

程序猿,工作只接触一些小项目,也不需要高难技术,怎么样才能提高自己? 自学当然能提高,但是还是接触不到大的或者高难度的项目,这方面没法提高,咋办?
 
我认为一些比较好的回答。
一、认为自己兴趣和热情所在的。
作者:匿名用户
链接:http://www.zhihu.com/question/21484361/answer/19723894
来源:知乎

背景:之前在一个大公司工作,但由于大公司分工太细,同时还有别的原因,导致我们部门拿不到项目,一直都在做整合,整日都在改别的项目导致的整合的bug,而且有趋紧于看不到代码的局势,全组都是这样,情况比楼主差好多。期间找过主管谈过,但都是些推诿的话,无果后,开始制定自己的计划了。
------------------------ 进入正题 -----------------------------------
和主管聊完天之后,开始制定自己的计划,得出的结论是我必须辞职,但是不是现在。
于是每天拼命的快速完成部门的活,然后开始做自己的研究,开始的时候是写一个项目,再后来放到sf上去,然后是看开源的项目,每日下班回家也持续到12点,节假日,周末,也如此,这样的情况持续了大概半个月,然后试着找工作,面试,然后被拒绝,再回过头来继续自己弄项目。再后来觉得时机成熟了,辞职(这个时间点和我开始指定计划有1年的时间差距,换句话说就是我准备了一年),然后玩了一个月,找工作一个月,现在在一家公司上班。
我现在的状况是有项目做,形式趋近于@卢景伦 的说法,慢慢提高
-----------------
注意:
1、必须要有明确的目标
2、要坚持,我每天下班后和周末都会固定写和看代码到24点以后,确实很累
3、我个人的原因,我对代码有热情。
二、认为自己知道的还是少的。
作者:马驰
链接:http://www.zhihu.com/question/21484361/answer/19573928
来源:知乎

我毕业时候跟楼主经历差不多。上面好多”平凡的岗位做出不平凡的业绩”之类的勉励语,实在让人恼火。这些心灵鸡汤,老板说说也就算了,程序猿何必忽悠程序猿。

人的成长是需要外部环境的。在一个没有技术气氛的公司工作,当然可能成功,但是你会有很多劣势

第一你不能确定真正的技术问题是什么。如果你服务器每天处理的请求就只有八万六千四百个,你在虚拟机搭个阿帕奇就对付住了,你会认为用异步处理的那帮人简直是吃饱了没事干。

第二因为问题并不影响你的绩效,你不会有真正迫切的动力去研究解决方案。你知道异步处理很重要,你自己用epoll写了个服务器,然后发现响应速度还不如阿帕奇了。同事都开着玩笑说你屠龙技终于毕业了。领导也觉得你瞎搞,一气之下你又切换回阿帕奇了。其实你只是错用了水平触发而没有用边缘触发。

第三你不能跟同事学习交流。你的同事都在研究怎么报销车票或者埋头学习日语。你只好每天跟踪丁香园大哥的博客,在了解阿里巴巴八卦的同时,还学习了脸书谷歌雅虎等等大公司的各种牛逼架构。但是你拿到的只是一副图,生成这副图的过程最宝贵,你却一无所知。于是你不得不另辟犀径,最终你靠着收藏转载评论这些架构图成了网络著名架构师。

我觉得,如果你发现自己的技术已经超出了工作所需,唯一的解决方案是跳槽。因为做程序猿正常的状态是,你的技术永远不够用,永远是有无穷的问题需要你去研究。
三、认为学者生,用者死的。
作者:不带你这样的
链接:http://www.zhihu.com/question/21484361/answer/51603027
来源:知乎

很多程序员觉得自己东西做出来就OK了,但是真正东西做出来到实际投入使用,各种各样问题出来后,如何解决!如何规范化避免可能出错的问题。这里面有很多要思考的地方!小到编码风格,质量,结构,大到系统架构,机制,性能。或者管理角度,开发。发布,测试流程!每一块都有很大的学问!有些人写一行代码,都会思考如何严谨,复用,简单,高效;而有些人只知道就应该这样写,不追求为什么?
所以同样一段代码,给有些人会看出一大堆问题和疑问,而有些人什么都看不出来!
处处留心皆学问,这句话对程序员来说,再合适不过!上面提到的任何一点,你钻进去都可以成为大牛!
但很多程序员,只把自己编码当工作,做完再无任何追求!这种俗称码农,干的是体力活,越搞东西越多,越高越累,没新意!有追求的会把每次做的东西总结,可能新做的跟老的很类似,能改造下复用吗,或者干脆抽成工具包,乐此不疲,越做越简单,越做越少,都自动化了!
我相信这个过程最好有个氛围或者导师,指导你趋于进步!到我要说的,这个别人是不会教你的,而是你要先有这个意识,能清楚目标后并有些尝试后,再跟别人沟通,再校正你的看法,再改进和尝试,这样循环才能成功!
程序员铭记,学者生,用者死!
搞清楚什么叫高级语言,你就自己掌握的那点知识多么站不住脚!
题主现在的问题,是心态问题,鄙视自己干的工作。如果你端正心态,再来看问题。如果公司效益不好,市场都不认可,代码有这么乱,没有前途就走吧!如果效益不错,市场反应不错,说明自己产品还有可取之处。看到自己产品的优势,尝试去学习和理解,看到产品的优点和缺点,针对性学习去改进,自己一样会慢慢提高。你看到的问题越多,你成长和进步的机会就越多!
端正心态,看清问题,瞄准方向,努力前进吧,少年!