How do I make myself more marketable in the current and future IT/programming environment?
December 24, 2003 8:59 AM   Subscribe

How do I make myself more marketable in the current and future IT/programming environment. [more inside]

The company I work for was just acquired by a larger company that has the goal of acquiring a great number of small government contractors to create a Haliburton style federal services business. This could be a great opportunity to grow with a fast rising star. Or a quick ticket to the curb as they lay off people after the roll up. I'm hopeful for the former, but worried about the later.

I want to spend my spare time padding my skill set to bring it more in line with the current state of affairs in IT and programming. I'm looking for a reality check, as well as advise for industry insiders on how to make myself more valuable as a current employee and a potential job candidate. People love my work, but we're moving to a much bigger pond. I want to shine once we get there.

Background: I have a strong background in programming, project management, Project leadership, with some skill with sales & marketing. For the last few years I've been building and engineering web based applications. Inventory & procurement, process management, intranets, content management, ecommerce sites, dynamic reports, data import tools, dynamic graphics, etc. All of that has been database driven (MySQL, SQL Server, PostGreSQL, with a bit of Oracle), and most of it has been with ASP and PHP. Before the dot com thing I was doing lots of programming in C, Java and ada, with a bit of Perl, FORTRAN, etc.

So. What do I need to learn to excel in the next five years? Are .Net and C# worth picking up? Web services sound hot. What do I need to do to be an expert in that? Will Python finally take off? That's very attractive but I worry it will be a fringe language forever. I hate Java, but it won't die. Should I go back and get caught up on the last five years of Java technology?

Or should I assume that the programming money is going to move off shore and pursue something else? Should I lean IT security? System administration?

Here I am 40 years old and IT is rocketing ahead. I want to ensure that I'm rocketing along with it. But it's long since become too broad for me to remain a jack of all trades. Please advise.
posted by y6y6y6 to Work & Money (9 answers total)
IT security auditing is extremely lucrative, given prevailing corporate paranoia and the recent trend of standardized compliance (SAS70, etc.) The industry certification is an exam similar to the CPA called CISA.

Big 4 accounting firms are getting lots of work in this area as subs to major defense and systems contractors. This might be a good place to start.
posted by PrinceValium at 9:51 AM on December 24, 2003

Web services, definitely. XML in general. Java, IMHO, is as future-proof as an enterpise development platform gets.

I'm a little biased because I work for one of the players in the market, but getting up to speed on digital identity technology wouldn't hurt either. There are a lot of new concepts in digital identity that I think will be very influential in the next decade or so, and it would help to be familiar with them.
posted by kindall at 9:53 AM on December 24, 2003

uh-oh, religious war

I've heard Java described as the "legacy language of the future," and I think that's accurate. C has done really well for a really long time. The Internet runs on perl. Witness O' Reilly's Hacks series, which are basically extremely focused perl tutorials. Alternatively, if you want to be a CTO or something like that, bone up on all your algorithms and master something like Scheme or Smalltalk.
posted by djacobs at 9:58 AM on December 24, 2003

sounds to me like you want to be a suit. maybe you should get yourself an mba (part time?).

you really should learn j2ee too. install jboss on a computer and write some code. understand the java bean spec and how to use it generate layered, scaleable server code. that seems to me to be the basis for "enterprise" programming (especially if the company wants to consolidate the services it offers and your php/asp stuff starts to fail under the increased load).

you don't mention UML in you resume above. sounds like a gap given where you seem to be positioning yourself. also, it's not clear how strong you are on OO generally - maybe you need to work on that?

avoid sysadmin unless you're desperate. it's the most stressful, thankless job out there.

all imho.
posted by andrew cooke at 11:15 AM on December 24, 2003

Until very recently, I worked for a contractor of the type you describe, so for what it's worth, here's my take:

My advice would be to broaden your experience and skillset outside the purely technological. Get to know the goverment rules, regulations and guidelines applicable to the domains you're likely to be working in. e.g: Read up on things like DOE QA requirements (if you can stomach the dullness), get experience in responding to government RFPs, if at all possible find a mentor who has lots of experience in dealing with the government way of doing things. There are significant differences from the purely commercial world, much of it counter-intuitive (if I had a $ for every time I've heard the phrase "They want to what?!"). Such experience is something the federal contracting sector values very highly.

As far as technical skills are concerned, don't get too hung up about which platforms and technologies to specialize in - concentrate on being a good all-around engineer and being flexible. In my experience, there's no government system that isn't complicated by legacy technologies, moronic design-by-committee, unimaginative analysis and crappy configuration management. The executives in federal departments who buy software are generally totally clueless about software analysis and seem to think that scope and requirements are an uninteresting chore - they're too busy watching their behinds and/or empire-building. Being very good at interfacing, data migration and building APIs is therefore a big plus.

It's this sort of environment that lends itself to a good understanding of OO design patterns and architecture - it's about scalability, flexibility, extensibility and all those other sexy buzzwords. You're always going to have to think about legacy systems in any government work, so becoming a champion of any one platform doesn't really get you very far. You've got to raise yourself above the Java/C/C++/.NET babbling and have a firm grip on design principles that can be applied to any of them. Learning UML is underrated and very valuable for this, in my opinion. A well thought-out activity diagram can save a lot of grief later and be a thing of beauty in it's own right.

Good luck, and don't let my cynicism influence you.
posted by normy at 12:09 PM on December 24, 2003

Yeah, UML, OO design patterns, all that kind of abstract stuff -- good to know.
posted by kindall at 1:32 PM on December 24, 2003

Response by poster: These are all great. Thank you *very* much for taking the time. I think normy has nailed if they don't ax the IT department. They say they won't, but I find it suspicious that of the current companies in aquisition we're the only one that's done any programming at all. I'm going to try and leverage that and sell people on a strong in-house programming team. Which I can build and lead of course.

And the other comments will be great if I do hit the streets. I've done OO in Java and a bit in C++, but I have a bad attitude about it. But there's no point in giving a corporate recruiter my great justifications for that.

And I had forgotten about UML. Very nice.
posted by y6y6y6 at 1:43 PM on December 24, 2003

if you want one slim volume that covers a huge amount of uml, is clear, down to earth, and reasonably priced (who doesn't?) get fowler's "uml distilled". and uml is nothing without a decent tool (you're constructing a model; the different pictures are views on that model - the tool makes sure the views are consistent). enterprise architect is excellent and within personal use price range (comparable to rational rose, i am told, and way cheaper).

sorry if you already knew that, but those two things were what really brought uml home for me.
posted by andrew cooke at 2:48 PM on December 24, 2003

If you truly expect to become a federal services contractor, with your skills you probably will need to get clearance. Now would be a good time to clean up the crap in your life (credit report, school loans, etc.) and start documenting the crap you cannot clean (brother's incarceration, wife's DUI, cousin's affiliation with possible terrorists). They will find stuff you don't even know about and still expect you to explain, so whatever you can do now will give you time to investigate the inevitable unknown skeletons.

PS: If drugs were ever a part of your lifestyle, I would suggest you start looking for another job before the year is over.
posted by mischief at 6:27 PM on December 24, 2003

« Older Asking for a Raise   |   Wireless Network Setup Question (for PC) Newer »
This thread is closed to new comments.