Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Software Engineers Ranked Best Job in America

Posted by CmdrTaco on Wed Apr 12, 2006 09:33 AM
from the here-comes-the-paycut dept.
fistfullast33l writes "CNNMoney and Salary.com have ranked the title of Software Engineer the best job in America. Computer IT Analyst also ranks 7th on the list, placing both technology positions in the top 10. From the article: "Designing, developing and testing computer programs requires some pretty advanced math skills and creative problem-solving ability. If you've got them, though, you can work and live where you want: Telecommuting is quickly becoming widespread.""
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Telecommuting is quickly becoming widespread.
    I disagree.

    Especially with larger companies, I see it more and more that telecommuting is a frowned upon idea. In fact, most of the articles on telecommuting today are instructions on how to argue with your boss [quintcareers.com] because your boss is going to be the last person that wants you telecommuting.

    And that's just for jobs in general. With software engineering jobs, the need to work together on a team is obviously a mandatory requirement. Very few solid and marketable software applications are written by one person. Telecommuting just raises another possible barrier and could compound dynamics and differences among team members. There are also security issues regarding the connection between work and home as well as the problem of productivity being a hard thing to measure when developing software.

    Then of course there are home distractions that all managers would worry about.

    This is old news to the Slashdot crowd [slashdot.org].

    In the Fortune 500 company I work for, I don't know anyone who telecommutes. We are encouraged to work with different teams accross the country but they are at company facilities in sub-teams that get together everyday.

    If by "widespread" they mean one person does it in New York and one person does it in California then I would agree. If they mean "widespread" by increased frequency and occurance then I would not only disagree with them but adamently argue that it's not accepted as a viable method for getting the job done in the software engineering world.

    Software Engineers Ranked Best Job in America
    Now that, I can see. I've only been working in the field for a couple years but I can already see that the room for growth in software development is unparalelled. What I mean is that people who start out as grunt developers often have a chance to become a team manager--it depends on how well they can estimate mentally and breakdown a project into tasks (something programmers are required to do in code anyways). More and more I see the manager world developing into two different kinds of managers--engineering managers and business managers. In fact, I have two managers (Office Space is more accurate than you think) with those two titles. One I can talk tech with and the other doesn't know jack about what I'm doing.
    • IAWTP.

      I, too, work for a rather large Fortune 500 company, and we have one member that telecommutes. Sure, the rest of us would like to, but it's frowned upon. Even though our one telecommuter is arguably the brightest, most talented, and hardest-working engineer, I still catch little glimmers of phrases along the lines of "anyone know what he's up to?" That type of garbage.

      And, no, it's not me (sadly).

      Give it another ten years or so, when companies finally get their heads out of their collective asses

            • Simple - take this phrase :

              "LaCosaNostradamus, I'ma bitchslap you."

              There you go. Am I a) Happy, b) Upset, c) Mad, d) Indifferent, e) Horny, or f) all of the above?
              You can't tell. Even if you thought you knew, you you would be wrong - and that's worse than not knowing because you will assume a stance that defends against (or rallys with) however you perceive I am being, which would make the conversation go downhill from there.

              Didn't we recently read here that 50% of people think they can accurately read th
    • by gEvil (beta) (945888) on Wednesday April 12 2006, @09:47AM (#15113527)
      Telecommuting is quickly becoming widespread.

      I disagree.


      I beg to differ. I've been doing my job from India for quite a while now. : p
      • by Atzanteol (99067) on Wednesday April 12 2006, @10:17AM (#15113798) Homepage

        I've been doing my job from India for quite a while now

        Hah! I've got one better. Somebody else has been doing my job from India! Oh. Wait...

      • On a more serious note: I'm a software developer based in Bangalore, India. We do telecommute quite often. The reasoning: if we can work remotely with our colleagues halfway across the globe in a different timezone, why can't we work remotely with our colleagues a few kms. away from home? Most American companies in Bangalore (like Oracle, Adobe, etc.) have flexible timings, and usually no one notices when you're around and not. As long as you're checking in code, answering email, closing bugs and putting out specs in time, you're doing fine.

        I often travel to the US and work from there (mostly San Francisco), and I can say that India is going to be defining work trends in the coming years. Americans are very "old school".

        • by rossifer (581396) on Wednesday April 12 2006, @11:52AM (#15114582) Journal
          I often travel to the US and work from there (mostly San Francisco), and I can say that India is going to be defining work trends in the coming years. Americans are very "old school".

          Be careful that you don't get the selection of US companies you work with confused with all US companies. I have contracted for companies that have extensive offshore dev/qa/analysis efforts and for companies that don't think it makes much strategic sense. The work environment at companies which consider more than just dollars are (predictably) much more interesting, motivating, trusting, etc...

          I agree that India is way ahead of the Fortune 500 on how to do software work. So are lots of companies right here in the US. (in my experience, they're usually the ones with very few MBA's on staff)

          Regards,
          Ross
    • by PIPBoy3000 (619296) on Wednesday April 12 2006, @09:57AM (#15113612)
      Telecommuting is overrated in a number of cases. I enjoy the ease of contact with my coworkers. Part of the draw of my current profession is that I work with funny, intelligent people.

      Working at home would likely be filled with endless distractions, mostly in the form of a two and seven-year-old who want to play Princess or Legos, respectively. Rarely does my coworker dress up in pink and demand they be called Princess Dave.
      • Rarely does my coworker dress up in pink and demand they be called Princess Dave.

        Yeah. Those casual Fridays are a bitch, aren't they?

      • by hal2814 (725639) on Wednesday April 12 2006, @11:20AM (#15114350)
        Do you bring your kids to the office with you? Then why are you expecting to watch them at home while you are working? Telecommuting is about working from home, not doing a few work-related tasks while you enjoy the rest of your day. It's about saving time and money on the commute and on office space. If you're getting distracted at home, then your home office is not set up properly or you're not working in that home office.
    • I'd say telecommuting is more of a "not everyday" type of thing. At least here, I can telecommute, I just can't do it every day. Perhaps 2 days a week, during a non critical time, I could pull it off. That seems to be acceptable, to me at least, because for most projects you shouldn't need 100% every day, face to face communication between the leads and the grunts. If you do find yourself needing that, then either the grunts aren't understanding the project specs well enough, or they aren't being laid out w
    • Especially with larger companies, I see it more and more that telecommuting is a frowned upon idea. In fact, most of the articles on telecommuting today are instructions on how to argue with your boss because your boss is going to be the last person that wants you telecommuting.

      And that's just for jobs in general. With software engineering jobs, the need to work together on a team is obviously a mandatory requirement. Very few solid and marketable software applications are written by one person. Telecomm
    • If by "widespread" they mean one person does it in New York and one person does it in California then I would agree. If they mean "widespread" by increased frequency and occurance then I would not only disagree with them but adamently argue that it's not accepted as a viable method for getting the job done in the software engineering world.

      I have to disagree with you as well. I also work for a Fortune 500 company, and we are currently going through the process of moving most of the software engineers to a

  • by suso (153703) * on Wednesday April 12 2006, @09:40AM (#15113467) Homepage Journal
    Tell that to unemployed software enginner Steve (who comes from a rough area) and is making more money selling Vibe than he ever did at Intertoad.
  • Software Engineer (Score:4, Interesting)

    by LithiumX (717017) on Wednesday April 12 2006, @09:41AM (#15113480)
    So what exactly constitutes a "software engineer"?

    At my job, I have to write software (varying from simple quickie scripts to complex neural-net based adaptive administration controls) to handle the administration and maintenance of a few tens of thousands of servers. I have to be able to work with 5 different languages and be familiar with developing for four different architectures.

    I'm rarely ever given the chance to plan anything in advance (that's just how this place works) and "testing" is often done hot - launch once operational, and quickly work out the bugs while it's in use. I usually work either entirely alone, or with our admins to give them tools to their specifications and needs. No team, little oversight, and full responsibility for failures.

    Does that make me a Software Engineer? Or just a two-bit coder?
    • 2 bit coder. Writing code isn't strictly neccesary forbeing a software engineer any more than welding bridges together is an essential part of structural engineering. It's just that software engineers tend to do their own construction.
    • by Dr. Cody (554864) on Wednesday April 12 2006, @09:54AM (#15113584)
      At my job, I have to write software (varying from simple quickie scripts to complex neural-net based adaptive administration controls) to handle the administration and maintenance of a few tens of thousands of servers. I have to be able to work with 5 different languages and be familiar with developing for four different architectures.

      I'm rarely ever given the chance to plan anything in advance (that's just how this place works) and "testing" is often done hot - launch once operational, and quickly work out the bugs while it's in use. I usually work either entirely alone, or with our admins to give them tools to their specifications and needs. No team, little oversight, and full responsibility for failures.

      Does that make me a Software Engineer? Or just a two-bit coder?


      No, that just makes you some idiot waving his e-penis on SLASHDOT DOT ORG
    • > Does that make me a Software Engineer? Or just a two-bit coder?

      Consider an analogy between a civil engineer and a construction worker, and let that answer your question.

      Kinda makes you think how immature our profession is, too.
    • 2 bit coding? I thought coding for 8 bit CPUs was pretty old school, but that takes the cake.

      Dan East
    • by KnightStalker (1929) <map_sort_map@yahoo.com> on Wednesday April 12 2006, @10:03AM (#15113668) Homepage
      You remember the A-Team episodes where they weld steel plates on the outside of a car or whatever, drop a bus engine in it, stick some guns on and go ass-kickin?

      If you call that mechanical engineering, you can probably call your job software engineering. I'd do either one of 'em though...
    • So what exactly constitutes a "software engineer"?

      The question for the ages. Nobody really knows, to be honest. More accurately, we can't decide. Wikipedia touches on the subject, if you want to read more:

      http://en.wikipedia.org/wiki/Software_engineering# Debate_over_who_is_a_software_engineer [wikipedia.org]
    • Does that make me a Software Engineer? Or just a two-bit coder?

      This is not a personal attack by any means, but I'd say that because you release code in an untested state, what you are doing is not "engineering." Imagine if a civil engineer built a bridge and tested it by having the public drive over it. The bridge might be okay, but it's not how things are done in engineering.

  • by Anonymous Coward on Wednesday April 12 2006, @09:42AM (#15113482)
    "You can work anywhere you want"
    So long as it's in India or China.
  • O rly? (Score:5, Funny)

    by Valar (167606) on Wednesday April 12 2006, @09:44AM (#15113497)
    Telecommuting is quickly becoming widespread.

    Yeah, telecommuting from India.
  • Math? (Score:5, Insightful)

    by etymxris (121288) on Wednesday April 12 2006, @09:45AM (#15113504) Homepage
    I have a degree in math and CS and I hardly ever use anything I learned in math for software development. Maybe simple sums and if things are getting really advanced I'll divide by the number of elements for an average. For that matter, I rarely use anything I learned in CS either, past the sophomore year anyway.

    The vast majority of software, at least that I've come across, is just moving data around. Certainly, more complex software development exists, such as in the financial services sector. And we rarely have to get into the details of how complex data structures work because we always rely on libraries. Again, I'm sure there are exceptions, but from what I've seen of the work I've come across and that has been done by other developers I know, little is used of school knowledge.

    That said, development isn't easy either. You have to be able to pick up new and weird APIs fairly quickly and find creative ways around asinine constraints. I'm just not seeing much in the way of school knowledge used though.
    • Re:Math? (Score:5, Insightful)

      by woodsrunner (746751) on Wednesday April 12 2006, @10:01AM (#15113648) Journal
      The math skills you need develop your mind to be able to pick up wierd API's and find creative ways around problems. It's sort of like when basketball players take ballet, they generally don't throw a pirouette into their layup routine, but the discipline pays off in transferable skills such as grace and injury avoidance.

      You might not think the math skills aren't necessary because they are so ingrained into your way of thinking you no longer see the benefits anymore. But try and do basic gui programming with some one without an understanding of geometry... it's pretty scarry.

      Math is the cross training of choice for coding.
    • I have degrees in math and CS also, but I had to learn additional math once I got my current job. I deal with graphics (lots of matrices) and physics computations on an everyday basis (the software in question is a 3D user interface for medical doctors).

      True, many software engineers don't need math. But it helps anyway, and it also proves to your employer and other engineers that you're a critical thinker and thus you deserve a respectable salary. It also helps weed out those who shouldn't be studying CS,
    • My degree is in Physics. In the process of getting my degree, I used
      tons and tons of algebra. Maybe other programmers think differently, but
      I find programming very mathmatical.

      1) Factoring lines of code out of loops or into methods
      2) Looking for invariants
      3) Commutation (can you switch the order of operations and get the same result)
      4) Being carefull about details
      5) Finding the mistakes (where did I pick up that incorrect factor of 2?)

      It is true that you might not use specific things you had in school (li
  • by defile (1059) on Wednesday April 12 2006, @09:47AM (#15113522) Homepage Journal

    Most computer software requires nothing more than simple arithmetic.

    There are exceptions such as in finance and 3d graphics, but come on.

    This mentality is really annoying. The math office in my high school wouldn't let me take the C++ class because I had not taken the requisite Calculus class first. Even though I was writing C++ code in my part time job! (Out of spite, I'll mention that I took the state C++ AP test and went on to score the highest in New York. Take THAT Mrs. Lechner!)

    Pfft.

    • by DoofusOfDeath (636671) on Wednesday April 12 2006, @10:59AM (#15114177)
      I think it depends on whether you want to be a software engineer, or a computer scientist.

      I've done programming for manufacturing, IT services, .com product/service providers, and military employers. I have a bachelor's in math+cs, master's in cs, and I'm working toward a PhD in cs. Here's what I've found...

      For software engineering, I had nearly no need for math. I mean, you might do a little back-of-envelope multiplication to estimate disk storage needs or batch job durations, but that was it. The hard work for those jobs was making good software / database designs, avoiding concurrency / threading issues, etc.

      For the military work, that's when I went from being mostly a developer to being mostly a computer scientist. THAT'S where the heavy math came in to play. Heavy statistics (for making sense of sensors), diff. eq. / vector calculus (for dealing with physics models), optimization theory (for planning future actions), etc.

      I still haven't figured out why high school programming teachers stress so heavily the connection between math and programming. For most software engineering jobs, you could have stopped at high-school Pre-Calculus. Just not if you want to be a computer scientist.
  • by Anonymous Coward on Wednesday April 12 2006, @09:48AM (#15113529)
    I don't see Male Porn Star anywhere on the list...
      • Good points...thought I'd add a couple more...

        Like the fact that unless you're a big name male porn start or do your own net porn site starring yourself...your pay will be absolute shit. The real money goes to the women.

        Then add on the fact that you have to have to be attractive and well-endowed, which cancels out most of the population (although I wouldn't be surprised if 90% of Slashdot claimed to be both). Plus there's the high risk of STDs, despite testing...and the final point is that when it comes d

  • I am guessing since most of these jobs have been farmed out, it has diluted the dissent in the job pool.

    I guess when that happens, the few people that still have jobs are quite grateful and enamored with them.

  • by saddino (183491) on Wednesday April 12 2006, @09:57AM (#15113620)
    Even being a "Software Engineer" varies from the "coding monkey" who gets it from the man, or the "unemployed contractor" who can't find a job, to the "game company project manager" or "I run my own successful software business" types.

    All in all, it's a great job, agreed. But there's always a better title in the field, with better perks and better pay, and better everything.

    So keep coding your butts off. ;-)
  • by gregarican (694358) on Wednesday April 12 2006, @10:01AM (#15113650) Homepage
    Would be the guy in "Office Space" who went on to make his Jump to Conclusions game. He had a secretary who would gather the requirements from the customers. Then the secretary would take the gathered requirements and pass them along to the engineers. Oh wait, he was laid off. Forget what I said...
  • puter nerd (Score:5, Funny)

    by stacybro (757940) on Wednesday April 12 2006, @10:16AM (#15113793)
    My 4 year old daughter walks up to me one day and say "Dad, Mom says you are a puter nerd, but it's OK cause you make lots of money..."
      • No kidding. The "I married a good provider" thing annoys me.

        I've seen too many couples where that sentiment became more like "I married a guy who makes lots of money and is never home, so I can have both the cash and bed the people I *really* want to without his knowing" after a little while.

        I've seen too many friends get hurt because of things like that, and they never even realized that it was happening until it was too late. It's sad and depressing, and probably yet another reason I tend to be cynical.
            • Re:puter nerd (Score:4, Insightful)

              by nostriluu (138310) on Thursday April 13 2006, @09:20AM (#15120767) Homepage
              I'm not too surprised at your post, I've seen plenty of small minded people who've never met (or actually refuse to acknowledge) people outside their stereotypes, but the fact it was rated insightful is staggering.

              I'm just trying to guess what backward place you could be from where someone wouldn't tell you to "fuck off" if you thought about "making them sing," and people don't trade and value each other's conscious attributes.

  • by xPsi (851544) on Wednesday April 12 2006, @10:45AM (#15114054)
    Obviously this isn't exactly a scientific ranking and is somewhat arbitrary. Nevertheless, it probably has some qualitative merit.

    But it seems odd: If you compare software engineer to college professor, it is clear, based on their data, that the 10-year growth parameter is fairly heavily weighted in their ranking since professor is equal or higher in all other areas.

    Software Engineer:
    average salary: $80.5k
    10-year growth: 46%
    Average annual job openings: 44.8k
    Stress: B
    Flexibility: B
    Creativity: A
    Ease of Entry: C

    College Professor:
    average salary: $81.5k
    10-year growth: 31%
    Average annual job openings: 95.3k
    Stress: B
    Flexibility: A
    Creativity: A
    Ease of Entry: C

    It seems like *if you had the job*, the quality of that job *right now* would be somewhat independent of the 10-year growth parameter. In that same spirit, if they folded in some "job security" parameter, it seems the tenture (or tenture-track) options of a professor would trump all others.

  • by Kupek (75469) on Wednesday April 12 2006, @11:14AM (#15114317)
    But they have it ranked as C, which I assume is average entry difficulty. According to their numbers, there are about 95,000 professor positions open every year. But that's not the whole picture: only a small fraction of that 95,000 are positions open to a particular person. In order to be a professor, you need to have a relatively narrow expertise. There will be few professor positions open in the country that want your particular expertise.

    I also think they underestimate the stress level of getting tenure. Getting tenure is a cutthroat process.

    For the record, I am a Computer Science graduate student.
  • by vinn (4370) on Wednesday April 12 2006, @02:17PM (#15115686) Homepage Journal
    I thought their choices were pretty good, but they completely screwed up with the reasoning behind the selections. Here's my take on it:

    1. Software engineer
    Congratulations, no one really knows what you do. As a software engineer you have carte blanche to fuck off. Don't like what you're working on? Tell your employer it'll take two years and 10 people to accomplish. No one will know the difference. Just remember, 10 minutes of inspiration gets more accomplished than a strong work ethic.

    2. College professor
    Congratulations, you figured out how to never leave college. Rather than figuring out how the real world operates you get to tell future generations how you wished it worked. It's the only job in the world where you can bang 18 year-olds for the rest of your life and simply be called 'eccentric'.

    3. Financial advisor
    Congratulations, you figured out how to be a criminal that gets a salary. Because, hey, no one really goes to jail for white collar crimes. Scraping a few pennies worth of commission from every trade is not only legal, it's expected. The best part: the only qualifications are you need is the ability to use Excel and wear a shit-eating grin. It's possibly the only job in the world where someone else will take a fall for your dirty deeds. Think Enron.

    4. Human resource management
    Congratulations, you're so good at covering your ass a company has hired you to cover theirs. When most people get frustrated at work they put their head down and mutter obscenities. Instead, you have the opportunity to fire the asshole who pissed you off. Furthermore, if you don't like your benefit package you can create your own.

    5. Physician's assistant
    Congratulations, you found a cover for being an escort. We all know you bought the nurse's outfit first and found the job second. Working bankers' hours gives you the ability to pursue more lucrative opportunities on the side.

    6. Market research analyst
    Congratulations, you figured out how to remove the stress and anxiety from marketing leaving you with pool parties and martinis. As an analyst, you get to try new products and impress your friends with the latest in cell phone technology. The best part: you'll still make plenty of money to pursue your coke habit.

    7. Computer IT analyst
    Congratulations, you figured out how to get a lucrative job in the IT market without any technical knowledge. As a translator between real people and the geeks you'll be revered by both. The real people will invite you to after work parties and give you an escape from nerddom. The geeks will be so thankful you've removed human interaction from their job they may let you play with their dual-core superpiplined hyperthreaded 64-bit processors.

    8. Real estate appraiser
    Congratulations, you've discovered the single career more criminal than financial advisor. You have more angles than a protractor. Not only do you get kickbacks, you have a waiting line. As if banks, insurers, and developers weren't enough, now you have every government agency on the Gulf Coast wanting to give you money for a job they've already done. Just remember, banks have to report every transaction over $10,000.

    9. Pharmacist
    Congratulations, you're a licensed drug dealer. You're college buddies are now serving mandatory minimums for selling a few tabs of acid at a Widespread show. Meanwhile, you're doling out Valium and Vicodin on a daily basis to the doctors' wives. If the people making the drugs have a stock symbol, it can't be that bad, right?

    10. Psychologist
    Congratulations, you found a way to get paid for kissing ass. This whole career was developed by a genius who figured out there was money to be made by telling codependents everything they wanted to hear. You have that special knack for convincing people their friends are wrong when they 'Get over it.'
    • being a sysadmin is a good job, as long as they give you the leeway to do things the way you want them. because once you get done cleaning up the mess the last guy got fired for, and after you get done setting things up the way you want them to be... its a pretty slack job (after everything gets running smoothly), leaving you with plenty of time to experiment with new technologies and stuff. As a programmer, you generally have things you're supposed to be working on every minute of every day. /former sysa
    • by eln (21727) on Wednesday April 12 2006, @09:57AM (#15113618) Homepage
      I've been both a software engineer and a system administrator/engineer. They both have their perks.

      Software engineering I think gives you more of a sense that you're working on something really big, and there's obviously a huge sense of accomplishment when something you spent a year writing is used by thousands of people. On the flip side, though, you have to work for a year or more pounding away at code, with no real sense of accomplishment other than passing milestones. Often times, even that gives you no real sense of a job well done, since time frames for milestones are often set unrealistically, so you end up feeling lousy about missing a milestone instead of good for hitting one.

      Then, there's the problem of usage. I've been a part of failed projects, and it can be gut wrenching. I've worked on applications that took 2 and 3 years to write, and ended up failing for various reasons. It sucks pouring so many hours into something and making all the sacrifices necessary to work 80 hour weeks just to have the project fail.

      Being an SA, on the other hand, has its own rewards and issues. First, most SAs (unless you're a junior grade) don't babysit servers all day long, they generally are working on various projects to build or improve systems. These projects tend to be of a shorter duration than software projects, so there is generally more of an immediate sense of accomplishment. Also, you tend to be closer to the user base, which means you can easily see people using something you built on a day to day basis and draw some sense of accomplishment from that.

      On the other hand, SAs also tend to be overworked, and can easily get caught up just trying to put out fires to maintain the servers rather than working on new and better things. A good SA will be able to stabilize things, but depending on the issue at hand that could take days or weeks or even months of very long hours before things return to where they should be. While a good SA will automate virtually every day to day task they can, sometimes they are too busy putting out fires to do so. This sort of thing can cause rapid burnout.

      I spent 5 year being an SA, then spent 5 years being a software engineer, and now I'm back to being an SA again. Chances are good I will eventually be a software engineer again at some point. Both jobs have their advantages, and depending on where you work, both jobs can generate basically the same salaries.
    • Re:Math skillz (Score:5, Insightful)

      by saddino (183491) on Wednesday April 12 2006, @10:06AM (#15113706)
      Most of the actual advanced math in programming is so intuitive, you probably don't realize you're using it: discrete structures, set theory, topology logic, etc. If you can design an efficient, optimized well abstracted OO framework then your using math "skillz" whether you know it or not.