I feel I am treading on both serverfault and stackoverflow right now. I am a sys admin with a previous background in programming. The time between has been awhile and I don't remember a lot of syntax. Though theory seems to remain, I never really paid much attention to low-level things like assembly. I am trying to move towards the security realm and feel and understanding of low-level and high-level methodologies is necessary. Does anyone agree? If so, any ideas how to meld the different aspects? I don't have the time or money right now to quit my job and do it all over again.


I would like to clarify a couple things.

First - I would like to focus on security topics related to networks, malware and perimeter intrusion. Since many attacks are obfuscated, I would like to get more knowledge in the analysis process of attack vectors and captured [potential] malware. I may not be explaining everything clearly, but I would like to be able to load something in a debugger and be able to understand what is going on. Even though I currently do normal sys-admin tasks now and want to get into specific security functions, I believe an understanding would also help in troubleshooting normal applications as well.

Second - I stated I have a background in programming. This is true, but it has always been high-level and I have basically forgotten a lot over the years. Hence, the statement about leaving work and starting over. Starting a new path directed specifically towards the programming side so I could combine my current knowledge of systems administration with re-learned and expanded programming knowledge. I want to be more effective.

closed as too broad by HopelessN00b Feb 16 '15 at 15:27

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

locked by HopelessN00b Feb 16 '15 at 15:27

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. See the help center for guidance on writing a good question.

Read more about locked posts here.

  • 1
    Even if I was able to edit the question, I don't know where I'd start... – Ward Jun 19 '09 at 3:43
  • I think he means, like, learning about low-level details of operating systems (calling conventions at the stack / register level, minute details about the innards, etc). I think. What that has to do with quitting one's job, though, I can't say. (Perhaps he wants to learn how to write shellcode... smile) – Evan Anderson Jun 19 '09 at 4:42

Building expertise

  • Make a list of technologies that you'd like to gain expertise in.
  • Buy a few terabyte drives.
  • Buildup a handful of virtual machines.
  • Install, configure and tweak those technologies that you're interested in.

When you have questions, problems, etc, you obviously know where to come. The difficulty will probably come in simulating the user load or odd usage patterns that users can provide and admins sometimes don't plan for or imagine.

  • Yep, this is the way to go. You can run several virtual machines on not a lot of hardware and get a reasonable result. There are free/trial versions of the popular virtualization software that will help you and likewise many of the software you might like to try. 120 day trials etc are an excellent resource. – Mitch Jun 19 '09 at 12:26

I am trying to move towards the security realm and feel and understanding of low-level and high-level methodologies is necessary.

The security realm is so large, that starting with a goal: "I will be a forensics expert." will help you define what you'll learn.


For any sysadmin-type job I'm of the opinion that knowledge of low level programming is beneficial. It gives you a deeper understanding of how things work behind the scenes, and of why things are the way they are. This can pay off a lot - even something as simple as knowledge of low level data types can help with troubleshooting and config (specific example: setting the max file upload to > 2GB in SharePoint 2003 will prevent any file uploads from happening).

Specifically for security, you might know a bit of theory about buffer overruns, for example, but knowledge of exactly what causes them and how they happen can enable you to talk the lingo more convincingly.


Along the lines of Joseph Kern's answer, pick the job you'd need to qualify for in order to make the switch. In this case, it sounds like you've got a particular pay scale in mind. So browse through some job listings that match what you'd like to do, pick out the required skills they seem to have in common, and you may be able to further refine your question.

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