Programming for Network Admins/Engineers?

pwjohnstonpwjohnston Member Posts: 441
For all of us who have been in college they emphasize the importance of knowing how to program. I had to take Basic, Quick Basic, and Visual Basic in school. All of which have turned out to be completely useless in the real world.

I’ve been thinking about going back to get my B.S. and I’m being told I need to take JavaScript, Java, and some data base classes. I can see how the database class would be helpful for SQL admin, but I’ve been in the industry “professionally” for 3 to 5 years and have yet to use anything more complicated than HTML, Shell Script(linux), and VBScript.

As far as I can tell Network Administration and Engineering are a completely different group from the Developers. However I see ad's for Network Admin and Engineers all the time requiring C++, Java, .Net, etc. I just assume the recruiters are stupid or it's a company trying to get more tech for less money.

Have any of you veterans that do windows, linux, cisco, administration and engineering made use of any real programming (C++, Java, Perl, C#, Python, Ruby, Ajax)? If so what do you do?

Comments

  • eltoroeltoro Member Posts: 168
    Good question! I really would like to see people's comments on this one. I am a system admin and don't do any programming what so ever. I am going to start looking for a development job soon.
    Masters in Computer Science / Software Engineering (Dec. 2010)
    Illinois Institute of Technology
  • dynamikdynamik Banned Posts: 12,312 ■■■■■■■■■□
    I have a background in web development. When I started here, they had me create a web-based job tracking system. It handles all our orders, tasks for all the employees, POs, etc. I work at a sign company, and everyone's role varies a great deal. The information needed for the person doing engraving is completely different the the person doing large-format printing or welding, etc. This place was completely disorganized, and they needed something custom. This was all done with PHP, MySQL, and obviously HTML, CSS, and Javascript. I don't think this is a typical position to be in. This was a huge project that took about four solid months to complete. I don't think most places would expect something like that out of their network or systems administrators.

    As an interesting aside, we didn't have any extra hardware, and since this was just an internal app, I wasn't too worried about using IIS. Does anyone see where I'm going with this? Instead of using the traditional Linux, Apache, MySQL, and PHP server, I'm using a Windows, IIS, MySQL, and PHP server. That's right, I'm using a WIMP server instead of a LAMP server icon_sad.gif

    Seriously though, I don't see Javascript playing much of a role for every day tasks. Javascript is much more geared towards the web, but you can sometimes substitute Javascript for VB Script in some situations. However, I can see how a rudimentary knowledge of SQL and .NET/Java could be beneficial to systems and network administrators. For example, everyone deals with tons of log data. It might be a good skill to be able to **** that in a DB and perform some custom queries against it. There are obviously 3rd party tools that do similar things, but maybe you need something unique or don't want to spend the money to do something basic.

    Here's how a (very) small amount of .NET knowledge helped us out: My web app automatically creates a job folder on the file server when a new job is put in. This is prefixed with a number that automatically increments. It also creates parent folders to group the jobs into groups of 100, so we don't have to scroll through thousands of jobs when trying to track something down. Anyway, once we got a significant number of jobs in, it became a hassle for people to get to the job folder quickly. Even if they created shortcuts to the 100s folders, they'd still have to weed through dozens of shorcuts. I created a .NET program (if you can all it that) that was a single text field that accepts an integer and a button. All it does is look for the corresponding 100s folder, then look for the specific job folder, and finally pulls it up if it exists (or reports that it doesn't exist). I would guess that this stupid little tool probably saves 30 people 5-10 minutes a day. I believe things like this are where having that little extra knowledge can really be beneficial. I don't think you're going to be expected to write huge applications, but rather look for little ways to make things easier, either for yourself or other employees.
  • undomielundomiel Member Posts: 2,818
    I've seen a few job postings here and there asking for admins with programming experience either C++ or Java, and they generally seemed like places that didn't really know what they were asking for, based off the pay they were offering for the jobs. Lots of places are looking for scripting experience though, vbscript, perl, python.
    Jumping on the IT blogging band wagon -- http://www.jefferyland.com/
  • livenliven Member Posts: 918
    I am a security admin, however I do lots of linux/unix administration, networking, and cisco administration.

    With that being said I use Perl all the time, shell and bash all the time. And I have even been doing mysql and php from time to time. I wouldn't discount the need to use these tools.

    I would really focus on learning system administration type languages (PERL, phython etc..). But C is great to know because countless operating systems and applications are written in C.

    Now if you want to be a net admin you need to learn that stuff first, but knowing several languages will never hurt you.
    encrypt the encryption, never mind my brain hurts.
  • pwjohnstonpwjohnston Member Posts: 441
    liven wrote:
    I am a security admin, however I do lots of linux/unix administration, networking, and cisco administration.

    With that being said I use Perl all the time, shell and bash all the time. And I have even been doing mysql and php from time to time. I wouldn't discount the need to use these tools.

    I would really focus on learning system administration type languages (PERL, phython etc..). But C is great to know because countless operating systems and applications are written in C.

    Now if you want to be a net admin you need to learn that stuff first, but knowing several languages will never hurt you.

    My developer friends have been trying to convince me to learn Perl.

    Security is actually the route I’m interested in, specifically wireless security(set up, design, security, penetration testing, etc). I’ve done some administration and deployment of Red Hat Servers for file and web servers.

    Do you think Perl would be the most useful or more useful than Java if one was moving that way?
  • dynamikdynamik Banned Posts: 12,312 ■■■■■■■■■□
    Depending on your level of experience, you might want to start with Python. While it's significantly easier to learn than Perl, it still provides a great deal of functionality. Keatron, the Security Moderator, sings it's praises all the time.
  • undomielundomiel Member Posts: 2,818
    I'd cast my vote for perl, I learned it on the job in a weekend so it isn't too difficult to pick up. Though I'll confess I had a self taught partial C/C++/ASM background before that, so that probably helped a fair bit. I need to go over it again though, I haven't looked at perl for a while. I'm interested in looking at python as well though. I see that getting used a lot these days on linux.
    Jumping on the IT blogging band wagon -- http://www.jefferyland.com/
  • brad-brad- Member Posts: 1,218
    I dont know of college BS programs designed for networking/sys admin type jobs. I wanted to do networking/sysadmin work when I went to college, so i went to the school of CIS...and low and behold it was all programming based. Learned programming in Java, then did everything else in .NET...and focused on web publishing.

    I think its just a common misconception that you can get a BS related to sysadmin work. I dont know that they exist in America...though they should.

    I've been out in the real world for several years now, and have had no real need to create any programming. It has helped me a few times in troubleshooting some things...but for general conversation, my college courses were just created by a bunch of ppl with no experience that hide in teaching so they could look down at us in their superior management and programming courses.
  • sprkymrksprkymrk Member Posts: 4,884 ■■■□□□□□□□
    Just the basics of scripting languages, nothing too deep. VBScript if you work in a Windows environment, or actually you can replace that with PowerShell now. Bash, perl or python in a linux environment. Some jobs it's useful to know basic HTML too.

    It's important to be able to script out mundane repetetive tasks, but not necessarily be able to write entire programs. For network admins anyway...
    All things are possible, only believe.
  • Daniel333Daniel333 Member Posts: 2,077 ■■■■■■□□□□
    Qbasic was awesome! Good times back in high school. Man, sudden urge to go install DOS in a VM. Anyhow..

    I went from a help desk job to support a CRM package, Saleslogix. This requires me to work with VB, SQL and even some HTML almost daily.

    So I guess it's really the way the company defines what a "sys/network admin" is. For some companies it's draw strictly on the lines that Microsoft creates. For other companies you might be expected to be a little of everything or cross over here and there. Supporting people's Macros, making web pages, general networking etc.

    I've found places like DeVry have true "admin" BA/BS level classes without programming. But no formal schools seem to be offering anything higher than a AA/AS in it. After that, they push you into programming.
    -Daniel
  • rfult001rfult001 Member Posts: 407
    I don't know. I just finished my BS in Information Technology, while I did have to take a few programming courses, I did a lot of Database (mySQL and SQL Server2005), Networking (cisco, juniper, quagga in a predominantly unix environment), and Unix Administration (mostly Red Hat). I am now starting my MS in Telecommunications following a Policy and Management track which seems to be geared towards systems/network admin and security.

    Check it out if you are near S. Florida.

    http://it2.fiu.edu
  • livenliven Member Posts: 918
    pwjohnston wrote:
    liven wrote:
    I am a security admin, however I do lots of linux/unix administration, networking, and cisco administration.

    With that being said I use Perl all the time, shell and bash all the time. And I have even been doing mysql and php from time to time. I wouldn't discount the need to use these tools.

    I would really focus on learning system administration type languages (PERL, phython etc..). But C is great to know because countless operating systems and applications are written in C.

    Now if you want to be a net admin you need to learn that stuff first, but knowing several languages will never hurt you.

    My developer friends have been trying to convince me to learn Perl.

    Security is actually the route I’m interested in, specifically wireless security(set up, design, security, penetration testing, etc). I’ve done some administration and deployment of Red Hat Servers for file and web servers.

    Do you think Perl would be the most useful or more useful than Java if one was moving that way?

    Well let me put it to you like this. I have been in administration in one form or another for about 7 years. And I have never seen some one use Java to write system administration scripts, or in cronjobs, or to parse log files, blah blah blah. Could one use java to this kind of stuff, probably. But it sounds like it would make things very difficult.

    Perl, python, and shell scripting on the other hand were made for these kinds of tasks.

    If you have any programming experience perl will be fairly easy to get started with. But to become an advanced/power user will take time. If you code perl for 6 months to a year you will find that you can accomplish a task that in the beginning took 50 lines will end up taking 20 or 30.

    Perl has been and is more widely used, however python is really catching up. My co-worker used to work at google and the are VERY big on python. And another friend of mine when to work for amazon and they are very big into python as well.

    I don't think you can go wrong with either one. Plus the will allow you to do things besides just system administration. I just wrote a script that parses scan data from dozens of scanners and creates excel spread sheets. I did it with active perl (windows version of perl).

    Just pick one of these languages and dive in. You will be up and running in no time.
    encrypt the encryption, never mind my brain hurts.
  • TurgonTurgon Banned Posts: 6,308 ■■■■■■■■■□
    pwjohnston wrote:
    For all of us who have been in college they emphasize the importance of knowing how to program. I had to take Basic, Quick Basic, and Visual Basic in school. All of which have turned out to be completely useless in the real world.

    I’ve been thinking about going back to get my B.S. and I’m being told I need to take JavaScript, Java, and some data base classes. I can see how the database class would be helpful for SQL admin, but I’ve been in the industry “professionally” for 3 to 5 years and have yet to use anything more complicated than HTML, Shell Script(linux), and VBScript.

    As far as I can tell Network Administration and Engineering are a completely different group from the Developers. However I see ad's for Network Admin and Engineers all the time requiring C++, Java, .Net, etc. I just assume the recruiters are stupid or it's a company trying to get more tech for less money.

    Have any of you veterans that do windows, linux, cisco, administration and engineering made use of any real programming (C++, Java, Perl, C#, Python, Ruby, Ajax)? If so what do you do?

    I know what you mean. I did prime, pascal, C++, Modula 2 at University and I have never found a use for it my my line of work. When I started DOS batch files were useful. I would say some perl for network duties would be useful. Shell scripting is handy too.
  • pookerpooker Member Posts: 129 ■■□□□□□□□□
    I see alot of job offers for people wanting mcse, ccnp and knowledge in database programming for the big bucks. I definately see alot of jobs for database combined with networking and server, if your just a programmer i see alot of jobs for java and c++
    I wanna be ccie
  • blargoeblargoe Member Posts: 4,174 ■■■■■■■■■□
    I have never had to use any of the object oriented languages that I had to take in college, but the exposure to that helps to to grasp things like powershell and vbscript a lot better. Knowing any of the common admin scripting languages and SQL should be the limit of what would really be expected, and I wouldn't expect that to be a majority of your time at work.

    The only "programming" I've ever really had to do is some side work I did for someone on a LAMP server.
    IT guy since 12/00

    Recent: 11/2019 - RHCSA (RHEL 7); 2/2019 - Updated VCP to 6.5 (just a few days before VMware discontinued the re-cert policy...)
    Working on: RHCE/Ansible
    Future: Probably continued Red Hat Immersion, Possibly VCAP Design, or maybe a completely different path. Depends on job demands...
  • oo_snoopyoo_snoopy Member Posts: 124
    As a network admin/engineer you need scripting. As many others have stated, Perl, VB, shell, and batch scripting at the big ones.

    In my opinion the roll of programming for the network type person is to simply make their job easier. Sure you could pull information from 100 plus routers in a few hours, or I could use a script and have all the information in a matter of minutes. What about config changes etc?

    I'll post the link to what I think is the best "starting perl" web tutorial once I find it again.
    I used to run the internet.
Sign In or Register to comment.