1. 写一份自己的简历。把自己所有的相关技能都罗列出来,然后把那些在100年后还用得到的标出来。给每个技能打分,满分为10分。
2. 罗列出所景仰的程序员。尽量包括那些一起工作的人,因为在工作中会从他们身上获取一些技能。记录下他们身上的1 ~ 2个闪光点,也就是希望自己有所提高的方面。
3. 查看维基百科上的“计算机科学”栏目,找到“计算机领域先驱者”这个分类,从这个列表中挑选一个人,阅读他的事迹,并且在阅读时打开任何感兴趣的链接。
4. 花20分钟通读别人的代码。读出色的代码和读糟糕的代码都是有益的,两者都要读,轮流切换。如果无法感觉出它们之间的区别,可以求助于一位尊敬的程序员,让他给自己展示一下什么是出色的代码、什么是糟糕的代码。把自己读过的代码给别人也看看,问问他们的看法。
5. 罗列出自己最喜欢的10个编程工具——那些自己觉得用得最多、非有不行的工具。随机挑选其中的一个工具,花一个小时去阅读它的文档。在这一个小时里,努力去学习这个工具的某个不曾意识到的新功能,或者发现某种新的使用方法。
6. 想一想,除了编程之外最擅长什么事情?再想一想,自己是通过怎样的锻炼才变得如此熟练和专业的?这对于自己的编程工作又有什么启发呢?(怎么把这些经验应用到编程方面?)
7. 拿出一叠简历,并和一组面试官在同一个房间里待上一个小时。确保每份简历都至少被3个面试官看过,并且要给出1 ~ 3分的评分。针对那些不同面试官评判大相径庭的简历展开讨论。
8. 参与一个电话面试。事后写下自己的反馈,抛出自己的观点,然后与主持电话面试的人聊一聊,看看是否达成了一致的结论。
9. 进行一次技术面试,并且被面试的人应该是某个不太了解的领域里的专家。让他假定听众在该领域里一无所知,因此请他从最基础的讲起。努力去理解他所说的,必要时问一些问题。
10. 有机会参与别人的技术面试。期间,你只是认真地听、认真地学。在应聘者努力解决技术问题的同时,也要在自己脑子里尝试解决这些问题。
11. 找到一个能和自己交换实际问题的人,每隔一周,相互交流编程问题。花10 ~ 15分钟来尝试解决这些问题,再用10 ~ 15分钟进行讨论(无论能否解决)。
12. 当听到任何一时之间也无法解决的面试问题时,赶紧回到的座位上,把这个问题用电子邮件发给自己,以留作日后的提醒。在那一周里找出点时间,用自己最喜欢的编程语言来解决它。
----淄博软件开发----