Earlier than changing into a software program engineer at Google, 33-year-old Sahil Gaba was a wholly self-taught pc engineer with a mechanical engineering background.
Many new programmers who begin in Gaba’s footwear flip to free YouTube movies or their dear counterpart, programming programs. Nonetheless, neither is with out its faults. YouTube movies typically lack an interactive ingredient, whereas paid programs will be inaccessibly costly.
“I began studying programming very late in my life, round 25, and I used to be utterly confused on the time,” Gaba informed Enterprise Insider.
Within the seek for various sources, Gaba found methods to entry Google’s programming programs totally free. A few of these programs are a part of totally different packages that price roughly $49 however will be audited without charge, whereas others are complimentary classes positioned on Google’s tech growth web site.
Auditing a Google programming course permits you to enroll with out receiving credit score or a certification. Gaba audited a number of programs and landed his first programming job a number of months later at a small fintech startup earlier than transferring to Amazon in 2019 and Google in 2021.
Listed here are eight necessary programs that he recommends each programmer take — which will be accessed totally free.
1. Crash Course on Python
Python is amongst the most well-liked programming languages for newbies and specialists.”It focuses on the core abilities it’s worthwhile to really begin constructing issues with out bogging you down with pointless particulars,” Gaba mentioned.
The 32-hour course consists of readings, quizzes, and a remaining undertaking which lets you apply your abilities to a real-world downside, supplying you with a well-rounded studying expertise. Gaba mentioned this course is especially helpful for people in information science, internet growth, automation, and even sure backend frameworks.
2. Instruments of the Commerce – Linux and SQL
Gaba says he regrets not studying Linux earlier in his profession and recommends that folk not make that very same mistake. “Linux is a extensively distributed working system identified for its stability and safety and virtually runs most machines on the web. As a developer, it’s a must to work with its command line interface known as Shell fairly often.”
Structured Question Language, or SQL, is a normal language for working with relational databases, and Gaba recommends that programmers be taught it as quickly as doable, too. “It isn’t something advanced, nevertheless it’s an integral a part of with the ability to ship apps.”
Instruments of the Commerce — Linux and SQL is a course that helps customers construct a strong basis for each instruments.
3. Grasp Information Constructions and Algorithms
Information constructions and algorithms are the essential constructing blocks of problem-solving in software program engineering and a vital element of Large Tech coding interviews. Gaba insists that understanding Grasp Information Constructions and Algorithms is the cornerstone of interview preparation.
Somewhat than creating new content material, this course provides you entry to a database of all the most effective present sources on interview preparation.
“They are not attempting to reinvent the wheel, they’re really utilizing a number of the good sources on the market and giving it to you as a structured studying path.” If you are going to do any course on this listing, that is Gaba’s No. 1 suggestion.
4. Introduction to Git and GitHub
Gaba says writing code is simply step one in programming; an efficient programmer must also grasp Git and Github to handle codes, collaborate with others, and monitor modifications over time.
Introduction to Git and GitHub is a 27-hour course that’ll stroll you thru each.
“By the tip of this course, you may have the abilities to handle your code effectively and contribute to open-source initiatives,” Gaba mentioned. “You will perceive find out how to create and handle repositories, deal with merge conflicts, and use pull requests successfully.”
5. Troubleshooting and Debugging Methods
Many new coders fall into the lure of spending extra time attempting to debug their code than really writing it. Gaba defined that successfully debugging is a ability that may make or break a programmer’s reliability and effectivity.
Google’s debugging course teaches programmers find out how to reproduce points, discover their root causes, and systematically debug their code.
6. Machine Studying Crash Course
Machine studying, or instructing a machine to make choices with out offering direct instructions, is among the hottest matters in tech and is sweeping by almost each trade.
Gaba recommends Google’s Machine Studying Crash Course as an effective way to dabble in machine studying with out being overwhelmed by each algorithm on the market. His favourite half is its interactive visualizations and hands-on workout routines on Colab.
7. Generative AI
Google’s Introduction to Generative AI course is a fast introduction to the essential ideas of GenAI with out getting too deep. “It will inform you what the massive language fashions or LLMs are and the way they tie into issues we preserve listening to about, like Gemini and ChatGPT,” Gaba defined.
Getting a grasp on this rising idea may help new programmers really feel extra ready to work with these applied sciences sooner or later — and it will solely take one hour.
8. Foundations of Cybersecurity
In our more and more digital world, information breaches have seemingly turn into a norm. Gaba says understanding the fundamentals of cybersecurity is now not non-compulsory — it’s a necessity.
Foundations of Cybersecurity introduces widespread cyber threats, primary safety practices, and find out how to combine them into the event course of.
Gaba admits this course will not flip new programmers into cybersecurity specialists, nevertheless it does provide a greater grasp of safety practices used inside corporations. “It is designed that will help you perceive the fundamentals of cybersecurity so you’ll be able to write code that does not expose any information.” It is a beginner-level course anticipated to take about 14 hours to finish.
Considered one of Gaba’s best takeaways from these programs is the educational fashion. You get to implement the ideas as an alternative of simply memorizing them.
In case you’re a software program engineer with savvy profession ideas and want to share, please e-mail Tess Martinelli at tmartinelli@businessinsider.com.