I work in an area that's dominated by .NET and Microsoft - roughly 98% of the programming job postings I see (as few as they are, since everything is these recruiting and staffing firms) want .NET developers, and I only see the occasional job wanting Java (always requiring years of experience) or PHP hacking jobs.

Therein lies the problem, because while I know some .NET I haven't really used it in almost two years, and during that time I've started to read up about and use open source technologies. I like open source a lot better than I do Microsoft.

Basically, I am wondering if it'd be a stupid move to switch my focus to learning Linux, open source and possibly Java or Python (or both) as my development of choice, since the market is decidedly Microsoft biased. I'm also interested in learning Rich Internet Application development using something like Adobe Flex, but again I'm not seeing any market for it.

I feel constrained because what I want to learn and use isn't in demand, and what I've used in the past and don't like so much is in demand. So I feel like if I want my career to be better I need to suck it up and stick with Microsoft, but it's not something I really want to do and I'd much rather learn and push open source; call me stupid but I think with the bad turn of the economy and things getting worse that more and more places are going to be switching to open source to cut down on cost.

I mean, I could stick with Microsoft and do all those things (RIA => Silverlight, Java => C#, etc. etc.) and I already have a small background in Microsoft, just everything with them seems to be constantly pushing the latest and greatest and it's all so ridiculously expensive even to learn!

Can anyone offer some advice?

lionheart, you are not alone.

I am in the same boat as you... I want to push my career toward open-source. The work is more interesting, the technology is more exciting, and (let's not forget) on the average, the pay is better. There's also a bit more glory in getting a solid open-source solution working. It just feels better. But there are a lot fewer jobs in the open-source realm than there are in the Microsoft world.

Judging by the year at the end of your user name, and correct me if I'm wrong, you are in your late twenties, which is exactly where I am. So we've got quite a bit in common. Let me share with you my plans, as far as the transition to open-source is concerned.

When I started the search for the job that was going to start my career, I went out with the idea that I could convince companies they should look at open-source. I went into interviews preaching the good word about Linux and BSD and all that. That was the exact wrong approach.

After figuring out that I wasn't going to get gainful employment this way, I changed my approach. It sucks realizing that you've got to live with things for a while, but after accepting this as a fact of life, I went back out and got myself a job at a small company doing run-of-the-mill IT work... fixing computers, helping people with software issues... the usual. After a while, I started getting into bigger projects, such as designing and coding our company intranet website, helping to implement a new VoIP telephone system, and deploying a standardized PC platform throughout the company. In other words, I started becoming one of the IT decision-makers, not just a helpdesk support person.

Where am I leading with this? It all comes down to resume. Since there are so few jobs actually WORKING with open-source solutions, those jobs are much more competitive. To make any sort of impression on potential future employers in the open-source arena, my resume has to look pretty decent on that front. What I've been able to do is get my current employer, which is a Microsoft shop, allow me to experiment with open-source solutions. For example, the intranet site that I mentioned uses MySQL as its database backend. So MySQL administration goes on my resume. We're going to be migrating this same site to a LAMP setup, so Linux, Apache, and PHP can be added. See what I'm getting at?

It can be frustrating, because we know how beneficial open-source solutions can be. Stick with it, learn as much as you can on your own, and don't pass up a chance to convince your current employer how valuable open-source can be to their bottom line.

Thanks for your reply!

My issue is that nobody in my metro area seems to be using open source at all, and seemingly has no desire to; it's all Window-based; now, I don't have anything wrong with that - like you, I just enjoy the open source community better than I do Microsoft's... plus there's a lot less "fire and motion" and "Hey look at these whizzbang new features in the next version!" marketing nonsense with open source.

I guess the problem is I already know "enough" of Microsoft's technologies (i.e. .NET) but my heart's not in it and I would much rather be utilizing open source, although I'd have to essentially relearn everything to do it. I had wanted to do consulting services offering open source solutions, but without a market that seems really stupid.

Yes, consulting would be very tough. Open-source solutions have to be "sold" to the customer, while Microsoft almost sells itself. Another very important thing to remember is that with open-source products, there is no 800 number to call for support. If you get your customer into a bind with open-source software, you are the 800 number. This can be great for business (you can charge by the hour for support), but very frustrating if you can't come up with an answer.

I think the best way to get into using open-source career-wise is to get an employer to trust you enough to allow you to play with it at work. My boss is very open to using open-source solutions in non-mission-critical areas. I think I've almost got him softened up enough to start letting me use it in high-level production situations.

I wish I was. I'm desperately trying to get OUT of my current job because the company has no direction and the owners are just kind of stumbling around, trying to make money but unwilling to spend a dime on anything - the owner spends more time starting new businesses and dabbling with that than spending time and effort on our main business, and it's not like he has any real idea what's going on to begin with.

Maybe I'm better off just sticking with .NET since I could get a job doing that elsewhere.

Bummer about your current job. Sounds like it might be time for you to consider your options.

This market is bad right now for making moves, so perhaps the thing to do right now is just hang on for a while, while at the same time quietly look around for work that might be more open-source oriented. I know the market is thin for stuff like that, but at least you're employed right now, so the process of looking can take as long as it takes.

Yeah, that's true. Just looking at the job market (i.e. keyword searching at the usual job sites) shows me that there's pretty much nothing for open source here and it's all .NET and SQL Server.

For example, a search for "Django" (as in the Python framework) results in 0 hits. A search for "Rails" (as in Ruby on) results in 0 hits. Ruby gets maybe 2, as does Python. Java gets roughly 5, and PHP gets about the same. C#, VB.NET, ASP.NET and/or SQL Server gets hundreds of hits.

Ezzaral - That's interesting, especially the normalized list at the bottom. I think it's also very interesting to see which resources list which languages more... Craigslist seems to be a little more geared toward open-source, which sort of makes sense since Craigslist started as somewhat of a haven for geeks.

There's no disputing that there are far fewer jobs out there working directly / exclusively with open-source systems. Most situations are going to be a blend of MS and open-source. The jobs are out there, though...

It all depends on the area. Open-source might be popular but it doesn't seem to have any market share in the Tampa Bay area where I live.

carve out a niche for yourself and become an expert. you'll be more in demand as a specialized expert than as a run of the mill microsoft toolbag.

hell, even microsoft employs linux gurus for their interoperability labs. so dont let the crowd tell you that you must travel with them.

im going to repeat the prediction of industry talking heads that open source is positioned so that it will inevitably take more of the market share. theres no way to go but up. tampa may be a backwater sludge, but given the demands of global markets, inevitable collaboration and outsourcing, companies will be forced to adopt more open source as time goes on.

i mean even at the most provincial, local level, the economy is tighening the belt on companies. high cost proprietary software licensing fees are going to be an attractive area to cut costs.

you're in a perfect position to start learning as much as possible, and get ahead of the curve.


.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.