去年8月份,写了一篇工作感想(一),时隔半年有余,也有些想法,特记录于此,主要有以下5点:
- 不断学习
- 工作心态的转变
- 学会拒绝
- 提高工作效率
- 要有备份习惯
1) 不断学习
有些人毕业以后基本就不读书,不学习了,并且平时工作也是应付了事,不勤于思考和总结,所以即便已经工作2-3年,水平却不如一个刚工作一年的新员工,其实刚毕业前几年,尤其需要不断学习、总结和思考。读书期间学到的很多东西,在工作时就不一定管用了,尤其程序员这个行业,在学校没人会教你如何使用SVN或者Git做版本管理,也没人会给你说Stack Overflow基本有你遇到的所有问题和答案,更别说有人教你如何科学上网(程序员这个行业,有时候不能谷歌是很痛苦的)。甚至有些人毕业几年了都不知道GitHub的存在,当然不知道GitHub也不能说明你工作能力不行,但是我想不通一个优秀的程序员怎么可能没听过GitHub。那么如何才能知道上面提及的东西呢?一般情况下要么在工作中学习,要么通过阅读。刚工作的软件开发人员,推荐阅读以下书籍:
- 《软技能》
- 《黑客与画家》
- 《高效能程序员的修炼》
- 《程序员的修炼-从优秀到卓越》
- 《编写可读代码的艺术》
- 《软件随想录》
- 《编程人生》
- 《代码的未来》
- 《像程序员一样思考》
- 《代码整洁之道:程序员的职业素养》
如果觉得不过瘾,请点击我的书单
读完上面这些书,基本不需要别人给你推荐书籍了,因为你已经知道那些书该读,那些书不该读了。像《代码大全》、《重构:改善既有代码的设计》和《程序员修炼之道-从小工到专家》这类书,建议有一定的工作经验再去读,并且多读几遍,因为仅凭在学校的那点代码量,是无法体会这几本书的精髓之处的。
2) 工作心态的转变
有些人在工作时,总是觉得自己是为公司工作,为老板工作。其实不然,你是在为你自己工作,你和公司之间其实是一种“交易行为”,公司给你一定的金钱,购买你提供商品--工作技能,你要是满足不了公司需求,公司购买其他人提供的商品就可以了,或者你降低自己的价格,我想后者是大多数人都不愿意接受的吧。想一想这种情况,你打算以每月3000元请一个保洁,有三个保洁供你选择,你肯定选择工作最出色的一个。换个角度,如果你是三个保洁之中的一员,你如何保证你自己能被选中呢?当然是提供的服务是同等价位下最好的。所以,你其实是将自己的技能当成一种商品出售,公司恰好需要你提供的这种商品,如果你想将自己的商品买个好价格,就必须提高的自己的商品质量。那么如何提高呢?当然是不断学习了,不然公司凭什么给你涨工资?
3) 学会拒绝
在工作中,要提高自己的工作效率,必须学会拒绝,因为总有一类人,喜欢将自己该干的事委托给别人,然后自己尽可能的少干或者什么都不干。比如你正使用gdb调试代码,突然别人问你一个Google就能找到答案的问题,就应该直接让他去Google,千万不要不好意思,这是为他好,授人以鱼不如授人以渔。他不会Google,下次还会问你,他要是会了如何Google,肯定会感激你。工作中总是有一些人,比如:
A:你知道某某的电话号码吗?
B:公司内网上有啊?
A:我不想打开公司内网查找,你给我发一下吧?
你都不愿意,我凭什么就愿意?当然,关系好另当别论,毕竟团队和谐还是很重要的。另外,经常拒绝别人也是不可取的,除非你不需要别人的帮助。否则自己忍忍,适当帮助下别人也没什么坏处。
4) 提高工作效率
在工作中,要尽可能的提高自己的工作效率。如果是重复性的工作,想办法尽量让电脑自动化完成,或者上网查查有什么工具,能协助自己更快的完成。尽量将时间花费在有意义的事情上,不要重复你自己,DRY(Don't Repeat Yourself)原则看似很简单,但是真正的做到却不容易,我经常重复几次以后才意识到将任务定义成自动化或者找相关工具协助,很多时候工作效率不高,都是因为花费大量时间做一些重复性的工作。我一直使用Listary打开或者查找电脑上的文件。对于一些每天都会重复执行的命令我尽量定义成一键执行,比如自动提交代码到Git,一键编译并运行等等。所以,想早点下班,就提高工作效率。
5) 要有备份习惯
在工作中,经常需要修改代码和文档,如果不能及时提交到服务器上,难免会造成数据丢失。比如你写了几天的代码,突然某天电脑硬盘坏了或者电脑被偷了,呵呵。比如你修改了一天的文档,忘记保存,突然断电,又或者你在源文档上修改了一天,领导突然说不需要修改了,你却没法撤销修改,又或者手贱不小心执行了一个rm -rf
命令。相信这些事大家或多或少都听说过或经历过。所以有以下建议:
- 在电脑上写东西请养成随手保存的习惯或者将编辑器设置成自动保存
- 如果文档可以公开,建议本地和云端都保存一份,我写论文时电脑、U盘和云端都保存了一份
- 如果是修改文档,建议先复制一份,再修改
- 搭建自己的版本控制系统如Git、SVN
- 不能提交的代码,尽量在别处也备份一份(尤其放长假时)
- 勤提交代码,前提是能工作且测试通过的代码
当然,数据放在哪都不可能完全的保证安全,只是将数据存放在不同地方,降低丢失可能性而已。
本次分享就到这里,下次再继续。