I am currently an apprentice software developer at a small company where we develop a piece of proprietary software. I have no major gripes with this (especially not at this point yet), but would prefer to work on open source or free (as in speech) software only.I'm not currently willing to quit my job and work in another field or put all my eggs in one basket and work full time on a project of my own (I am however willing to  join a small startup as long as I get paid a regular wage, though that does of course entail less security and possibly a smaller wage). So my question is: As a junior software developer, will limiting myself to open source leave me with sufficient job security?Note that I am theoretically willing to relocate, so if the opportunities only exist in a certain area, this is no problem for the scope of this question. I also don't necessarily want you to tell me if I can make it or not, but rather to lay out clearly (and preferably supported by references or relevant personal experience) how much more difficult it is to get a job if you limit yourself to open source.
Is making a living by working only on FLOSS projects a viable option?
programming
It's heavily dependent on where you are/who you work for.Many companies exist solely to sell a product. These kinds of companies tend not to publish their code so that others don't steal their ideas (yes, it's technically illegal but people will do it). If you're working for one of these companies, your best shot at contributing to open source is getting the jobs writing their utility libraries: since they're not directly part of the software, only used by it, you might be able to persuade a manager that it'd be OK to release these as open-source.The kind of company you want to work for is a big company that's well known and has at least one major open source project - Mozilla for example. I say this because these companies are going to give you the most job security - enough people use their product and pay for other things they do that you're unlikely to be let go because there aren't enough customers. Of course, the best way to gain job security is always to be good at what you do so you're essential to your company.If you're not getting enough money, you can always try running your own open source projects on the side, and charging for support or access to extra documentation, etc. This may not bring in huge amounts, though, and you'll need to check with your employer about their side-project policies.