谷歌软件工程师Sahil Gaba分享了他的顶级免费谷歌编程课程。
Gaba是一名自学成才的工程师,他在学习编程时使用了谷歌的免费和可审核的课程。
Gaba说,有一门课程是为各个级别的程序员开设的,主题包括Python和生成式人工智能。
感谢您的报名!转到时事通讯偏好
在成为谷歌的软件工程师之前,33岁的Sahil Gaba是一名完全自学成才的计算机工程师,拥有机械工程背景。
许多站在Gaba立场上的新程序员转向免费的YouTube视频或昂贵的编程课程。两者都有缺点。YouTube视频往往缺乏互动元素,而付费课程可能贵得令人难以接受。
“我很晚才开始学习编程,大约25岁,当时我完全困惑了,”Gaba告诉Business Insider。
在寻找资源的过程中,Gaba发现了免费访问谷歌编程课程的方法。其中一些课程是套餐的一部分,价格约为49美元,但可以免费旁听,而其他课程则是谷歌技术开发网站上的免费课程。
旁听谷歌编程课程可以让你在不获得学分或认证的情况下注册。Gaba旁听了几门课程,几个月后在一家小型金融科技初创公司找到了他的第一份编程工作,然后在2019年转到亚马逊,2021年转到谷歌。
他建议每个程序员都可以免费学习这8门课程。
Python是最受初学者和专家欢迎的编程语言之一。Gaba说,这门课程“侧重于你实际开始构建东西所需的核心技能,而不会让你陷入不必要的细节。”
32小时的课程包括阅读、测验和期末项目,让你将你的技能应用到现实世界的问题中。Gaba说,这门课程对数据科学、web开发、自动化甚至某些后端框架的人特别有用。
Gaba说他后悔没有在职业生涯的早期学习Linux,并建议其他人不要犯这样的错误。他说:“Linux是一种广泛分布的操作系统,以其稳定性和安全性而闻名,几乎运行在互联网上的大多数机器上。”“作为一名开发人员,你必须经常使用名为Shell的命令行界面。”
结构化查询语言(Structured Query Language,简称SQL)是处理关系数据库的标准语言,Gaba建议程序员也尽快学习它。“这不是什么复杂的事情,”他说,“但它是能够发布应用程序的一个组成部分。”专业工具:Linux和SQL帮助用户为这两个工具建立坚实的基础。
数据结构和算法是软件工程中解决问题的基石,也是大型科技公司编码面试的关键组成部分。Gaba将理解数据结构和算法描述为面试准备的基石。
本课程不是创建内容,而是让您访问有关面试准备的现有资源数据库。
“他们并不是想重新发明轮子,”他说。“他们实际上是在利用一些好的资源,把它作为一个结构化的学习路径给你。”Gaba建议,如果你只选这张单子上的一门课,那就选这一门吧。
Gaba说编写代码只是编程的第一步;一个高效的程序员还应该掌握Git和GitHub来管理代码,与他人协作,并随时间跟踪更改。
介绍Git和GitHub是一个27小时的课程,将带你完成这两个。
“在本课程结束时,您将拥有有效管理代码并为开源项目做出贡献的技能,”Gaba说。“你将了解如何创建和管理存储库,处理合并冲突,以及有效地使用拉取请求。”
许多新程序员花在调试代码上的时间比实际编写代码的时间要多。Gaba认为,有效的调试是一种能够成就或破坏程序员的可靠性和效率的技能。
Google的调试课程教程序员如何重现问题,找到问题的根本原因,并系统地调试代码。
机器学习,或教机器在不提供直接命令的情况下做出决定,是科技领域最热门的话题之一。
Gaba推荐谷歌的机器学习速成班,在不被算法淹没的情况下涉足机器学习。他最喜欢的部分是交互式可视化和Colab的动手练习。
谷歌的生成式人工智能入门课程向参与者介绍了该技术的基本原理,但不会太深入。Gaba说:“它会告诉你什么是大型语言模型,或者llm,以及它们是如何与我们经常听到的东西联系起来的,比如Gemini和ChatGPT。”
这可以帮助新程序员在将来使用这些技术时感觉更有准备——而且只需要一个小时。
在我们日益数字化的世界里,数据泄露越来越频繁。Gaba认为了解网络安全的基本知识不再是可有可无的。
《网络安全基础》介绍了常见的网络威胁和基本的安全实践,并描述了如何将它们集成到开发过程中。这是一门初级课程,预计需要14个小时才能完成。
Gaba说,虽然这门课程不会把新程序员变成网络安全专家,但它可以更好地掌握公司内部使用的安全实践。“它旨在帮助你了解网络安全的基础知识,这样你就可以编写不暴露任何数据的代码,”他说。
如果你是一名软件工程师,有聪明的职业技巧,并想分享,请发邮件给Tess Martinelli: tmartinelli@businessinsider.com。











