Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

How worthwhile is it to take a job that will mainly involve working with an esoteric or niche language? Will this limit my prospect of moving back into languages that I prefer working with later in my career, or will the general experience of working in a software engineering job be enough?

I suppose this question could be rephrased as: how much do employers care about specific language experience, as opposed to general programming experience and aptitude?

share|improve this question

closed as off-topic by ratchet freak, Snowman, MichaelT, durron597, Yannis Jun 4 at 7:43

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – ratchet freak, Snowman, MichaelT, durron597, Yannis
If this question can be reworded to fit the rules in the help center, please edit the question.

Why the close votes? This seems like a perfectly valid question to me. –  Tom Squires Dec 16 '11 at 10:44
Seriously? There are jobs involving esoteric languages? Can you give an example of what such a job might be and what language that might involve? –  Jörg W Mittag Dec 16 '11 at 10:55
Predicting the future is really hard. Predicting your personal future even harder. Transfer money to my paypal account, and I'll predict your future. More money == better prediction. –  S.Lott Dec 16 '11 at 11:53
@SK-logic I dare you to use Malbolge and then tell me that "Language you're using does not matter at all"... –  Yannis Dec 16 '11 at 18:41
@SK-logic Well I disagree. It shouldn't matter, but it does. Languages sometimes have different ways of dealing with the same problem. I've seen countless times people trying to apply language x's specific solutions to language y and it fails every time. I do agree that problem solving abilities and theoretical background are more important, but I wouldn't dismiss practicality when it comes to career perspectives. Languages are tools, and as such are optimized according to certain approaches and mentalities, and that's important enough to take into consideration when job hunting. –  Yannis Dec 16 '11 at 19:09

5 Answers 5

up vote 6 down vote accepted

If I were an employer and I'd get a CV that says that the person worked with (Lisp|Haskell|Prolog|Oz|[more name-dropping languages]) the last few years, I'd say:

  • if I were hiring for a completely new green-field project in a different language, I wouldn't hire you. For a green-field project, you need experience in the language you'll use. The chances are too high that you'd screw up the design beyond repair. But few projects in the real world are green-field projects and even fewer of those will be given as a first task to a new hire.
  • otherwise if you have previous experience in the mainstream language I'm using (or something reasonably similar like Java/C#), I'd hire you. I'd consider the "esoteric" language a plus in that case: It demonstrates that you're able to solve problems without all the resources available for Java or VB like Google, Stackoverflow, "Java in 24 hours" books. It improves the chances that you're able to "think outside the box" and that you add a different way of thinking to a team.
  • If you have only esoteric languages on your CV, you should have a few private projects (ideally ones you can show potential employers) in a mainstream language. Otherwise, getting hired might be difficult.
share|improve this answer
TIL: A greenfield is a project that lacks any constraints imposed by prior work. –  M. Dudley Dec 16 '11 at 13:35

That really depends on what you already know. If you already know one or more other langages then it wont limit you too much, you will have demonstrated you can move between langages. A few side projects to prove you can code in Java/C# or some other widely used langage should be enough.

If its your first langage then yes it will be much harder to demonstrate you can make the change back to another language. Its not a killer though, just be prepared to do a few pet projects to demonstrate your ability to code in more popular langages.

share|improve this answer

If the language is interesting and intriguing to you, then go for it. It's always great to learn something interesting, even if it doesn't have apparent career benefits right now. If the language feels dull to you, and the job seems very predictable, don't take it.

The good employers, recruiters and companies care very little for specific language and tech knowledge. They know that such details are small obstacles for a good programmer in the bigger picture of creating quality software.

share|improve this answer

Depending on the size of the niche, the lack of existing talent in that niche, and your skill, it could be a career-making move. You will become one of the few talented people in that niche and could be in high demand.

The worst-case scenario is that you will learn a lot that may still indirectly apply to the more mainstream languages you use later on.

share|improve this answer

I would say that it depends on what language we're talking about and your future employeers (obviously). Some examples:

  • if the language is Haskell, then I would say go for it! It's still a niche language, but it's rapidly gaining popularity. It's also known to be a "different" and "difficult" language, so a future employer might be impressed that you master it.

  • if the language is an in-house language, then I would be more hesitant. It might be difficult to explain to future employers why that language is great and so they might not see the benefit of learning it.

share|improve this answer
Haskell is better known than Prolog? When did that happen? –  nikie Dec 16 '11 at 10:46
@nikie: heh, that's of course debatable — I was trying to give some examples. Personally, I see a lot of talk about Haskell in the communities I follow, whereas I haven't seen anything about Prolog since university. Both languages are pretty esoteric, but it's my impression that Haskell (and functional programming in general) is becoming more mainstream. –  Martin Geisler Dec 16 '11 at 10:50
Prolog is not a "niche" language. It is not a general purpose language, but it (and its variants) is very popular as an embedded or standalone DSL. –  SK-logic Dec 16 '11 at 11:22
@SK-logic: point taken. We saw it presented as a niche language at university. I understand that there are industries where it's popular, but they're quite specialized. –  Martin Geisler Dec 16 '11 at 11:47
@Martin Geisler, many "business rules" engines are Prolog implementations. Knowing Prolog is a very significant advantage, even if you won't ever use it directly: you'll be able to spot it in may eDSLs and inference engines. –  SK-logic Dec 16 '11 at 12:11

Not the answer you're looking for? Browse other questions tagged or ask your own question.