Any freelance programmers/software engineers? How's life?

My senior project in college was to create a Flash game… even though it was technically a B.A., I had to learn ActionScript 3.0 from the ground up to do it and found I genuinely liked programming.

- But -

It seems like so much software these days is offered completely free that it’s a bit discouraging to me to devote a lot of time to it. I mean I like programming, but it’s hard. While I can appreciate that kind of challenge, if I’m going to really commit myself to learning it more in-depth across various languages, I kind of want to know I can get rewarded for the work without necessarily having to become a salaried developer/software engineer/programmer (I already have a full-time job that I generally like but wouldn’t mind making some extra money on the side). As a pure labor of love, well, there are other things I can do to entertain myself that are easier and more fun.

So if you do it freelance, my main questions for you are:

  1. Are you happy/miserable/somewhere in between?
  2. Are you making decent money at it?

Since you’re looking for advice, I’ll move this to our advice forum, IMHO.

twickster, MPSIMS moderator

Oh, and also what are the best languages to focus on for freelancing?

I’m a freelance software engineer, as is Mr. Athena.

We’re both pretty happy with it. Here’s the pros/cons:

PRO

  • Working from home is great, at least for me. I know some people miss the social aspects of the workplace. I don’t.

  • I like the flexibility as far as hours go, though sometimes there’s no flexibility simply because there’s so much work to be done.

  • In theory, I can look for gigs that expand my skill set and keep me from getting bored. I say “in theory” because between my one main client and a few other smaller clients, they keep me so busy that I rarely have time to take on additional work even if it sounds more fun that what I’m doing.

CON

  • Most freelance work I find is either maintenance work or small -to-medium sized projects. If your goal is to work on cutting edge really cool high-end software, freelance isn’t the way to do it.

  • It can be difficult to build up a client list, especially without a lot of experience. I got into this after 15+ years of in-house software work. I’m not sure people really want to take on freelancers who don’t have a fair bit of relevant experience.

  • I’d probably make better money were I to get a traditional job. From talking to a friend of mine who works in Silicon Valley, I think he makes close to twice what I make when you factor in bonuses and all that. On the other hand, he lives in Silicon Valley, and I live in the middle of nowhere. I make a huge amount more money than I could make locally, so I’m OK with the tradeoff.

  • No benefits. I’ve tried to set my rates to account for vacations/sick days/health insurance and all that. But face it, you can’t replace the benefits like retirement plans and health insurance that big companies can offer.

RE: languages. I don’t know that there’s any “best” language for freelancing. Mobile development seems hot nowadays, but there’s also plenty of standard web app type development out there. Doing something modern with a modern language is the best thing to do - general experience in Android development or .NET web apps or Ruby on Rails or whatever is more important that “I know C” or “I’m an expert in PHP.”

Might I ask how much that is? Normally I wouldn’t pry, but it’s relevant here obviously.

I actually already work from home - and my job comes with benefits, so that’s not an issue at all. It’s technically a full-time position, but the actual work I have to do amounts to maybe 20 hours a week’s worth, so I have the free time right now to work on side projects and I need to take advantage of that. Especially if/when the current well runs dry, as it surely will someday.