Salesforce has something like 700+ jobs they're advertising, but they're not really hiring. The job ads let them cast a wider net and get a sense of what type of talent is out there, but hiring is very, very slow.
This is similar to Google, but more disorganized. It took more than two months from my first contact with their recruiter to my onsite interview. I don't believe the company is really growing; they have work for which they wish they could hire, but hiring is not a priority or considered critical for growth. So, one could be wasting a lot of time waiting on them to make up their mind.
The phone interview was 45 minutes long. We went over some parts of my resume and some technical questions, which were fairly easy. The interviewer didn't seem to know what to ask, so it was a pretty random, back-and-forth, conversation-style discussion. He went on to explain what his group does and how he and his team interact with others. There was no real structure, very ad hoc, and no defined process.
The full-day onsite interview consisted of all one-on-one sessions with technical folks and senior managers. Again, it was a situation where none of the interviewers seemed to know what to ask. The first interviewer started with random, basic technical questions, mostly abstract. The questions were vague, and he didn't ask them clearly, so it was hard to understand where he was going. The whole session was unpleasant and ridiculous; it made me lose interest.
The next interviews were with folks who had some industry experience but no one really senior. Questions covered database basics, OS, Java, etc. A few interviewers wanted to discuss the same minor technical problem they had encountered earlier, not knowing I had already discussed it with another interviewer. Again, none of the interviewers seemed to know what to ask, even from my resume. Most seemed unsure and vague, which was disconcerting.
Their whole environment is built on top of one Oracle database table (data multi-tenancy, they call it), and they have layers of Java to marshal data in and between the different layers and the Oracle table. They make outlandish claims, such as what they've built is one of the most complex Java applications in the world, when it's a pretty run-of-the-mill, lipsticked web CRUD app with convoluted tricks to make up for poor architectural decisions they've made so far. Their former CTO gave a talk at a QCon conference explaining how they got into this mess; you can see the talk on InfoQ.com. They have lots of ex-Oracle folks whose job is to curate and maintain this one table. They're not working on any real interesting technical problems, which probably explains why hiring is slow.
Sorting/merging on whiteboard.
Efficiency and tradeoffs of algorithms.
Oracle basics and tuning.
Corner cases for Java (lang, deployment, etc.).
OS internals/operations.
Describe previous experience in extreme situations.
The following metrics were computed from 40 interview experiences for the Salesforce Senior Software Engineer role in San Francisco, California.
Salesforce's interview process for their Senior Software Engineer roles in San Francisco, California is on the easier side as most engineers get an offer after going through it.
Candidates reported having very good feelings for Salesforce's Senior Software Engineer interview process in San Francisco, California.