Your objectives seem to leave you in a conflicted state. On the one hand you seem to want to be a SysAdmin or at least have that as part of your role. As such, it is almost a requirement to be able to at least read bash scripting, since most of the usual Linux startup and configuration scripting uses it. On the other hand, bash is a poor choice for learning programming techniques in any general sense, because it's syntax and structure is so ugly. A more conventional language to study for the purpose of learning programming in a general sense could be any one of Python (my first recommendation), C (but not C++), or Java. All three of those languages are general enough to be widely useful, and have a large body of existing code, maturity, and future. Python & Java are both designed to use object oriented methods, which seems to be quite fashionable if you're looking to enhance your resume. Certainly there are other languages that are popular, although less mainstream (Ruby as an example) or less 'pretty' (Perl, as the primary example).