如何成为一名真正的程序员?
时间:2024-01-27 05:30:02 | 来源:网站运营
时间:2024-01-27 05:30:02 来源:网站运营
如何成为一名真正的程序员?:原答案被挪到这里了:
以下是纯干货回答。
一、实力比学位更重要如果你不是计算机专业科班出身,也别太担心。下面这段话摘抄自吴军的《硅谷来信》。
“今天很多大学毕业生,读完四年大学,学了很多课,其实并没有掌握任何一项得以安身立命的技能。我在腾讯时看了不少校招学生的档案材料以及他们面试的记录,除了极个别的中国名牌大学,大部分学校的毕业生,都没有掌握最基本的工作技能。
比较聪明一点的学生会在上学的最后一年,花钱跑到外面的培训班去进行技能的培养,他们面试时所体现出来的技能要远比那些仅仅在大学里上过一些课的学生强得多。”
可见,想要成为程序员,还得靠硬实力说话。上个培训班,可能比读个大学都管用……我当时看到这个结论也是很震惊的。
二、要当真程序员,先当假程序员在英文中叫“learning by doing”,通过实际工作来学习。要成为真正的程序员,先想办法找到一份程序员的工作,成为假的程序员。之后每天上班就是干这个,还得996的干……你说学得能不快吗?没多久就成真正的程序员了。问题是怎么找到程序员的工作呢?
如果你已经在相关职位了,例如:产品经理,网页或用户界面设计、数据分析师,运维,测试。那么你只需要去准备好简历和面试就行了。
现在的程序员面试,基本属于标准化考试,网上有无数资料帮你准备,其中最重要的就是上LeetCode刷题。准备到位了,是一定可以通过的。有钱的话,买买网课。
三、没有相关背景就分两步走如果你的个人经历和程序员这个职业完全不搭边,那么你可能无法直接拿到程序员岗位的面试。所以,只准备面试是不够的。
你需要先跳到一个相关岗位。通常来讲,数据分析师、测试员、运营维护人员的最低门槛要低一些。以这些行业作为跳板是成为程序员的好方法。这里就需要你去做更多功课,研究一下哪个跳板才是最适合你的。
四、技术实力的积累首先,写好代码除了在准备面试时候学的算法和数据结构之外,你还需要掌握一些软件工程的知识。可以学习《代码整洁之道》。同时学习一些面向对象编程的思想。可以通过学习设计模式和重构的方式来学习。推荐《大话设计模式》。
学这些的过程中,算是基本可以保证代码质量了。
再有就是补足计算机基础。你必须理解计算机中的很多底层的核心概念,否则你无法理解实际工作中的很多问题,也无法和同事顺畅沟通。所以要大概学一遍操作系统、计算机网络和计算机组成原理。看见了吧……直到这里大学科班同学学的知识才用上。
如果再要提高,可以适当学习一些系统设计的内容,让你理解如何在构建大型系统时优化瓶颈。推荐《设计数据密集型应用》。
五、程序员的进阶已经是个程序员了,现在要做啥?在程序员这个行业中,入门之后想要往上走需要的有三个核心能力:技术能力、管理能力、产品能力。
技术能力只是这个行业的基础。个人单打独斗肯定比不上一群人帮你。成为管理者才能帮你实现很多更大的技术构想。管理能力会成为你技术的“扩音器”。
所有计算机技术最终都是要解决实际问题,你能将实际问题解决得越好,你服务的用户就越多,产生的影响力就越大。强大的产品能力能让你的技术不“脱轨”,搞技术的同时能随时想着跟实际生产对接,产生更大的实际价值。