Each of the teams dealt with problems that my background could help with (two in finance where I worked for 8 years and the third was C# which was my stack of choice), so they weren't random placements. Also, they're really big on mobility, but they strongly prefer that you stay in a role for 18 months before you transfer. If it's "transfer or I'm leaving the company," they'll usually let you (barring special circumstances), but it's a bit of a pain.
I suspect there's a tendency to push new hires towards less glamorous positions, but I've seen newcomers in all departments. I suspect that more glamorous positions are usually filled quicker and with a more valuable asset via internal transfers.
Oh, please tell. How long had you been working there? Was it a small town? That's a very odd thing to say!
I had worked there for almost 2 years. I was originally hired at about 2/3 of my previous pay (it was a rough time to look for work), and they suspected I was looking around (it's stupid not to at least look once in a while). They tried to retain me by making me a lead over 2 other engineers (don't care) but not by modifying pay, though I made it clear that that would help.
When it was clear I was still looking around, boss called me in to try to get me to sign a "pledge" to stay at the company for 2 years. I refused.
A couple weeks later I got my offer and gave two weeks notice. There were a few meetings with management where they claimed they were going to make a counter offer, but they never actually offered me anything.
That meeting was the last one. Immediately afterward the lead counsel called me in for a meeting and apologized. He said that the other meeting was supposed to be a substantial cash offer (significantly more than Google was offering), but I declined pointing out that I wasn't ever going to be able to work in this town again; certainly not for him at least and the lead counsel said he didn't blame me.
I tried to help with transitions and stuff, but I was told that I'd be paid for my 2 weeks, but to not bother coming in. I hear it didn't go very well after I left.
Wow, in return for what? It's so ridiculous someone would do something like that.
That was also my impression after talking to several people from there. No much flexibility and very hard to get into a team you want. And lol at your old boss, what the hell? :)
I had 5 interviewers. I made it clear to each up front that I had never worked in one of the canonical languages (Java, Python, C++, Go) and that my background was mostly C#. All of my interviewers seemed to take that point, so the questions I was asked were mostly pseudo-code. The one language-specific thing was about Java iterators, so I had to ask about the Iterable/Iterator contract before I could start. My pseudo code was pretty C#ish and that's pretty close to Java, so I was able to intelligently discuss differences or explain my intent.
The crazy thing about my interview (and the interviews of most people that I talked to) was that I thought that I crashed really hard. One guy let me fumble around for almost the entire time trying to answer his questions (it dealt with statistics and big data). Of the five, I feel like I knocked it out of the park with two of them, flubbed it with two of them, and the fifth was meh.
Later, I talked to the recruiter about it. I was feeling a lot of impostor syndrome (very common) and trying to understand why I was hired and make sure that it wasn't an accident. In the end, recruiters are looking for very high or very low scores from your interviewer, and interviewers give a lot of points for trying. Even the ones that I thought I failed on gave me medium scores because I did a good job of connecting with them on a personal level, and I talked through my work as I did it. So I ended up with 3 moderate scores and two high ones, which was enough.
As for passing but not getting hired, that's a little different. You don't really pass the interview. You do a phone screen and then the recruiter decides whether to proceed. After that you come in for interviews, and once you're scored again the recruiter decides whether to proceed. Then you go to hiring committee, where they decide hire or no hire. The recruiters have a pretty good idea of what hiring committee will say, and they tend to send borderline people. After hiring committee you go to offer committee and then you get the offer letter. After you accept the offer, if you're a general purpose SWE, then you talk to teams to determine placement. The whole process took about 3 months for me.
For my prep, I actually went on other interviews and read books (particularly on solving by induction - these things show up often on interviews).
Everybody has a different experience, but when I read posts by people who claim they were passed over because they couldn't solve a specific problem, I suspect the problem was really poor culture fit, resulting in low scores across all of the interviewers.