When I was starting out, it seemed I had a much better time getting interviews and passing them. But now that I'm more experienced, I'm finding that its harder and harder to find a job. Do other developers out there feel the same way?

I'll give you an example. I did an interview last Wednesday. It was a small start-up with only one other engineer and the CEO. They flew me in from Ohio (they are SF based). When I got there, they had me write them a link shortener, which took me about 10 minutes to write. I was supposed to be there all day working on this. When I finished it early, the interviewer seemed kind of shocked. After that, we were talking, and I asked him what they use to store data. He told me Mongo. I ask why he decided to use mongo. He then stammered and mumbled his answer, which basically boiled down to "We're using it because Mongo is a the trendy database technology and we don't want to be left out", which I've found is pretty much most common reason people use NoSQL these days. The interviewer quickly ended the interview and pretty much shoved me out the door. I was supposed to have lunch with the CEO, but I he kicked me out before I had a chance. The intervier wasn't mean or rude, (and neither was I).

After I got back to Ohio, I got an email from them saying "I wasn't a fit". This sot of thing happens to me all the time. I'm starting to think "not a fit" can sometimes mean "are too high of a skill level that we are". Is this all in my head, or do other experienced developers notice the same thing happening? Back when I used to struggle with coding problems, I would work with the interviewer and it would be a positive thing and I'd get hired. But now I usually blow through the coding part, and the interviewer being left speechless is working against me. Should I feign struggling with coding problems?

  • So, what was your solution to the URL shortening problem? – Job Sep 23 '12 at 5:00
  • 3
    Ok, the UI would be simple but as far as computing the short link, storing it and retrieving it fast ... did that come immediately to mind as well? Anyhow, if you are the smartest person in the room, then you are in the wrong room. I bet that comparing to Évariste Galois you are not a genius. Good news - you can find your own niche; you just have to figure out what it is and where to apply. You can always apply to Google, MSFT, Amazon, Spolsky's company, Facebook, etc. If you are considering SF as a location, then surely you can find smarter companies, no? Try interviewstreet.com – Job Sep 23 '12 at 5:12
  • 4
    It feels to me a right time for you to find a business partner who has an idea, and set up a start-up yourself. Knowing all the bits how to make the product work (performance, delivery, design, scaling), is all that CTO needs. – Yusubov Sep 23 '12 at 5:47
  • 1
    Feels like you're looking for the job in the wrong place. – Czarek Tomczak Sep 23 '12 at 6:00
  • 7
    Another great question gets closed. – MebAlone Sep 23 '12 at 17:26

Do other experienced developers notice the same thing happening?

Yes and no, for a number of reasons.

As developers (or anyone in a technical role) get more experienced, they start to look at roles and companies differently. Less experienced developers are happy to take more repetitive or less desirable positions to get the experience. More experienced developers want more control over direction and higher profile work. Both are looking for jobs that pay well and challenge them but more experienced developers generally ask for higher pay and require something more difficult to challenge them.

Economics also comes into play. Many companies want software written but want to pay a competitive ("low" or "cheap") rate, leading many to off shore work where skills can be bought relatively cheaply. Few companies are prepared to invest in good local talent. Both strategies have merits but market conditions mean it is always easier to find work when you ask for lower pay.

Few interviewers tell the candidate the real reasons why he or she was not selected for a job. Vague answers are relatively safe from litigation, like "not a good fit" or "the role no longer exists" . However, it is important to remember that interviews go both ways and the candidate needs to appraise the potential employer, too. It sounds like the employer may not have been a good fit for the candidate, either.

That said (and I am not suggesting @nbv4 was this but, as a general comment) many senior developers tend to be intimidatingly self confident, particularly to those who are less technical or lack experience. No one likes to be told or inferred they are stupid. From their perspective, they may have been expecting developers to be excited about using the newest and latest tools like Mongo, and felt disappointed when the candidate did not have the expected reaction.

Employers are looking for the right people for the senior jobs, not just people with the right skills. Hiring senior developers is a major investment and the organization needs people that can work with the existing people. For example, the candidate should focus on how he or she can help the company solve their business problems and how he or she can teach and work with the people they have.


Absolutely not - you're thinking this from the wrong point of view. You didn't get the job because you've gotten "better, you didn't get it because you really didn't fit their startup attitude. (at least that's what it appears from the limited info you've given us).

You do have to fit with the company values, and if they're a startup then you should be emphasising fast development, cool toys, getting stuff delivered. Doing things "correctly" is not part of their plan, so shouldn't be your either. Its like going to a financial services company and wanting to bang out code rather than attend compliance review meetings and plan things to the nth degree.

So, "better" is entirely subjective.. you could have said "older and wiser". Note that interviewers tend to decide if you're a good fit almost immediately - 30 seconds or so - so if they've decided at that point, then there's no reason to keep you hanging around and waste everyone's time if they were not going to offer you the job anyway.

So to come across better in the future - take the coding tasks, but make sure they know you're attitude towards them is that they don't tell anything about your fuller abilities, you need to make sure they know you can do more than just code, you have good analysis and design skills, can lead and inspire others too, and that a coding task is just a warm up thing you do just to tick the interview box before you get to the real discussions. Think of yourself as more businessman rather than code nerd because as you get older, companies do not want you to sit in the corner like a 20 year old coding, they expect much more from you, more social skills, more business skills.

Obviously this doesn't always apply - you can end up going to crappy jobs with idiots who don't know what they want. In such cases, it's up to you to tease out of them what they're really after and gently guide the interview. If you can blow through the code test, and that upsets them, just say that it was something you've done recently and it was in your head already - like those trick puzzle questions that are really easy if you've already read the answer.


I think it's a good filter for you to be able to find the right job.

I've realized that when I hire someone, its better to prefer someone smarter than me - especially if we can afford them. I would rather work with someone who proves me wrong (or at least provides new perspectives) and shows me a better way of accomplishing our goals rather than just go along. I'm sure the best people to work with will almost always follow this approach, but I do understand that this is not the case with a lot of companies. I guess it's time for you to start being picky about who you want to work with!

As an alternative, why don't you try to be an independent consultant/contractor? At least people don't mind hiring consultants to do something they can't (as opposed to employees). And you can be a little more expensive just to ensure that you don't undersell yourself (underselling not only gets you less money, it also reduces your perceive value in the person who's buying your service).


It may be that, over time, you've worked out what your strengths are and that the evidence of that is visible. Less-experienced candidates tend to be willing to take on whatever subjects they encounter, using whatever tools are available, whereas experience is built on some degree of specialization and preference.

The other corporate attitude that weighs against people with specific talents is a twisted definition of 'team'. Instead of viewing a team as a collection of people with varying talents that can be combined to achieve a goal, some see it as a box of interchangeable parts. If I were staffing a start-up, I'd be looking for people who were better than me at things I don't do well rather than slightly less-competent clones. However, I have met employers who, by their actions, are 180 degrees off that position.


It's understandable that some companies won't want to hire someone that far exceed their skill level. You're going to show them up, they'll feel inadequate, they don't have the opportunity to groom you to work according to their model, and you'll probably get bored and move on.

I'm been to interviews like that but they are normally excited about me and I'm the one who bails out. But at the end of the day it's the same thing - you don't want to work somewhere where you won't fit in.

You should apply for some more exclusive roles.

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