转行做编程
你现在的工作头衔并不能决定你将来会做什么。现在你可以转行,尤其是编程。
@SamTalksTesla博士学位绝对不是必需的。重要的是对人工智能的深刻理解,以及能够以实际有用的方式实现神经网络(后者才是真正困难的)。即使你高中毕业也无所谓。2020年2月2日 晚上9:57
众所周知或听说过的事实是,编程的薪水并不低,而是相当高。例如,高级软件工程师的收入就比其他行业的普通专业人士高得多。
它在远程工作方面也更容易实现,没有学位要求,但有自由职业机会和丰厚的工作福利。
然而,软件开发是一个广阔的领域,编程需要一定程度的奉献精神和纪律。
最重要的是,如果您决定转行从事编程职业,您需要弄清楚自己想要从事哪条 IT 职业道路并成为该领域的专家。
技术变化确实很快,但领域却变化很快。
不要害怕从头开始。准备好以下东西:
🔎 先做研究
试着了解一下程序员的工作内容?在这个领域投入时间和精力听起来有趣又吸引人吗?
接下来,阅读其他人如何转行从事编程的故事和博客文章。这样你就能从别人的经验中获得有用的启示。
联系软件开发人员,向他们提问。也许你的朋友就是程序员,或者你的家人?联系他们,问问他们的工作情况。
📚 浏览免费课程,学习基础知识
要想很好地理解切换器编程,最快的方法是先学习计算机科学基础知识。
如今,互联网上充斥着海量的教程、MOOC 和教育视频,几乎涵盖了你需要或想要了解的一切。最著名的提供大量计算机科学课程的在线平台包括
Coursera、Udemy和edX。
就我个人经验而言,CS50x是最好的在线学习课程之一。它是我见过的最高质量的免费资料。我强烈推荐所有初学者或转行者从它开始学习。
此外,还有许多享有盛誉的大学,例如麻省理工学院、哈佛大学、伯克利大学等。这些大学齐心协力,提供高质量的学习材料(讲座、实验、作业)。此外,每门课程都开放给优秀的社区成员,他们将随时为您提供指导并解答您的疑问。
记住,光靠观察是无法学习的——你需要投入其中,深入理解内容。无论你选择什么平台或课程,你的收获都取决于你的投入。
👩💻👨💻考虑加入训练营
假设你没有任何编程经验,并且有一份全职工作。在这种情况下,我强烈建议你参加编程训练营。
这类培训有很多种,线上线下、兼职全职都有,但最大的缺点就是大多是有偿的,费用昂贵。
根据您的生活方式和工作与生活的平衡,您可以在这里找到最适合您的训练营选项。
在报名参加昂贵的训练营之前,我建议进行深入研究,尽可能多地收集有关技术栈和毕业后前景的信息:
-
组织学习过程、课程、项目数量
-
训练营期间将教授的技术栈
-
成功完成后,合作公司提供就业保障
-
参与者为未来求职面试所做的准备
-
与科技公司或初创公司等的支持和面试安排。
确保你对之后要去工作的地点有一个清晰的认识。这样你就可以通过查看 LinkedIn 和 Indeed 等网站来学习当地所需的相关技术。
💼 从事自己的项目
不幸的是,既然你正在转行,你会遭遇很多质疑。人们会怀疑你的技能,而且训练营的证书也不够。
提升编程技能和获得实践经验的最佳方法是开始从事自己的副业项目并将所有内容放在 Github 上。
幸运的是,您可以附加所有已完成项目的链接,以展示您交付工作实施的能力,并强调您是一位多么优秀的程序员!
如果你想找一份编程工作,尤其是在大公司或大企业,拥有作品集至关重要。否则,如果没有文凭或扎实的经验,除非你拥有计算机科学学位,否则根本无法找到工作。有项目经验的人找工作会更容易。
🥑 为开源做出贡献
另一个机会是为开源项目做出贡献。
如今,大多数都是由专业或经验丰富的业余人员团队编写的,以创建现有商业或非营利软件/数字产品的开放版本。
在 GitHub 上创建你的帐户,开始浏览。fork 一个你有兴趣贡献的项目,用你已经学过或正在学习的语言编写。编译它,理解它,然后尝试解决一些问题。总会有一些热门或非热门的问题,还有一些琐碎的事情需要解决。
以下资源将帮助您发现并找到一个可以贡献给GitHub 的项目:探索、开源星期五、CodeTriage、Contributor-ninja、首次贡献
🤝 扩大专业网络
如今,科技招聘人员可以从数据库中联系到许多开发人员候选人。通常,他们“猎头”的是中高级专业人员。
但是,对于刚转行的人来说,如何通过其他方式找到工作呢?——通过专业网络。
它的优点之一是可以找到开发人员之间的联系,并从中获得更多推荐,从而获得作为软件开发人员的第一份工作。
除此之外,创建安全网将使您不再为找工作而苦苦挣扎。
如果您准备在技术领域建立高效而强大的专业网络,并想知道如何做到这一点,那么这份终极专业网络备忘单就是让您轻松顺利地完成这一目标的最佳指南。
👩🏫👨🏫 寻找导师
通常,软件开发人员将大约 70% 的工作时间花在谷歌搜索和阅读上。
基本上,如果你有任何与编程相关的问题,你都会去 Stack Overflow 寻找答案。然而,这可能不足以帮助你将获得的“答案”应用到你的项目中,并使其按预期运行。
因此,你需要一个能帮助你解决出现问题的人。最好能有一位导师。
导师不会替你做事。他们会在你尝试自己解决问题后遇到困难时提供指导和帮助。
您可以通过参加聚会、参加黑客马拉松或您所在地区的类似活动来获得编程导师。
如果您附近没有,请尝试搜索您所在城市/州/国家的开发者 Slack 频道或论坛。查看一些在线平台,例如MentorCruise,它可以连接导师和学员。它不仅实用,而且免费。
Ilona 的提示:例如,你开始参与一个开源项目,负责修复一些小错误,然后突然对如何修复感到困惑。这很正常,所有初学者都会遇到这种情况。只要记住,你可以随时向项目维护者寻求建议。或许,在合作过程中,你们之间可以建立起一些尊重,并自然而然地发展成师徒关系。
💬 结论
总而言之,计算机编程需要投入大量的时间和精力。你需要掌握很多概念和知识,并且需要投入时间去了解不同组件的工作原理以及各种问题的解决方法。
此外,您必须投入大量精力进行长期练习,以获得必要的经验,变得熟练和专业,以便根据您的新角色找到工作。
除此之外,你还必须能够保持足够的投入和动力,不放弃编码,并在解决新工作中可能出现的实际问题时不断努力。
编程需要一定的个性和风格,才能让人不讨厌它。它是一项需要高强度思考、复杂、重复且充满创造力的日常工作。热情是编程的关键,如果你拥有它,你就能成功💯
编写出你最美好的生活,
干杯,Ilona Codes