I am considering going into Cybersecurity. I was wondering what is important in a program for getting a bachelor's? The one I am looking at doesn't have any software development in it, which I thought knowing how to program was important to software security the same as knowing about securing systems is. What do you think?

closed as off-topic by Steffen Ullrich, Tobi Nary, schroeder Jan 31 at 11:07

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question does not appear to be about Information security within the scope defined in the help center." – Steffen Ullrich, Tobi Nary, schroeder
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    Your question is very broad ("What do you think?") and asks more for education advice than information security advice. It may be a bad fit for this web site. – Sjoerd Jan 31 at 8:53
  • Unfortunately, your question is too broad and open-ended to be answerable in our format. What will be important in a cybersecurity programme will depend entirely in what kind of cybersecurity you want to learn. There are over 50 aspects to cybersecurity that a programme could cover. – schroeder Jan 31 at 11:09
  • The good news is that you end up having a lot of choice, The bad news is that you end up having to make a choice even when you don't know what kind of cybersecurity you want to learn. Get to know the type of cybersecurity professional you want to be, then your choices get clearer. – schroeder Jan 31 at 11:10

Infosec consultant here. In theory the cybersecurity programs being offered at colleges will prepare you for a career in information security. In practice I've not found that to be true.

My recommended knowledge to have under your belt before starting in infosec:

  1. Have a hardcore grounding in computer science. This means algorithms and data structures, OS architecture and design, and even electrical engineering of the underlying systems if possible.
  2. Be able to program in one language really well. This well help you acclimate to other languages, to perform code review and to write tools needed for engagements.
  3. Understand the core fundamentals of computer security. By this I mean having a grasp on access control models, basic cryptography, basic networking and security practices involved in web applications. Also crucial is understanding how to break them. Historical research in this area is very helpful as new technologies tend to resurrect old vulnerability paradigms.

(Note that this is not an exhaustive list, leaving out things like the Security Development Lifecycle and Threat Modeling, but I feel those are intuitive things that can be learned on the job.)

With all this said, I would be very skeptical of a cybersecurity program which does not include programming. Many I am familiar with focus on the business side of computer security. If your interest is in making and breaking security mechanisms I would stay away from those. If no viable cybersecurity program is available to you, I would advise investigating a compsci degree and to experiment with writing your own code, participating in crackmes, utilizing vulnerable VMs to test exploitation and participating in bug bounties or CTFs. Honestly, while it is in many ways more work, you're much more likely to gain a heavy duty understanding of real world computer security this way.

  • Thanks I had the same sentiments. I don't expect to grasp valuable job experience right out of school. This program seems thorough in every aspect except compsci. It lacks algorithms, and opts for discrete math. It has operating systems and a lot of Linux electives, and it's from Purdue Global University which is associated with Purdue University. It really blows my mind they left out algorithms and data structures. To me I can always just learn this on my own, I'm an avid self-studier but I wonder why they left it out? As for programming, all options are as electives. – Andy Meza III Jan 31 at 16:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.