Forgot your password?
typodupeerror

Choosing Your Next Programming Job — Perl Or .NET? 426

Posted by Cliff
from the which-is-the-better-choice-for-a-developer's-career dept.
Trebonius asks: "I have just received two job offers in the same day. The first was for a job coding in Perl on Linux/UNIX platforms, for a small but very cool company around 120 miles from where I live. They play Half-Life together in the off-hours and the people I've talked to there seem very happy with the job and work environment there. I'd be making smallish web systems, and I'd basically have total control over the projects on which I work. They offered me 20% more than I make now. The second offer I received is for a huge nationwide company opening an IT office a couple blocks from where I currently work. They're an all-Microsoft shop — VB, C#, .NET, SQL200*, etc. I'd be a very small cog in a very large machine. They offered me 66% more than I'm making now. Benefits are essentially identical between the companies, so that's not a big factor. I'll also give the Perl company a chance to make me another offer, but what should the threshold be? How do you folks balance the desire for a fun job with the need to pay off debt?"
Most of my work experience is in Microsoft development, though not by choice. It was my first job out of college. In my own time, I run Linux, write in PHP, Perl, MySQL, etc. I don't like developing in .NET much, but I'm used to it, and the money's good.

How do I choose? The money issue is huge, of course, and I think I'd much prefer the Perl job in terms of development preference and work environment. However, I've got the impression that Perl web development doesn't have the future potential in the professional world that .NET has. A search of Dice shows a lot more .NET jobs. Would taking the Perl job hurt my prospects in the future?"
This discussion has been archived. No new comments can be posted.

Choosing Your Next Programming Job — Perl Or .NET?

Comments Filter:
  • Yo (Score:1, Informative)

    by Anonymous Coward on Thursday November 09, 2006 @07:41AM (#16782851)
    There's a thing called Perl.NET.
  • How bad is the debt? (Score:5, Informative)

    by kjart (941720) on Thursday November 09, 2006 @07:44AM (#16782877)
    How do you folks balance the desire for a fun job with the need to pay off debt?

    This seems to be the crux of it, at least to me. Debt can seriously limit your options, now and in the future. If the debt you refer to is significant, taking the higher paying job now and resolving that issue would probably let have more freedom in picking your workplace in the future. If you are debt-free taking a job for less money but which is more interesting is surprisingly more palatable than if the bank is knocking down the door :)

  • by emilper (826945) on Thursday November 09, 2006 @07:46AM (#16782889)
    try to install a linux distribution for PCs without the Perl packages and see if it will work ...

    as far as I can see, the demand is not great, but quite stable ... for better or worse, Perl5 is the next COBOL ;) meaning there are huge custom apps built with Perl that won't be replaced in a hurry
  • I'd either stay away from the Perl shop, or join up and try to convert them to another platform. It will come back to haunt you in a few years when you have to support a mess of spaghetti.

    Perl is a great language for lots of things, but as someone with lots of experience with Perl, Ruby, Java, PHP, .Net, and even C for enterprise web applications, I would say Perl is far from an ideal choice for enterprise apps today.

    True, it is possible to write great apps in Perl. It's also great for simple small quick apps. But it's difficult to impossible to keep code clean as the app grows to a larger scale (think above the 100,000 LOC mark). It also has a very poor object model for encapsulation.

    Personally, I am a big Ruby fan nowadays for web apps. A very close second on my list is Java.

    Just my $0.02
  • by Dissenter (16782) on Thursday November 09, 2006 @12:32PM (#16786691)
    Something that I learned early enough to make a difference, but late enough to lose momentum is that your next job depends on your current job. Here's what I mean. If you are making X then you can expect your next job to be at least x + .15x or a 15% increase. I would never leave a job for more than a 15% increase unless there were serious problems. Taking the Perl job sounds like a ton of fun, but remember than smaller companies often need longer hours. The side benefits are nice, but there are usually needs on the side too. If you take the smaller raise, you will probably find yourself still working towards that x + .66x income in 5 years. If you take the .NET job you will be looking for the salary of 1.66x + .15(1.66x) rather than 1.2x + .15(1.2x)

    To take the math out of this you will be playing salary catch up for years and probably won't catch up for a long time if ever. I turned down a 60% raise 7 years ago and just caught up to that level last year. If I'd taken that money then, I would be much farther ahead right now.

    Let me qualify this by stating that MONEY ISN'T EVERYTHING. I understand that, but I have a wife and a son and they aren't cheap.

    If I were you and didn't have a huge preference between languages, I can play Half-Life at home thank you very much. Besides every time I play almost any game with co-workers they're a bunch of peon n00bs anyway ;-) and it gets old fast.

    Money does mean something, otherwise we'd all be working on software projects and just giving it away... wait a second....
  • The simple rules (Score:2, Informative)

    by gatesvp (957062) on Thursday November 09, 2006 @12:44PM (#16786839)

    OK, here's the straight stuff.

    The goal is to find a job that you can survive over the long term, but to extract as much money as you can while you're there.

    Measure yourself against this.

    • If you dread getting up every morning, you should probably get a different job. This is true of either job. This level of stress can severely impact on the job performance and personal health. Poor performance and poor health both negatively influence your goals. Don't confuse dread with natural fear.
    • Find a value for your personal time. This will help you decide how long you want to be at the office each day. Working long hours will help extract money, but won't help survival. And there is a point where working extra hours is actually costing you money because you don't have time for things like cooking or laundry or cleaning or even shopping.
    • Your annual salary must factor in the amount of time involved in work. If I make 38k working 37.5 hours/week and you make 45k, but have to work 45 hours/week, you're not making more money, you're just being allowed to work more. How good is a promotion if the extra required hours just wipe your hourly increase?
    • This work time includes transportation time. If your old commute was 1 hour/day and your new commute is 3 hours/day, then your (typical) work week goes from 45 hours/week to 55 hours/week. In a case like this a 20% pay raise just means you're working more, not really getting paid more. Heck you may be losing money if you're driving. And moving is a definite expense.
    • Work time also includes health time. If one job lets you work out over lunch hour and then eat at your desk, then you've just made a huge time (read monetary) gain. Maybe one job has a subsidised cafeteria which could actually save you time and money when you don't need to prepare your own lunch.
    • Work time also includes training time. If one job has a bigger training budget, then you're making huge gains. Growing your skill set improves your value to both this company and the next. This increases your survivability and your ability to extract money. Smaller companies generally don't have the budget to train employees or offer pay raises to employees who train themselves, this could cause issues (see next).
    • Work time also should include time spent finding a job. Finding a job is often time consuming. If you plateau at the PERL job in 2 years, you'll have to find a new job sooner, which is going to cost you time (read money).
    • Work time includes benefits. You've noted this as similar, but policies like sick days, flex time and vacation increments are all very important. Nobody like being sick, but sick and poor is even worse.

    So, figure out what you're really going to make/hour using some of the above concepts. Count all of the time from the moment you leave the house to the moment you get home and add/subtract the work-related time savers. Now you'll have two numbers to compare, this makes the question easy, "what am I sacrificing for X $/hour". This will tell you what your time is really worth.

C'est magnifique, mais ce n'est pas l'Informatique. -- Bosquet [on seeing the IBM 4341]

Working...