Last year, in the midst of a ton of other major news stories (the U.S. election drama, the COVID-19 pandemic, and many more), one of the most bold and pervasive hacking incidents in tech history hit the news. Thanks to a routine software update by Texas-based SolarWinds (a network management system used by major companies and the U.S. government to monitor the security of their various systems), hackers believed to be based in Russia were able to slip malicious code into the update which then enabled a massive cyberattack, perhaps the biggest in history. In fact, it may take years to fully figure out the damage caused by it.
This cyberattack, building off the increasing frequency of major cybersecurity incidents over the past decade especially, has only shone the light further on the importance of experienced and trained cybersecurity professionals to protect personal data, ensure companies are safe to conduct business, and even the political stability of the world. A quick search for cybersecurity job postings shows thousands of listings, both domestically and worldwide. As more and more commerce moves into the Internet realm, careers in cybersecurity promise to offer both an incredibly important job role and a lucrative career with plenty of room for advancement.
However, becoming a cybersecurity professional isn’t just as simple as enrolling in a course at your local college, or just taking a few online coding classes. There are important skills on both the professional side and the coding knowledge side that you must acquire to work in this demanding industry. Simply put, when the stakes are as high as they are in cybersecurity, the prep work you need to do needs to be extensive to truly prepare you for a career in the field. So what do you need to learn for a career in cybersecurity? Let’s cover the basics, as well as some suggestions on where to start if you want to break into the industry.
An Extensive Technical Background -- Both Knowledge & Applied -- Is Required
Since the stakes are so high when dealing with cybersecurity, this is not a field where companies will roll the dice with unproven hires. In fact, most companies hiring for cybersecurity roles are looking for data security analysts who generally hold at least a bachelor’s degree in computer science, software engineering, information assurance, or a related field. But this is just for some entry-level positions. Truthfully, many more companies prefer candidates who hold a master’s degree in business administration in information systems, which ensures a more detailed academic focus in cybersecurity specifically.
However, this doesn’t mean you have no shot at learning the ropes of cybersecurity if you are still a newer programmer. For example, there are non-technical cybersecurity positions such as a cyber policy analyst or technical writer that don’t require extensive (or in more rare cases, any) coding background. If you are a strong writer with solid grammar skills, you could always start in one of these roles while you learn the coding side from observing more experienced peers or mentors in action.
Another option is to get an entry-level technical position to get your foot in the door. For example, there are specific cybersecurity certifications (like Certified Ethical Hacker, where you basically role play as the “enemy”, or Security +) that don’t require enrolling in a four-year college program. Thus, these are great options for anyone who isn’t willing or able to make the time or money commitment to a college technical program.
Here are a few other more basic positions that fall within the cybersecurity realm that might be a great place to start:
Security operations center (SOC) analyst:
As a SOC analyst, your job will be to report on cyber incidents that menace different areas of the government. You may also conduct vulnerability analysis to identify potential weaknesses in your network or software, and then make recommendations to help your company or division mitigate cyber threats.
Network admins are responsible for securing a corporate or organizational network by dictating network access to only those who need it, or by level of responsibility. Network admin positions also let you learn about the structural hierarchy of networks, which can come in handy when you obtain more complex cybersecurity positions.
Cyber policy analyst:
Here, you’ll develop strategies, procedures, and requirements for the government or corporations. You would also aid in the implementation of these policies for clients of your company.
As a vulnerability analyst, you’ll employ security tools—such as Nessus—to find critical flaws in networks, applications, and systems. Vulnerability analysts are also responsible for staying current on the latest types of malware and any new vulnerabilities that are discovered. Then, you’ll work with your SOC analysts and tech teams to protect your company or organization proactively.
What Programming Languages Should You Study To Pursue A Career In Cybersecurity?
While there are a slew of different languages that are valuable for cybersecurity professionals to know, let’s focus on a few of the best ones to add to your repertoire for positions in cybersecurity broadly:
While Java is used by tons of programmers worldwide as perhaps the most popular programming language, it has a lot to offer cybersecurity coders as well. If your focus will be directed more to computer or mobile device software development over web applications, your employability will definitely be improved by acquiring and maintaining knowledge of the Java programming language. Without diving into it too deeply, Java is one of the most useful programming languages in use in modern web development and is structured similarly to C/C++.
Java is essential for security practitioners because of its widespread usage. Various industry sources estimate that over 95 percent of enterprise desktops run Java, for example. Additionally, the similarities between C/C++ and Java make it a natural and ideal complement to add for those already knowledgeable in one or the other. Speaking of C/C++....
In use since the early 1970s, C/C++ are foundational to the modern Internet and often thought of as the “bedrock” of many modern technical systems. Because C/C++ are lower-level languages when compared to alternatives like Python or Java, they are both more difficult to master - and much more powerful in some aspects. For example, using low-level languages gives direct access to low-level infrastructures like RAM and system processes. This access is why hackers and cyber criminals often target this level when looking for infiltration points, because of the vulnerabilities that can be exploited. C/C++ are also important for reading and understanding open source code, which often supports low-level system programs that are critical components of operating systems.
Growing in popularity, not only among security professionals and hackers but among developers worldwide, is the high-level scripting language Python. It has a massive array of use cases that have led it to power many modern web apps, software programs, and even advanced tech like machine learning and AI. However, the massive global community of Python developers also provides even more opportunities for hackers to collaborate and share exploits and vulnerabilities -- making it an easy place for bad actors to “crowdsource” methods to break into software and systems.
Fortunately, Python’s benefits also provide valuable resources and opportunities for cybersecurity profs too. With the benefit of a growing number of libraries, security teams can employ Python to perform malware analysis, create intrusion detection systems, and send TCP packets to machines without third-party tools. This means that they can build programs and automate work in an efficient manner.
PHP is another broadly used open-source general-purpose scripting server-side language, used by a multitude of large-scale websites that employ server-side code to dynamically display information. When needed, data is pulled from a database stored on a server and subsequently sent to the client to be displayed.
PHP has risen to popularity because its features make it easy to update a website. In fact, some sources estimate that over 80% of websites around the world employ some form of PHP (like Facebook, which uses a custom version of it). However, PHP’s convenient features also make it more vulnerable to attacks from the outside. For example, one of the most common hacking attempts on PHP-based sites is the DDoS (Denial of Service) attack, which can cripple a website by directing thousands of bots to access the site simultaneously, overloading its servers and causing the website to crash and break down. Likewise, criminals can use PHP to delete all data on a poorly constructed site, wiping the entire site out or holding out for ransom to restore the deleted data.
Because of these massive hacking vulnerabilities, knowing how to identify and solve these issues in PHP code can save an organization’s entire database, and thus be essential to a cybersecurity professional.