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.

I currently consider myself to be a X language programmer (just using a variable here since this isn't about the language), I've invested time into learning the platform and like working with it. The other day, something dawned on me a bit in that when I go to search for openings (say on a job search engine), I would normall just type in "X language" "my city" and look through those. However, I got to thinking that I also have experience working with cloud infrastructure, for example, and maybe there are companies out there that want someone with cloud experience but who aren't yet decided on a specific language / platform so they could have sort of "open ended" listings that don't mention "X language" even though they may be open to using it if they found the right developer who wanted to work on that platform.

I've been trying this method of looking for openings and have found a few so far that seem to fit what I was thinking (that they didn't mention specific languages or did so in a way that seemed non-commital / open-ended), I'm just curious what other's experiences are as to whether there are a number of companies out there that may do this where they are looking for a developer who can build a specific application rather than necessarily having already decided (and listed) the platform they use. The current job I found was where the guy called me and I ended up influencing the platform we use (since it was a greenfield project) so it just makes me wonder sometimes if I am not being open enough when I search.

Clarification: I think the reason that I am asking this is because when dealing with recruiters they tend to obsessively focus on the language first and foremost, so if I say that I have primary experience in X platform and they want Y then they usually just assume its not a fit and tell you that they will let you know when they have X jobs available

share|improve this question
    
Spolsky wants you to understand pointers and recursion. If I were to hire, I would look for three S's: C++, SQL, Scheme. Someone with that bg can pick up other things. –  Job May 21 '11 at 1:54
3  
I suggest you avoid recruiters. They're pure evil and only damage your soul. –  user8685 May 21 '11 at 13:52

2 Answers 2

up vote 3 down vote accepted

Platforms come and go, languages become vogue and die off, new development techniques surface at a staggering rate, but the business and it's needs will always be there.

I think your knowledge of modeling and assimilation of business processes is far more economic of your time. Take banks for instance, when I was interviewed, they didn't care what language I used, they were interested to see if I understood concepts like STP (Straight Through Processing), the difference between a bond and swap etc. If you understand the business and the concepts around it, your of more value to the company. The language becomes secondary, which makes perfect sense as the language is merely the medium to put forward the solution of a business problem.

Some recruiters put forward really bizarre job specs, for example:

"JEE Developer for investment bank, must know JEE, JMS, Servlets, JSF, Mercurial, Flex 2 blah blah".

Now, the issue I have with this is the JEE bit, which as most people know, is an umbrella spec covering other specs such as Servlets (web), JMS (messaging), so why be general then move to being specific? It's not just banks that are guilty of this, companies seem to cast their nets wide if they feel the quality of their interview candidates are not on par with their expectations.

I also believe it pays off to know the business as it makes for a smooth interview. You can not only demonstrate that you understand the business, you can also challenge decisions they have made, showing you've got a good critical mind and are looking for alternatives.

share|improve this answer
1  
Good post, yeah thats exactly what I mean about the recruiters, that dribble about "JEE developer must have experience with either JFS, Facelets, Hibernate, or EJB3", etc, etc, (thats from a real job ad I got the other day by the way), they are so ignorant that they don't even realize they are basically comparing something like hibernate with JSF when they are not alternatives for one another but are for differnet functionalities –  programmx10 May 21 '11 at 0:09
1  
Agreed. When going for a job, your up against two tiers. First your resume has to be buzzword compliant to get past HR, then the resume will go to a hiring manager and/or it will possibly be circulated round some senior devs to check if your taking some liberties with your resume. –  Desolate Planet May 21 '11 at 0:12

I'd suggest that you should be willing to expand. Rarely does a job entail working in one and only one language or with one and only one toolset. You will be called on to work outside your preferred domain, and you should be prepared for that.

Moreover, learning multiple languages and tools makes you a stronger programmer in your core areas. Using other technologies give you insights from a perspective that you would not otherwise have had. It gives you the benefit of a "higher altitude" perspective on problems you encounter, and it gives you insights into what tools might work better for a given task.

I would actually go so far as to say that, IMHO, it's foolish to constrain yourself with one tool. It's like a carpenter who decides to do all of his work with the shingling hammer he bought for his first roofing job, when any of half a dozen other tools would help him do better work.

No, rather than looking for jobs working with "language X," you should look for jobs as a "developer" or a "programmer." Because even if you aren't experienced with the particular tool they use, you'll benefit merely from the act of learning how to use that tool.

share|improve this answer
    
Also, if the job posting contains a skill you do have and a language you don't, don't let the language part stop you from applying; many places will value the skill over the language. Especially if they are similar-style languages (e.g., Java and C#). –  E.Z. Hart May 20 '11 at 22:42
    
you're kind of going off track of what I asked, I do already know a few languages and happen to prefer static typed languages to dynamic so even though I tend to work around web dev I generally don't like taking on projects that would require working in dynamic due to past bad experiences with maintainability, etc, my question is more about whether there are many companies (presumably smaller companies) who are looking to bring in someone to help design their app and not just work with a specific platform –  programmx10 May 20 '11 at 22:43
    
anyways, I liked the last part of your resp about just looking for jobs as a developer, I just feel I have some insights from first-hand accts already of how using some languages / platforms can cause issues (from projects where I was brought in to add new features to existing code and the scope had expanded drastically from what the platform they were using was originally intended for) so at least I could mention this to them if I get an interview –  programmx10 May 20 '11 at 22:45
1  
Sometimes the buzz words don't really matter, they really just want someone who can think. I am starting a new job Monday. I don't know a whole lot about the language or platform involved. I just happened to be okay on the computer science and math questions in the interview. Normally I wouldn't have bothered applying for this type of job, but I had asked the recruiter how transferable my skills are and he seemed to value knowledge of programming paradigms more than knowledge of syntax and libraries. This is a grad position, I think seniors should be more competent with a platform or language. –  Keyo May 21 '11 at 3:11

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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